[Tips] Unity에서 표준 스플라인 재료 사용 시 고려 사항

2466 단어 Unity2Dunity5
이것은 내가 처음으로 투고한 것이니 잘 부탁드립니다.
여기에 유니티 표준에 맞는 소재(표준소재)를 간과하기 쉬운 부분을 적어보자.
다음 코드를 자주 볼 수 있는데, Unity 편집기에서 실행하면
        private SpriteRenderer srenderer;

        :

        srenderer.material = Resources.GetBuiltinResource<Material>("Sprites-Default.mat");
소재를 찾을 수 없는 오류가 발생하는 이유(아래 그림 참조)

사실 Unity 편집기와 실행 환경 생성 후 표준 소재를 참고하는 방법은 다르다.따라서 실제로 #if를 사용하여 편집기에서 실행할지 여부를 구분해야 합니다.
hoge.cs
        private SpriteRenderer srenderer;

        :

#if UNITY_EDITOR
            srenderer.material = UnityEditor.AssetDatabase.GetBuiltinExtraResource<Material>("Sprites-Default.mat");
#else
            srenderer.material = Resources.GetBuiltinResource<Material>("Sprites-Default.mat");
#endif
이렇게 되면 편집기에서나 실기에서 표준 소재(Unity 5.4.0p1의 편집기에서 동작 확인)를 활용할 수 있으니 충분히 활용하시기 바랍니다.
게다가 이 처리는 유니티 포럼을 참고했다.
http://forum.unity3d.com/threads/released-super-tilemap-editor.387330/page-5

좋은 웹페이지 즐겨찾기