【Unityスクール】範囲指定関数Mathf.Clampの使い方

こんにちは。
今回は範囲指定関数の使い方を紹介いたします。コード公開しますので、ぜひ参考にしてください。
C#スクリプト
範囲指定Mathf.Clamp関数を使います。
Mathf.Clampの基本形
1 |
Mathf.Clamp(value, min, max); |
今回はマウスウィールでオブジェクトのスケールを変更するスクリプトに、
スケール範囲の制限をかけます。
最小値は0.5、最大値は2に設定しました。インスペクター上からでも最小値と最大値を設定できます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
using System.Collections; using System.Collections.Generic; using UnityEngine; public class mouseWheel : MonoBehaviour { public GameObject _gameObject; //スケールを変更するゲームオブジェクト public float mini = 0.5f;//スケールの最小値 public float max = 2.0f;//スケールの最大値 // Update is called once per frame void Update() { //スケールの最大値最小値を制限 _gameObject.transform.localScale = (new Vector3(Mathf.Clamp(_gameObject.transform.localScale.x, mini, max), Mathf.Clamp(_gameObject.transform.localScale.y, mini, max), 1f)); } void OnGUI() { float val = Input.GetAxis("Mouse ScrollWheel"); if (val > 0.0f) { //ここにマウスエィールアップした時の処理 _gameObject.transform.localScale += new Vector3(0.01f, 0.01f, 0); Debug.Log("up"); } else if (val < 0.0f) { //ここにマウスエィールダウンした時の処理 _gameObject.transform.localScale -= new Vector3(0.01f, 0.01f, 0); Debug.Log("down"); } else { // do nothing } } } |
デモ
コンソールで確認できるように、Debug.Logでupは表示されますが、
スケール値は2以上、0.5以下にはいきません。
以上範囲指定関数Mathf.Clampの使い方でした。
人気記事:Unityは独学で勉強できる?
おすすめのUnityスクール
Unityが学べるおすすめのプログラミングスクールはTECH STUDIAMになります。
理由はゲーム開発に特化したプログラミングスクールであり、2ヶ月で9万円の授業料で他のプログラミングスクールに比べても安いからです。
興味のある方は、無料相談してみるのをオススメます。
ゲーム制作を学べるオンラインスクール TECH STUDIAM