참고 사이트
http://docs.unity3d.com/Documentation/ScriptReference/Editor.html
http://www.unitystudy.net/bbs/board.php?bo_table=writings&wr_id=146
Editor 확장
Editor Windows
자신의 윈도우를 생성할 수 있음
Inspector 처럼 사용
Custom Inspectors
Inspector의 보여주는 속성을 바꿀 수 있음
Editor Customize와 관련된 클래스들
EditorWindow : 팝업 윈도우 관련
ScriptableWizard : 확인/적용 등의 버튼을 가진 마법사 윈도우
Editor : 커스텀 에디터를 위한 기본 클래스
Editor와 관련된 Script를 작성하기 위해서는 반듯이 [ "project Folder"/Assets/Editor ] 아래에 있어야 함
Inpsectot View Customizer
namespace 추가
using UnityEditor
연결할 스크립트 지정
스크립트 맨 위쪽에 Editor 명령어 삽입
예> [CustomEditor(typeof(MyScripte))]
에디터 클래스 선언 부분
MonoBehaviour 클래스 대신 Editor 클래스를 상속 받아야 함
예> public class MyEditor : Editor {
Inspector Override
public override void OnInspectorGUI()
public void OnSceneGUI()
씬에 GUI 요소를 그리고자 할 때
Texture 보여주기
[ 실습 ]
실습 1 - 출처 : http://www.unitystudy.net/bbs/board.php?bo_table=writings&wr_id=146
Cube 만들기
Cube에 붙일 Script 만들기(CubeRotator.cs)
public으로 되어 있는 Speed / TargetPosition 을 Inspector에서 확인해 보기
<Source> CubeRotator01.cs
[실습1-1]
SObject.cs를 Customizing 하기 위한 Script 만들기(CubeRotatorInspector.cs)
Editor 폴더 밑에 만들 것
using UnityEditor 삽입
<Source> CubeRotatorInspector01.cs
[실습 1- 2] : Inspector에 버튼을 추가하고 버튼을 클릭할 때마다 반대 방향으로 Cube가 회전하도록 실습
http://docs.unity3d.com/Documentation/ScriptReference/EditorGUILayout.html
http://docs.unity3d.com/Documentation/ScriptReference/GUILayout.html
<Source> CubeRotatorInspector02.cs
[실습 1-3] : 똑같은 속성의 여러 Cube를 선택했을 때의 Inspector 처리
실습 1-2에서 생성된 큐브를 하나 더 만듬
두개의 오브젝트를 선택했을 때 "Multi-object editing not supported"가 표시됨
<Source> CubeRotatorInspector03.cs
멀티 오브젝트을 선택해도 해결됨
Cube 만들기
Cube에 붙일 Script 만들기(Movement.cs)
<Source> Movemnet01.cs
[실습 2-1] : 기본 Inspector 바꿔 보기(
Movement.cs를 Customizing 하기 위한 Script 만들기(MovementEditor.cs)
Editor 폴더 밑에 만들 것
using UnityEditor 삽입
<Source> MovementEditor01.cs
[실습 2-2] :
<Source> MovementEditor02.cs