栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 游戏开发 > 其他

Unity中同时修改物体及其所有子物体层级

其他 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Unity中同时修改物体及其所有子物体层级

简单说一下思路:
  1. 首先你得判定当前物体是否有子物体
  2. 没有的话就直接设置层级
  3. 有的话就再回到1,继续判断子物体下是否还有子物体
接下来结合代码再好好理解一下
	private void ChangeLayer(Transform transform,int layer)
    {
        if (transform.childCount>0)//如果子物体存在
        {
            for (int i = 0; i < transform.childCount; i++)//遍历子物体是否还有子物体
            {
                ChangeLayer(transform.GetChild(i), layer);//这里是只将最后一个无子物体的对象设置层级
            }
            transform.gameObject.layer = layer;//将存在的子物体遍历结束后需要把当前子物体节点进行层级设置
        }
        else					//无子物体
        {
            transform.gameObject.layer = layer;
        }
    }

如果还是不能理解,建议先去了解一下树!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/901516.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号