在实际的脚本编程中,使用查找方法,调用对象,是不可避免的,但是一般耗时的并且不可避免的代码调用,都放在初始化函数当中,
这也就是为什么游戏当中初始化的时间很长的原因,当然也可以避免游戏初始化时间过长,这就要牺牲及时的效率
会使得游戏的过程不流畅,导致游戏所有的动作都需要一定的时间,当然效率和时间当中,要有取舍,这也是不可避免的
不建议对物体进行 activie = false; 处理,因为一旦养成这样的习惯,当大量的脚本挂在物体上面的时候,而且有其他的脚本对activie = false;物体的脚本
进行调用的时候,一旦脚本找不到该物体,就会引起一系列的代码崩溃,使得程序出现错误
如果想使得游戏物体隐藏,最好直接使得该物体的scale(0,0,1)【2D】或者是scale(0,0,0)【3D】
在Unity当中,想要对不同对象的脚本进行调用
物体A挂了脚本A,物体B挂了脚本B
物体B的脚本B想要使用物体A的脚本A
首先要获得当前物体A,然后获得物体A的 组件 脚本A
GameObject.Find()
GameObject root = GameObject.Find(“GameObject”);
GameObject root = GameObject.Find(“GameObject/Cube”

本文详细介绍了在Unity3D中如何有效地查找和调用游戏对象上的脚本,包括GameObject.Find()、Transform.Find()以及FindGameObjectsWithTag等方法的使用,强调初始化调用的时机和效率平衡。同时,建议避免使用active = false,而是通过改变物体scale来实现隐藏。还讲解了如何通过SendMessage和SendMessageUpwards进行对象间的通信。
最低0.47元/天 解锁文章
5万+

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



