[C#] 유니티_Unity 속성(Attributes) 정리

한승호·2022년 6월 20일

C# 공부

목록 보기
7/13
post-thumbnail

유니티의 속성 (Attributes)

스크립트에서 클래스와 속성 또는 함수와 변수 위에 명시해 속성에 해당하는 동작을 한다.
유니티에는 굉장히 많은 속성이 있지만, 오늘은 자주 사용되는 몇 개의 속성들을 정리해본다.

1. Serializable

  • 인스펙터에는 클래스나 구조체를 표시할 수 없지만, Serializable를 사용하면, 인스펙터 창에 노출이 되어 편집이 가능하다.

2. SerializeField

  • private 멤버를 인스펙터 창에 노출시킨다. 주로, 다른 클래스에서 참조하지 않지만, 변수를 인스펙터에 노출시켜 편집하고 싶을 때 사용한다.
public class AttributesTest : MonoBehaviour
{
    [SerializeField] private int test = 0;
}

3. HideInInspector

  • public 변수를 인스펙터 창에 노출시키지 않는다.
  • 변수를 외부에 공개해야 하지만, 인스펙터에서 값을 수정할 필요가 없을 때 사용한다.
public class AttributesTest : MonoBehaviour
{
    [HideInInspector] private int test = 0;
}

4. RequireComponent (typeof (Component)

  • 컴포넌트를 추가할 때, 요청한 Type에 해당하는 컴포넌트가 없을 경우 자동으로 추가 요청한다.

5. Header ("string")

  • 인스펙터에 타이틀을 달 수 있다.
  • 프로젝트의 규모가 커지면, 정리가 필수가 되기 때문에 중요하다.

6. Multiline (int)

  • 라인 수를 늘려준다
  • 장문의 문자열을 작성할 때 유요하다.

7. Range (int, int) // Range (float, float)

  • 최소와 최대값을 기반으로 변수의 값을 슬라이드 바로 표시한다.

8. Space (int / float)

  • 인스펙터 창에서 자료형 만큼의 간격을 조절할 수 있다.
  • 필드 사이에 여백을 줄 수 있다.

9. Tooltip ("string")

  • 마우스 커서를 올릴 경우 표시되는 툴팁을 설정할 수 있다.
profile
모든 실수를 경험해 더 발전하고 싶은 개발자입니다.

0개의 댓글