乱数の作り方(Unity.Mathematics.Random)

環境

  • Unity 2019.3.3f1
  • Mathematics 1.1.0

乱数の作り方

var random = new Random(Seed);
// または
// var random = new Random();
// random.InitState(Seed);

//  float型の乱数を取得
var a = random.NextFloat();

// float2型の乱数を取得
var b = random.NextFloat2();

// int型の乱数を取得
var c = random.NextInt();

// 他にもdoubleやboolに対しても同様のことができる

同じSeedに対して得られる値はいつも同じであることに注意。

また、Seedの型はintではなくuintであることに注意。

Seedを動的に変更したい場合は

System.DateTime.Now.Millisecond + 1

などをSeedとして使うのがよい。

(Seedが0にならないように最後に+1している。)

参考

Struct Random | Package Manager UI website

【Unity】乱数のシード値をランダムに設定する - コガネブログ