見出し画像

Unity : Random.Range()

Unityで乱数を発生させるには、UnityEngine.Random.Range()を使いますが、

public static float Range(float min, float max);
public static int Range(int min, int max);

とオーバーロードされていますが、それぞれmaxの扱いが異なります。

public static float Range(float min, float max);
...min≦戻り値≦max (max含む)

public static int Range(int min, int max);
...min≦戻り値<max (max含まない)

間違いやすいので、注意しましょう。

Engineer's view point

float min = 0.0f;
float max = 10.0f;

float RandomNumUnityEngine.Random.Range(min, max);

if(max < RandomNum) RandomNum = max;
if(RandomNum < minRandomNum = min;

とするくらい、慎重な姿勢があるといいと思います。

もしよろしければ、サポートをお願いします! 頂いたサポートは、Creatorとしての活動費に充てさせて頂きます。