使用Random生成随机数

生成随机数

一、使用random生成随机数

为给游戏添加趣味性经常会在游戏中随机生成一些不确定的东西。

1、使用Random生成随机数。

语句:print(Random.Range(4,10));
表示应用Random方法随机生成4到10之间的整数。不包含10。
运行结果:
使用Random生成随机数

2、随机小数的生成

修改语句为:print(Random.Range(4,5F));
表示应用Random方法随机生成4到5之间的小数。
运行结果:
使用Random生成随机数

二、使用Random生成伪随机数。

语句:在Void Start()语句下面添加语句:
Random.InitState(0);
在这里我们随机生成一个数。void Update()语句下添加语句:
If(Input.GetKeyDown(KeyCode.Space))
{
print(Random.Range(4,100));
}
没按下一次空格运行一次。
第一次运行结果显示:
使用Random生成随机数
第二次运行结果显示:
使用Random生成随机数
观察发现两次运行结果显示生成的随机数出现的顺序是一样的。所以称为伪随机数。

三、修改语句使每次生成的随机数不同

1、修改Void Start()语句下面的语句为:

Random.Initstate((int)System.DateTime.Now.Ticks);

2、在void Update()语句下if语句中添加输出语句:

第一次运行结果:
使用Random生成随机数
第二次运行结果:
使用Random生成随机数
由此可见每一次运行生成的随机数都是不一样的。

四、其他随机数的生成

1、colorHsy随机生成颜色。
2、Value通过随机生成rgb值实现随机生成颜色的目的。
3、State获取当前的状态,不同的状态生成不同的随机数序列。
4、Rotation用来得到siyuan数的。
5、InsideUnitCircle在指定大小的圆内的随机位置生成。
在void start()语句上面添加语句
Public Transform cube;
在void start()语句上面添加语句随机生成一次。
Cube.position=Random.insideUnitCircle*5;
6、insideUnSphere在指定大小的球内的随机位置生成。