我们从第一篇的规则5开始,主场景如何维持在最小。
为什么要把主场景维持在最小的原因,主要是因为团队协作的时候,如果两个人都修改了同一个脚本,可以通过文本合并,修改一方即可,但如果两个人都修改了同一个场景,那就只能取一个人的了,另一个人得在其基础上重做。这不仅造成了人力成本浪费,容易出问题,还会造成很多管理的不便。
因此,团队协作的第一件事就是确定一个空场景,谁都别动。看了很多教程、很多现有的架构,大家基本都是留一个相机,创建一个空物体,再写一个入口的类,挂到这个物体上,其实大可不必。本示例使用了 [RuntimeInitializeOnLoadMethod]特性(Unity5.0以上),可以不需要在场景中挂物体即可运行代码。
RuntimeInitializeOnLoadMethod使用参考:https://www.cnblogs.com/meteoric_cry/p/7602122.html
所以本示例仅在空场景上创建了用于UGUI的Canvas,不附带其他脚本:
然后直接以一个Main类作为入口,Start中的函数会在加载场景后立即执行:
using UnityEngine;
/// <summary>
/// Main作为程序的起始点,调用默认逻辑、打开默认界面
/// </summary>
public class Main
{
//程序启动默认执行
[RuntimeInitializeOnLoadMethod]
private static void Start()
{
EnemyControl enemyControl = EnemyControl.Instance;
UIManager.Instance.OpenPanel("MainPanel");
}
}

被折叠的 条评论
为什么被折叠?



