当脚本只有Awake方法,没有其他方法的时候,脚本会失活。
结论2:脚本对象的失活和激活不做用于Awake方法。
结论1:Inspector>外部赋值(外部调用)>Awake>OnEnable>Start
结论3:游戏物体每次从失活道激活状态,Awake与Start只会调用一次,OnEable会在再次激活游戏物体后调用,所以Initf方法可以放在OnEable中
当脚本只有Awake方法,没有其他方法的时候,脚本会失活。
结论2:脚本对象的失活和激活不做用于Awake方法。
结论1:Inspector>外部赋值(外部调用)>Awake>OnEnable>Start
结论3:游戏物体每次从失活道激活状态,Awake与Start只会调用一次,OnEable会在再次激活游戏物体后调用,所以Initf方法可以放在OnEable中
经过实验得
1:调用顺序:先左后右 外部赋值Inspector>Awake>OnEnable>Start
HideInInSpector可以把PUBLIC的方法和判断不显示在UNITY上面
更新足够多的课程
transform.Translate(translation:Vector3,relativeTo:Space=Space.Self);
relativeTo为空,则默认为局部坐标系。
最后加Space.World,则是世界坐标系
Constant Pixel Size 文字、图片会固定大小,不会随着屏幕界面的放大缩小而改变
Scale With Screen Size 文字、图片会随者游戏屏幕的大小而改变
Match Height改为1 随着高度的变化而变化。
Inpect先于AWAKE赋值
当同一个公共功能,在部分页面需要使用,其他页面不需要使用的情况下。可以增加探空检测。
Unity实例化是从上而下,父对象先于子对象。因此父对象实例化的时候,很多子对象awake方法里的对象还没有实例化,会造成报空的情况
合批就是把能够合并的mesh合并到一起,可以降低drawcall的数量
疑问:
为何要判断ExitTween不为空即要倒播
canvas ui的父物体,图形描绘到屏幕上
重复加载assetbundle会导致闪退
Collider2D OverlapPoint
## 游戏编程框架
推荐视频:
疑惑
状态转换的方法
疑惑:
1:为何要定义basePanel
可以在GameManager里面封装方法来简化后续的代码量。
CanvasTransform = GameObject.Find("Canvas").transform;
public UIFacade(UIManager uiManager)
为何要穿uiManager
疑问
字典文件为何使用 IBasePanel