Unity 사용자 가이드: 슬라이더 요소 사용법
이 문서는 Unity의 UXML 요소 중 슬라이더(Slider)와 관련된 내용을 다룹니다. 슬라이더 요소를 사용하여 사용자 인터페이스(UI)에서 값 조절 기능을 구현하는 방법에 대해 설명합니다.
슬라이더 요소 기본 설명
슬라이더는 사용자가 값을 조정할 수 있게 해주는 UI 요소입니다. 슬라이더는 다양한 속성을 가지고 있으며, 이를 통해 슬라이더의 동작과 모양을 세부적으로 조정할 수 있습니다.
주요 속성
속성 이름 | 타입 | 설명 |
---|---|---|
binding-path | string | 바인드될 타겟 프로퍼티의 경로입니다. |
direction | UIElements.SliderDirection | 슬라이더의 방향성을 설정합니다. |
focusable | boolean | 요소에 포커스를 맞출 수 있는지를 나타냅니다. |
high-value | float | 슬라이더가 인코딩하는 최대값입니다. |
inverted | boolean | 슬라이더의 반전 여부를 나타냅니다. |
label | string | 슬라이더 옆에 표시될 레이블을 나타냅니다. |
low-value | float | 슬라이더가 인코딩하는 최소값입니다. |
page-size | float | 슬라이더 클릭 시 값 변경에 사용되는 페이지 크기입니다. |
show-input-field | boolean | 숫자 입력 필드의 표시 여부입니다. |
tabindex | int | 포커스 링에서 항목을 정렬하는 데 사용됩니다. |
value | float | 슬라이더의 현재 값을 나타냅니다. |
VisualElement 속성
슬라이더는 VisualElement
에서 다음 속성도 상속받습니다.
속성 이름 | 타입 | 설명 |
---|---|---|
content-container | string | 자식 요소가 추가되는 항목입니다. |
name | string | 요소의 이름으로, 특정 선택자를 지정하는 데 사용됩니다. |
picking-mode | UIElements.PickingMode | 요소를 선택할 수 있는지를 결정합니다. |
style | string | 요소의 스타일 오브젝트에 대한 참조입니다. |
tooltip | string | 마우스를 요소 위에 놓았을 때 표시되는 텍스트입니다. |
usage-hints | UIElements.UsageHints | 요소의 사용 패턴을 지정하는 힌트 값입니다. |
view-data-key | string | 보기 데이터 지속성에 사용됩니다. |
사용 예제
슬라이더 요소를 활용하여 간단한 UI를 생성하는 예제를 보겠습니다. 이 예제는 슬라이더를 사용하여 소리의 크기를 조절하는 기능을 구현합니다.
간단한 UXML 예제
<engine:Slider name="VolumeSlider"
low-value="0"
high-value="100"
label="Volume"
value="50"/>
위의 예제는 기본 슬라이더를 생성하며 소리의 볼륨을 0에서 100까지 조절할 수 있습니다.
C# 스크립트 구현 예
슬라이더의 값을 읽고, 소리의 크기를 조절하는 C# 스크립트를 아래와 같이 구현할 수 있습니다.
using UnityEngine;
using UnityEngine.UIElements;
public class VolumeControl : MonoBehaviour
{
private Slider volumeSlider;
void Start()
{
var root = GetComponent<UIDocument>().rootVisualElement;
volumeSlider = root.Q<Slider>("VolumeSlider");
volumeSlider.RegisterValueChangedCallback(evt =>
{
Debug.Log($"Volume set to: {evt.newValue}");
// 소리 조절 로직 추가
});
}
}
이 코드는 사용자가 슬라이더를 조작할 때마다 새로운 볼륨 값을 콘솔에 출력합니다. 실제로 소리의 크기를 조절하는 로직은 Debug.Log
부분 뒤에 추가해야 합니다.
결론
Unity에서 슬라이더 요소를 사용하면 사용자의 입력을 쉽게 받고, 다양한 값 조정을 할 수 있습니다. 이 기본적인 사용법 외에도 슬라이더 요소를 확장하여 더욱 복잡한 UI를 설계할 수 있습니다.