Unity GUI 스킨 가이드
개요
이 문서는 Unity의 IMGUI 시스템에서 GUI 스킨을 사용하는 방법에 대한 설명입니다. GUI 스킨은 UI의 전체적인 스타일을 정의하고 조정하는 데 유용한 툴입니다. Unity는 게임 오브젝트 기반의 UI 시스템도 제공하므로, 상황에 맞게 선택하여 사용할 수 있습니다.
GUI 스킨 생성
- GUI 스킨 생성 방법
- 메뉴 바에서 Assets -> Create -> GUI Skin을 선택합니다.
- 이 과정을 통해 Project View에 새로운 GUISkin이 생성됩니다.
- GUI 스킨 편집
- 생성한 GUISkin을 선택하면 인스펙터 창에서 다양한 스타일을 편집할 수 있습니다.
- 예를 들어, Text Field 스타일을 수정하면 모든 텍스트 필드에 동일한 스타일이 적용됩니다.
GUI 스킨 사용 예시
GUI에 GUISkin을 적용하려면 다음과 같은 간단한 스크립트를 사용합니다.
// GUISkin을 할당할 수 있는 공개 변수를 생성합니다.
var customSkin : GUISkin;
// OnGUI() 함수 내에서 스킨을 적용합니다.
function OnGUI () {
GUI.skin = customSkin;
// 이제 원하는 컨트롤을 생성할 수 있으며, 커스텀 스킨으로 표시됩니다.
GUILayout.Button ("I am a re-Skinned Button");
// 일부 컨트롤에서 다른 스킨을 사용하거나 제거할 수 있습니다.
GUI.skin = null;
// 여기에서 생성된 모든 컨트롤은 기본 UnityGUI 스킨을 사용합니다.
GUILayout.Button ("This Button uses the default UnityGUI Skin");
}
- 커스텀 스타일 사용
- 두 개의 동일한 컨트롤에 서로 다른 스타일을 적용하고 싶다면, 스킨의 Custom 스타일을 이용할 수 있습니다.
- 커스텀 스타일에 이름을 붙인 후 이 이름을 컨트롤 함수의 마지막 인수로 전달하여 사용합니다.
// "MyCustomControl"이라는 커스텀 스타일을 사용합니다.
var customSkin : GUISkin;
function OnGUI () {
GUI.skin = customSkin;
// 스타일 이름을 마지막 인수로 제공하여 사용합니다.
GUILayout.Button ("I am a custom styled Button", "MyCustomControl");
// 스킨의 기본 버튼 스타일을 사용할 수도 있습니다.
GUILayout.Button ("I am the Skin's Button Style");
}
프로퍼티 및 설정
각 GUI 스킨에는 다음과 같은 주요 프로퍼티가 포함되어 있습니다:
| 프로퍼티 | 기능 |
|---|---|
| Font | 모든 컨트롤에 사용할 전역 폰트 |
| Box | 모든 박스에 사용할 스타일 |
| Button | 모든 버튼에 사용할 스타일 |
| Toggle | 모든 토글에 사용할 스타일 |
| Label | 모든 레이블에 사용할 스타일 |
| Text Field | 모든 텍스트 필드에 사용할 스타일 |
| Text Area | 모든 텍스트 영역에 사용할 스타일 |
| Window | 모든 창에 사용할 스타일 |
| Horizontal Slider | 모든 수평 슬라이더 바에 사용할 스타일 |
| Vertical Slider | 모든 수직 슬라이더 바에 사용할 스타일 |
중요 설정
- Double Click Selects Word: 옵션 활성화 시, 단어를 더블 클릭하면 선택됨.
- Triple Click Selects Line: 옵션 활성화 시, 단어를 세 번 클릭하면 해당 행 전체가 선택됨.
- Cursor Color: 커서의 색상 조정
- Selection Color: 텍스트 선택 영역의 색상
결론
GUI 스킨을 활용하면 다양한 스타일을 일관되게 관리하고 적용할 수 있습니다. 이를 통해 게임의 사용자 인터페이스를 더 매력적으로 만들고, 개발 효율성을 높일 수 있습니다. 추가적인 질문이나 도움이 필요하다면 Unity 공식 매뉴얼을 참조하세요.