seed | 用于初始化随机数生成器的种子。 |
使用种子初始化随机数生成器状态。
随机数生成器并非真正随机,而是采用预设序列生成数字(对大多数用途而言,序列中的值表现为以看似随机的方式围绕范围“跳动”)。
序列开始生成一串特定伪随机值的点选自一个称为种子 值的整数。在使用随机数函数之前,种子通常是通过某个任意值(如系统时钟)进行设置的。这可防止在每次玩游戏时出现相同的一串值,从而避免可预测的游戏玩法。但是,有时通过自己设置种子,按照需要生成相同的一串伪随机值会十分有用。
例如在程序化地生成游戏关卡时,可以设置自己的种子。可以使用随机选择的元素使场景随意且自然地表现,但是在生成之前将种子设置为预设值。这可确保在每次玩游戏时生成相同的“随机”模式。这通常可以作为减少游戏存储要求的有效方式 - 可以程序化地生成所需数量的关卡,并且仅仅使用一个整数种子值存储每个关卡。
using UnityEngine;
using System.Collections;
public class ExampleClass : MonoBehaviour
{
private float[] noiseValues;
void Start()
{
Random.InitState(42);
noiseValues = new float[10];
for (int i = 0; i < noiseValues.Length; i++)
{
noiseValues[i] = Random.value;
Debug.Log(noiseValues[i]);
}
}
}