GUISkin 은 GUI에 적용할 수 있는 GUIStyle 컬렉션입니다. 각 컨트롤 유형에는 고유한 스타일 정의가 있습니다. 스킨은 스타일을 단일 컨트롤에만 적용하는 것이 아닌 전체 UI에 적용하기 위한 것입니다.
GUISkin을 생성하려면 메뉴 바에서 Assets > Create > GUI Skin 을 선택해야 합니다.
참고: 이 페이지는 스크립팅 전용 UI 시스템인 IMGUI 시스템의 일부를 참조합니다. Unity에는 사용하는 것을 선호할 수 있는 완전한 게임 오브젝트 기반__ UI__(사용자 인터페이스) 사용자가 애플리케이션과 상호 작용하도록 해 줍니다. Unity는 현재 3개의 UI 시스템을 지원합니다. 자세한 정보
See in Glossary 시스템이 있습니다. 씬 뷰에서 사용자 인터페이스 요소를 표시되는 오브젝트로 디자인하고 편집할 수 있습니다. 자세한 내용은 UI 시스템 매뉴얼을 참조하십시오.
GUI 스킨의 모든 프로퍼티는 개별 GUIStyle입니다. 스타일 사용 방법에 대한 자세한 내용은 GUIStyle 페이지를 참조하십시오.
| 프로퍼티: | 기능: |
|---|---|
| Font | GUI의 모든 컨트롤에 사용할 전역 폰트 |
| Box | 모든 박스에 사용할 스타일 |
| Button | 모든 버튼에 사용할 스타일 |
| Toggle | 모든 토글에 사용할 스타일 |
| Label | 모든 레이블에 사용할 스타일 |
| Text Field | 모든 텍스트 필드에 사용할 스타일 |
| Text Area | 모든 텍스트 영역에 사용할 스타일 |
| Window | 모든 창에 사용할 스타일 |
| Horizontal Slider | 모든 가로 슬라이더 바에 사용할 스타일 |
| Horizontal Slider Thumb | 모든 가로 슬라이더 엄지 버튼에 사용할 스타일 |
| Vertical Slider | 모든 세로 슬라이더 바에 사용할 스타일 |
| Vertical Slider Thumb | 모든 세로 슬라이더 엄지 버튼에 사용할 스타일 |
| Horizontal Scrollbar | 모든 가로 스크롤바에 사용할 스타일 |
| Horizontal Scrollbar Thumb | 모든 가로 스크롤바 엄지 버튼에 사용할 스타일 |
| Horizontal Scrollbar Left Button | 모든 가로 스크롤바의 왼쪽 스크롤 버튼에 사용할 스타일 |
| Horizontal Scrollbar Right Button | 모든 가로 스크롤바의 오른쪽 스크롤 버튼에 사용할 스타일 |
| Vertical Scrollbar | 모든 세로 스크롤바에 사용할 스타일 |
| Vertical Scrollbar Thumb | 모든 세로 스크롤바 엄지 버튼에 사용할 스타일 |
| Vertical Scrollbar Up Button | 모든 세로 스크롤바의 위로 스크롤 버튼에 사용할 스타일 |
| Vertical Scrollbar Down Button | 모든 세로 스크롤바의 아래로 스크롤 버튼에 사용할 스타일 |
| Custom 1–20 | 모든 컨트롤에 적용할 수 있는 추가 커스텀 스타일 |
| Custom Styles | 모든 컨트롤에 적용할 수 있는 추가 커스텀 스타일의 배열 |
| Settings | 전체 GUI에 대한 추가 설정 |
| __Double Click Selects Word__ | 이 옵션을 활성화하는 경우, 단어를 더블 클릭하면 선택됩니다. |
| __Triple Click Selects Line__ | 이 옵션을 활성화하는 경우, 단어를 세 번 클릭하면 해당 행 전체가 선택됩니다. |
| __Cursor Color__ | 키보드 커서의 색상 |
| __Cursor Flash Speed__ | 텍스트 컨트롤을 편집할 때 텍스트 커서가 깜박이는 속도 |
| __Selection Color__ | 텍스트 선택 영역의 색상 |
게임의 전체 GUI를 제작할 때는 다양한 컨트롤 유형에 대해 많은 커스터마이징을 수행해야 합니다. 실시간 전략이나 롤플레잉 등 다양한 게임 장르에 거의 모든 컨트롤 유형이 필요합니다.
각 개별 컨트롤에 특정 스타일을 사용하므로 수십 개 이상의 개별 스타일을 생성하고 모든 스타일을 수동으로 할당하는 것은 효율적이지 않습니다. GUI 스킨으로 이 문제를 해결할 수 있습니다. GUI 스킨을 생성하면 각 개별 컨트롤에 대한 스타일 컬렉션을 사전 정의할 수 있습니다. 그런 다음 코드 한 줄로 스킨을 적용하면 각 개별 컨트롤의 스타일을 수동으로 지정할 필요가 없습니다.
GUISkin은 에셋 파일입니다. GUI 스킨을 생성하려면 메뉴 바에서 Assets > Create > GUI Skin 을 선택합니다. 그러면 프로젝트 뷰 에 새 GUISkin이 추가됩니다.
GUISkin을 생성한 후에는 인스펙터에서 포함된 모든 스타일을 편집할 수 있습니다. 예를 들어 모든 텍스트 필드 컨트롤에 Text Field 스타일이 적용됩니다.
스크립트에서 생성하는 텍스트 필드 수에 상관없이 모두 이 스타일을 사용합니다. 물론 원하는 경우 한 텍스트 필드의 스타일을 다른 텍스트 필드의 스타일과 다르게 변경할 수 있습니다. 다음으로 이렇게 하는 방법을 알아보겠습니다
GUI에 GUISkin을 적용하려면 스킨을 읽어 들이고 컨트롤에 적용할 간단한 스크립트를 사용하면 됩니다.
// Create a public variable where we can assign the GUISkin
var customSkin : GUISkin;
// Apply the Skin in our OnGUI() function
function OnGUI () {
GUI.skin = customSkin;
// Now create any Controls you like, and they will be displayed with the custom Skin
GUILayout.Button ("I am a re-Skinned Button");
// You can change or remove the skin for some Controls but not others
GUI.skin = null;
// Any Controls created here will use the default Skin and not the custom Skin
GUILayout.Button ("This Button uses the default UnityGUI Skin");
}
경우에 따라 서로 다른 스타일의 두 개의 동일한 컨트롤을 사용해야 합니다. 이러한 경우 새로운 스킨을 생성하고 다시 할당하는 것은 효율적이지 않습니다. 대신, 스킨에 커스텀 스타일 중 하나를 사용합니다. 커스텀 스타일에 대한 이름 을 지정하면 해당 이름을 개별 컨트롤의 마지막 인자로 사용할 수 있습니다.
// One of the custom Styles in this Skin has the name "MyCustomControl"
var customSkin : GUISkin;
function OnGUI () {
GUI.skin = customSkin;
// We provide the name of the Style we want to use as the last argument of the Control function
GUILayout.Button ("I am a custom styled Button", "MyCustomControl");
// We can also ignore the Custom Style, and use the Skin's default Button Style
GUILayout.Button ("I am the Skin's Button Style");
}
GUIStyle 작업에 대한 자세한 내용은 GUIStyle 페이지를 참조하십시오. UnityGUI 사용에 대한 자세한 내용은 GUI 스크립팅 가이드를 참조하십시오.
GUISkin