递归查找子物体(适用于背包系统)

该代码示例展示了一个在Unity3D中寻找子对象Cube的递归函数FindChildCube。它接受一个子对象名称和父对象的Transform,遍历父对象的所有子节点来查找匹配的子对象。在Start函数中,函数被调用寻找名为Cube(6)的子对象,并打印出找到的对象名。
摘要由CSDN通过智能技术生成

新建若干个cube其父子关系如下:

public class FindChild : MonoBehaviour
{
    Transform FindChildCube(string childName,Transform parent)
    {
        if(childName==parent.name)return parent;
        if(parent.childCount<1)return null;

        Transform obj=null;
        for(int i=0;i<parent.childCount;i++)
        {
            var t=parent.GetChild(i);
            obj=FindChildCube(childName,t);
            if(obj!=null)break;
        }
        return obj;
    }

    private void Start() {
        var t=FindChildCube("Cube (6)",transform);
        if(t)Debug.Log(t.name);
    }
}

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值