UI、つまみの作成
はじめに
画面上で動かせるつまみを作ってみる。
スクリプト
using UnityEngine; using UnityEngine.UI; [RequireComponent(typeof(Slider))] public class KnobController : MonoBehaviour { // スライダーのDirectionはTopToBottom // 上に動かせばプラスの値、下に動かせばマイナスの値 [SerializeField] Slider _slider; void Start() { OnDragEnd(); } /// <summary> /// スライダーが動かされたら呼び出される /// </summary> public void OnValueChanged() { // つまみが移動された分をどこかに渡す var result = _slider.maxValue / 2 - _slider.value; // manager.KnobValueChange(result); } /// <summary> /// 離したらスライダーの中心にもどる /// </summary> public void OnDragEnd() { _slider.value = _slider.maxValue / 2; } }
説明
unityのUIにあるスライダーをもとにそれっぽくスクリプトで制御している。
おわりに
中身は簡単だがつまみのように見せるには、アニメーションや効果音などの操作感を演出する必要がある。