unity怎么获取物体

unity怎么获取物体,第1张

Unity可以通过GetChild功能快速获取到物体或子物体的。

*** 作步骤:

1、打开Unity,新建一个工程;

2、在场景中,新建一个“GameObject”,在其下再新建一个“Cube”和“Sphere”,适当调整页面的布局;

3、把“GameObject”下的子物体“Sphere”隐藏;

4、在工程中,新建一个脚本“GetChildTest”,双击脚本或者右键“OpenC#Project”打开脚本;

5、在“GetChildTest”脚本上编写代码,首先设置一个变量获取对象,然后在Update函数里按下“A”键,打印第一个子物体的名称,按下“S”键,打印第二个子物体的名称,并显示该物体;

6、脚本编译正确,回到Unity界面,把脚本赋给“GameObject”,并把“GameObject”赋给脚本对应变量;

9、运行场景,按下“A”“S”键,控制台console打印信息,并且“Sphere”显示就可以了。

Unity3d中GameObject对象可以包括其他子GameObject,并且本身包括多个Component

1.GameObjectFind("myObject") or FindGameObjectByTag will search the scene for an object called myObject

2. transformFind("myObject") will only search the game objects children for an object called myObject

3.GetComponent用来获取组件。

Transform Find(String name)    Transform FindChild(String name)

查找名为name的(transformgameObject)直接子物体并返回该子物体的Transform属性。不能是孙子物体或更低辈分的子物体。

2可以在name中使用字符'\' 遍历整个路径。其中路径的根必须是transformgameObject的直接子物体,不能是孙子物体或更低辈分的子物体。

这样就可以访问到以transformgameObject为根的物体树,包括其子物体,孙子物体,曾孙物体。。。。

若Cube物体有一个直接子物体Cube1,Cube1有一个直接子物体Cube2,我们就可以在Cube的脚本中使用transformFind("Cube1/Cube2");

或transformFindChild("Cube1/Cube2");

这样就直接访问到了transformgameObject的孙子物体Cube2。

一 直接GameObjectFind(名字)获取,不推荐

二 给要获取的gameobject添加标签,脚本中GameObjectFindGameObjectWithTag(标签)或者GameObjectFindWithTag(标签)游戏场景中物体太多的话不要用

三 脚本中定义一个public GameObject 的变量检视面板中把gameobject拖给变量

获取gameobject后具体 *** 作就不说了

以上就是关于unity怎么获取物体全部的内容,包括:unity怎么获取物体、unity3d 如何获取一个子对象,如何获得并更改在一个模型里面的子对象的属性的值。、unity C# 一个public gameobject 怎么在 同一个场景下的另一个script中 引用这个gameobject获取属性等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9830759.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存