Unity中获取一个物体下所有的子物体的方法
Unity中获取一个物体下所有的子物体的方法
方法1(获取全部子物体,无论子物体SetActive是否为true):
using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class Test : MonoBehaviour
{public List<GameObject> CH = new List<GameObject>();//储存物体的列表// Start is called before the first frame updatevoid Start(){FindChild(this.gameObject);//找到节点下的所有子物体}void FindChild(GameObject child){//利用for循环 获取物体下的全部子物体for (int c = 0; c < child.transform.childCount; c++){//如果子物体下还有子物体 就将子物体传入进行回调查找 直到物体没有子物体为止if (child.transform.GetChild(c).childCount > 0){FindChild(child.transform.GetChild(c).gameObject);}CH.Add(child.transform.GetChild(c).gameObject);}}
}
获取全部子物体后,可通过list列表对物体进行批处理;
如添加或移除其子物体的组件,判断其子物体是否有某个组件等等。
方法二(推荐):
transform.GetComponentsInChildren<Transform>(); //无法获取SetActive为false的子物体
transform.GetComponentsInChildren<Transform>(true); //获取全部子物体,无论SetActive是否为true
该方法为Unity内置的API,会查找物体下对应类型的全部组件;
(注意:此方法会查找到本身的Transform)
Unity中获取一个物体下所有的子物体的方法相关推荐
- java中获取一个集合(Set)的子集的方法
想获取一个链表(List)的子集,可以直接使用subList方法,但是集合(Set)并没有类似的subSet的方法. 有些应用场景需要获取一个集合的子集,这时候该怎么做呢? 最容易想到的方式,就是构造 ...
- 【Unity】获取当前物体下的所有子物体
使用Transform.GetComponentsInChildren<>()的方法来获取指定物体下的所有子物体,并复制给数组,然后进行遍历 activePanel为指定物体,string ...
- 【Unity】【Wwise】在Unity中获取某个Wwise事件的持续时间
[Unity][Wwise]在Unity中获取某个Wwise事件的持续时间 解决方案 注意事项 边边角角 小吐槽 有一次接到这么一个需求:要在界面上显示出一段人物语音的长度,并且在播放的时候进行倒计时 ...
- 学习在Unity中创建一个动作RPG游戏
游戏开发变得简单.使用Unity学习C#并创建您自己的动作角色扮演游戏! 你会学到什么 学习C#,一种现代通用的编程语言. 了解Unity中2D发展的能力. 发展强大的和可移植的解决问题的技能. 了解 ...
- 学习用C#在Unity中创建一个2D Metroidvania游戏
学习用C#在Unity中创建一个2D Metroidvania游戏 你会学到: 构建2D Unity游戏 用C#编程 玩家统计,水平提升,米尔和远程攻击 敌方人工智能系统 制定级别和级别选择 Lear ...
- 学会在Unity中创建一个Match-3益智游戏 Learn To Create a Match-3 Puzzle Game in Unity
MP4 |视频:h264,1280×720 |音频:AAC,44.1 KHz,2 Ch 语言:英语+中英文字幕(根据原英文字幕机译更准确) |时长:48场讲座(6h 38m) |大小解压后:2.8 G ...
- Java笔记-通过反射获取注解及Spring中获取某包下的所有class文件
首先来看看使用反射来获取注解名: 只需在获取class后调用getAnnotation方法即可,如下 这里是获取JPA映射b表名,Table.class,使用下面这个可以获取表名 import jav ...
- java注解返回不同消息,Spring MVC Controller中的一个读入和返回都是JSON的方法如何获取javax.validation注解的异常信息...
Spring MVC Controller中的一个读入和返回都是JSON的方法怎么获取javax.validation注解的错误信息? 本帖最后由 LonelyCoder2012 于 2014-03- ...
- 原来在UNITY中使用system.io下的所有函数都可以用相对路径 : Assets/xx
原来在UNITY中使用system.io下的所有函数都可以用相对路径 : Assets/xx 代码如下图,这样就不用在绝对路径和相对路径之间不断转换了. 想要得到绝对路径时就傅 Application ...
最新文章
- 为Process.waitFor设置超时
- poj 1088滑雪
- (转)Apache Ant 环境开发Android应用 二
- 【1】淘宝sdk装修入门引言
- 【原】npm 常用命令详解
- 吴恩达《机器学习》学习笔记十四——应用机器学习的建议实现一个机器学习模型的改进
- ROS 科大讯飞语音(三)识别篇
- JVM 堆内存设置 -Xmx -Xms
- 暴风影音去广告补丁NSIS代码开放
- python 爬虫 客户端_python爬虫
- 【修复版】ONE兔3.0版本社交社区交友婚恋视频即时通讯双端APP原生源码
- 手把手教你微信小程序开发
- 云课堂智慧职教计算机基础答案,云课堂智慧职教题库答案护理系内科,智慧职教职业生涯规划答案,智慧职教mooc学院计算机文化基础答案...
- 将数组文件转换成bin格式文件
- 学习笔记4--惯性导航及总结
- html 换行特殊符号,html 换行符号
- tensorflow2.X tf.data.Dataset详解
- mysql实验报告4_实验四∶数据库安全性实验报告.doc
- Hack the box: Bastion
- redis 应用场景