因项目需求将Unity版本由3.5.6升到4.1.2后,对项目本身造成影响的几处版本间差异:
1. EditorUtility.SetAssetPreview接口被废弃
2. GameObject clone_gameobject = GameObject.Instante(mother_gameobject) as GameObject;
clone_gameobject 与 mother_gameobject 的active状态在两版本间的差异如下
在3.5.6上
mother_gameobject active inactive
clone_gameobject active active
在4.1.2上
mother_gameobject active inactive
clone_gameobject active inactive
3. 若当前有节点结构如 parent/son
在3.5.6上,无论parent是否active,只要son是active的,son都是可见的
而在4.1.2上,即使son是active, 但必须其parent是active(递归, 其父节点的父节点也要是active), son依然是不可见的
4. 在4.1.2上原GameObject.active 属性和SetActiveRecursively()函数都被标记为deprecated,官方推荐使用activeInHierarchy、activeSelf属性 和 SetActive()函数。而上面第3条中的版本差异也正是由于这一原因。