获取所有儿童游戏对象的最佳做法?

时间:2015-09-22 00:21:42

标签: unity3d gameobject

您好: - ) 我是 Unity3D的新开发者。 我有一个问题是什么是让所有孩子玩GameObject的最佳做法。

GameObject's hierarchy

我想在某些条件下激活或取消激活3个按钮(相机,SNS,保存按钮)。

这是我的代码。但我觉得这不好。 我想替换它。有很多foreach声明。 当添加父游戏对象时,也将添加foreach循环。

var uiRoot = GameObject.Find("UIRoot");
    if (uiRoot != null)
    {

        foreach (Transform camera in uiRoot.transform)
        {
            camera.gameObject.SetActive(true);

            foreach (Transform anchor in camera.transform)
            {
                anchor.gameObject.SetActive(true);

                foreach (Transform buttons in anchor.transform)
                {
                    if (buttons.gameObject.tag == "PictureTag")
                    {
                        buttons.gameObject.SetActive(!isCameraVisible);
                    }
                    else if (buttons.gameObject.tag == "CameraTag")
                    {
                        buttons.gameObject.SetActive(isCameraVisible);
                    }
                }
            }
        }
    }

你们对此有好主意吗? 帮帮我,谢谢。

0 个答案:

没有答案