U3d寻找优先顺序与加载物体方式与限定索引值
GameObject.FindGameObjectWithTag这个方法使用的是深度优先顺序来寻找.
GameObject里的find都是深度优先的顺序来查找物体,所以你用FindGameObjectWithTag的时候,牢记不能随便给物体加Tag,因为这样会严重影响到这个命令的查找速度,一般给场景中的唯一物体加Tag是最明智的选择
U3d中一般大部分Demo会使用public一个GameObject的方式直接在Inspector面板中赋值一个Prefab,这样会影响到计算机性能,所以出现了更具有提升性能的方法,在UnityEngine.UI中的Resource类内的一系列load方法,需要你管理好你unity中的resource文件夹内的物体,让它们更简便.
unity中如果需要取值最大为某个数,你可以选择给这个数取于.
举个栗子:
需求:我需要娶一个小于32的数值,你不能输入超过32的数值因为那样会超出索引.
解决办法:
1.if语句,逻辑判断,最蠢的办法但是方便直接
2.Mathf.Clamp方法,有点稍微复杂,但是实用
3.直接取余数,index = index%32; 输入1返回1,输入2,返回2,输入32,返回0,输入33.返回1
以上通过简单的运算方式解决了这个取值最大数的问题