using UnityEngine;
using UnityEditor;
using System.Collections;
using System.Collections.Generic;
using UnityEngine.UI;

#if UNITY_EDITOR // 빌드시 제외시키는 기능이다.

public class LayerChanger : EditorWindow
{
    [MenuItem("RHY/LayerChanger", false, priority: 1)]//메뉴생성


    static void ShowWindow()
    {
        // 생성되어있는 윈도우를 가져온다. 
        LayerChanger window = (LayerChanger)EditorWindow.GetWindow(typeof(LayerChanger));

    }


    void OnGUI()
    {

        if (GUI.Button(new Rect(50, 80, 180, 40), "LayerChanger"))
        {
            SkinnedMeshRenderer [] MeshR = FindObjectsOfType(typeof(SkinnedMeshRenderer)) as SkinnedMeshRenderer[]; //SkinnedMeshRenderer를 찾는다.

            List<GameObject> listGO = new List<GameObject>(); // 하나씩 찾는다.
            if (MeshR != null)
            {
                for (int i = 0; i < MeshR.Length; i++)
                    listGO.Add(MeshR[i].gameObject);
            }

            Selection.objects = listGO.ToArray(); // 선택하여준다.

            //  MeshR = GetComponentsInChildren<SkinnedMeshRenderer>();
            foreach (var meshRenderer in MeshR) //각각 물체에 레이어를 넣어준다
            {
                meshRenderer.renderingLayerMask = 1; // 첫번째 레이어 설정

                meshRenderer.renderingLayerMask |= 1 << 1; // 추가 레이어 설정
                
            }


        }
    }

}

#endif

'Unity > C#' 카테고리의 다른 글

renderingLayerMask Set  (0) 2022.06.03
물체의 랜덤 스케일  (0) 2021.01.04
캐릭터 랜덤 애니메이션  (0) 2021.01.02
재미로 만들어보는 유니티(콘솔) 로또  (0) 2020.12.29
유리가 깨지는 연출  (0) 2020.12.15