Unityでランダムな値を生成する方法に関するメモ。
ランダムな値を生成したい場合はUnityEngine.Random.Rangeを使用します。
using UnityEngine; int v = Random.Range(0,100);
上記の例だと、0以上100未満(99まで)の値の中からランダムで値を生成します。
第2引数の値はランダムな値に含まないのがポイントです。(上記だと100は含まない。第2引数-1までが範囲)
UnityEngine.RandomとSystem.Randomの競合について
ランダムな値を生成する際に使う「UnityEngine.Random.Range」ですが、
下記のような状況で「Randam.Range」を記述すると、UnityEngine.RandomとSystem.Randomが競合してしまい、エラーが出る事がありました。
using UnityEngine; using System; int v = Random.Range(0,100);//エラー
調べてみると、C#には「System.Random」のクラスがあるようです。
なので、UnityEngine.RandomとSystem.Randomで競合が発生してしまう場合は以下のように「UnityEngine.Random.Range」とするとエラーが解消されます。
using UnityEngine; using System; int v = UnityEngine.Random.Range(0,100);