遍历被隐藏的物体

https://blog.csdn.net/qq_34199256/article/details/82425866


private static List<GameObject> GetAllSceneObjectsWithInactive()

    {

        var allTransforms = Resources.FindObjectsOfTypeAll(typeof(Transform));

        var previousSelection = Selection.objects;

        Selection.objects = allTransforms.Cast<Transform>()

  .Where(x => x != null)

        .Select(x => x.gameObject)

        //如果你只想获取所有在Hierarchy中被禁用的物体,反注释下面代码

        //.Where(x => x != null && !x.activeInHierarchy)

        .Cast<UnityEngine.Object>().ToArray();

        var selectedTransforms = Selection.GetTransforms(SelectionMode.Editable | SelectionMode.ExcludePrefab);

        Selection.objects = previousSelection;

        return selectedTransforms.Select(tr => tr.gameObject).ToList();

    }

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

推荐阅读更多精彩内容