유니티 버전 - 2022.3.17f1
The type or namespace name 'EditorWindow'
빌드시 다음과 같은 오류가 발생하는이유는 EditorWindow는 에디터 전용 클래스이기때문에, 런타임 빌드에서는 사용할 수 없기때문입니다
Assets\Scripts\스트립트명.cs(6,36):
error CS0246: The type or namespace name 'EditorWindow' could not be found (are you missing a using directive or an assembly reference?)
'EditorWindow' / 'MenuItemAttribute' / 'MenuItem'
따라서, EditorWindow를 상속받는 스크립트는 Editor라는 이름의 폴더에 위치해야합니다
아래처럼 InGameControlWindow를 Editor 폴더 아래 넣고 다시 빌드해보면 오류 없이 빌드가 수행됩니다
만약 하나의 스크립트내에서 에디터 코드와 런타임 코드를 모두 사용해야한다면 지시문을 이용하여 분리할 수 있습니다
using UnityEngine;
public class ExampleScript : MonoBehaviour
{
void Start()
{
Debug.Log("분리");
}
#if UNITY_EDITOR
using UnityEditor;
[MenuItem("Tools/Do Something")]
public static void DoSomething()
{
EditorWindow.GetWindow<MyEditorWindow>("Editor Window");
}
#endif
}
'코드 및 공부 > 기타' 카테고리의 다른 글
컴파일 경고 끄기 (#pragma warning disable 0000) (0) | 2025.01.17 |
---|---|
Default Font Asset 설정하기 (0) | 2025.01.03 |
깃허브 데스크탑 체리 픽(Cherry-Pick) (0) | 2024.12.31 |
깃허브 데스크탑에서 External editor가 Visual Studio로 안 열릴 때 (0) | 2024.12.27 |
스팀웍스 등록 후 메일로 Action Required가 왔을 때 보내야 할 서류 (0) | 2024.12.27 |