BLOG ブログ

ENTRY

お申し込みはこちら

【Unity】ゲージ・スライダー

 時間やHP、ポイントなど数値を視覚的に表現したいときに使えるのが直線のゲージを扱うSlider。コンポーネントの取得やアタッチについては【Unity】コンポーネントの取得【Unity】オブジェクトの取得を参照。

Sliderオブジェクトの追加

Slider
 Hierarchy【ヒエラルキー】上部の[+]>[UI]>[Slider]から追加。
 UIなのでCanvasの子オブジェクトとして配置しなければならない点に注意。

レイアウトとデザインの修正

スライダーの色など
 Sliderオブジェクトには子オブジェクトとして背景、fillエリア、ハンドルなども自動生成されるので必要に応じて削除する。
 InspectorからImageコンポーネントのColor変数を調整することで色も変更可能。
 その上のSourceImageでSpriteを設定すれば自作の画像を引き伸ばしてゲージとして利用することもできる。
 配置を変更する場合はSliderオブジェクトのRectTransformから調整。
 SceneウィンドウよりGameウィンドウを開きながら調整することを推奨。
 SliderオブジェクトのSliderコンポーネントのMinValueとMaxValueでそれぞれスライダーで表示する最小値と最大値を設定。
 表示する数値自体はその下のValueの数値が反映される。
 つまりこれをスクリプトから操作すればゲーム中の数値の変化が反映される。

スクリプトからの制御

コンポーネントの登録
 まずスクリプトにSliderコンポーネントを取得。
 UIを使うのでusing UnityEngine.UI;の追記を忘れずに。
public Slider hoge; 

 publicでSliderクラスの宣言ができたら一旦Unityエディタに戻り、登録用の枠ができているはずなので上の画像のようにコンポーネントをD&D。
 別のオブジェクトから制御したい場合は勿論GameObjectを宣言してD&Dするところから。

 あとはUpdate関数内で必要に応じてvalue変数の値を変更するだけ。
hoge.value = 0.5f; 

CONTACT お問い合わせ

無料体験授業は随時開催しています。
ご希望やご質問など、お気軽にお寄せください。