Unity中的随机数
一、每次都不一样的随机数
string s;
for(int i=0;i<10;i++)
{
if (i == 0) s = "";
s += Random.Range(1, 100) + ",";
}
Debug.Log(s);
执行效果如下:
每次都产生一样的随机数
System.Random random;//定义一个System.Random变量
random = new System.Random(1000);//种子的值不能超过int最大值
for(int i=0;i<10;i++)
{
if (i == 0) s = "";
s += RandomRange(1,100) + ",";
}
Debug.Log(s);
public int RandomRange(int min, int max)
{
return random.Next(min, max);
}
从时间可以看出,两次运行的随机数一样!
如果想随机浮点数,则重载RandomRange函数即可
public float RandomRange(float min, float max)
{
var r = random.NextDouble();
return (float)(r * (max - min) + min);
}
注意:必须是在同一台机器才会每次产生同样的随机数。