Inspector - TeamCrazyPerformance/Game_study GitHub Wiki

Inspector(인스펙터)란?

각종 게임 오브젝트, 에셋, 스크립트 변수 등의 값을 조절할 수 있는 창이다. 거의 모든 Unity 요소들의 설정과 요소들을 확인, 편집할 수 있다.

창의 위치와 닫혔을 때 여는 방법

image

  • 유니티를 설치 후 프로젝트를 만들어서 첫 물체를 생성, 선택하면 위 그림과 같이 오른쪽에 Inspector 탭이 뜬다.

  • 상단 메뉴에서 Windows > General > Inspector를 선택

  • 아무 창의 More 항목 메뉴(⋮)에서 Add Tab > Inspector를 선택

Inspector 창 소개

image

Inspector에 뜨는 Component는 게임 오브젝트마다 상이하다. 위에 있는 Component들은 Cube의 Component들이다. 각 Component들은 삭제, 서로 간의 순서 변경, 추가 등이 가능하다. 원하는 Component를 끌거나 각 Property의 점 3개(...) 버튼을 눌러 순서를 조정할 수 있다. 삭제는 점 3개(...) 버튼을 눌러 삭제할 수 있다.

image

Inspector 창을 맨 밑으로 스크롤하여 Add Component를 눌러 Component를 추가할 수 있다. 스크립트의 경우 검색창에서 스크립트 명을 직접 입력해 검색할 수 있다.

UI

ㅁㄴㅇㄹ

Script

public 변수

image image

Script의 Class 안에서 public 멤버 변수를 선언한 뒤 어떤 Object에 적용하면 위의 그림과 같이 Inspector 창에서 변수를 조절할 수 있게 된다. 조절한 변수는 해당 Object에서만 적용되며, 기본값을 수정하려면 Script 내에서 적용해야한다.

image image

변수를 public으로 설정하고 싶지만 굳이 인스펙터에서 값을 수정해줄 필요가 없을 경우 해당 변수 위에 [HideInInspector]를 삽입하여 준다.

private 변수

image 변수를 private로 설정하고 싶지만 보기 쉽게 Inspector 창에 표시하고 싶은 경우 private 키워드 대신 [SerializeField]를 삽입하여 준다.

특수한 Attribute

image

위의 사진처럼 스크립트에서 public 변수가 많아지면 내가 원하는 변수를 찾기 힘들고 조작도 귀찮아진다. 이런 불편함을 해소하기 위해 Script에서 특수한 Class를 사용하여 변수들을 보기 좋게 구분해줄 수 있다. 이러한 모든 Class는 브래킷 [] 내에 함수처럼 사용할 수 있다.

[Header (string)]

image image

Header Attribute을 사용하면 위 처럼 Header 속성을 기준으로 영역이 분할되고 타이틀이 달린다.

[Space (float)]

image image

float에 적힌만큼 간격을 띄워주는 Attribute다.

[Range (float, float)]

image image

변수의 값을 슬라이더 형식으로 표시하고, 최소 및 최대 값을 정해주는 Attribute다.

[Multiline (int)]

image image

문자열을 작성하기 편하도록 라인의 수를 늘려주는 Attribute다.

[ToolTip (string)]

image image

해당 변수 위에 커서를 올릴 경우 나타나는 툴팁을 설정하는 Attribute다.

[System.Serializable]

image image

클래스나 구조체 위에 이 Attribute를 쓰면 Inspector에 표시될 때 변수 왼편에 접고 펼 수 있는 삼각형 아이콘이 만들어진다. 펼치면 안에 있는 내용이 보여지며, 다시 접을 수 있다.