Script-查找子节点

public class CreateObject : MonoBehaviour {

//   GameObject go;
//   GameObject goLight;
//   Light light;
    // Use this for initialization

    Transform transLight;
    Transform transLight2;
    public Transform goRoot;

    void Start () {
//      go = new GameObject ("ObjectScript");
//      goLight = GameObject.Find("Light");
//      light = goLight.GetComponent<Light> ();
//      light.color = Color.red;


        FindChild (goRoot, "GLight", ref transLight);
        FindChild (goRoot, "RLight", ref transLight2);

        transLight.GetComponent<Light> ().color = Color.green;
        transLight2.GetComponent<Light> ().color = Color.red;

    }
    
    // Update is called once per frame
    void Update () {
        
    }

    void FindChild(Transform trans,string findName,ref Transform _trans){


        if (trans.name.Equals (findName)) {
            _trans = trans.transform;
            return;
        }

        if (trans.childCount != 0) {
            for(int i=0,length =trans.childCount;i < length;i++ ){
                FindChild (trans.GetChild (i), findName, ref _trans);
            }
        }


    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容