C#同一帧调用生成不相同随机数的代码
时间: 2023-07-29 13:14:41 浏览: 150
可以使用System.Random类来生成随机数,但是如果在同一帧内多次调用该类的实例,则可能会生成相同的随机数。要避免这种情况,可以将随机数生成器的种子设置为一个不同的值。
以下是一个示例代码,演示如何在同一帧内生成不同的随机数:
```csharp
public class RandomExample : MonoBehaviour
{
private int seed;
private System.Random random;
private void Start()
{
// 设置种子为当前时间的毫秒数
seed = System.DateTime.Now.Millisecond;
random = new System.Random(seed);
}
private void Update()
{
// 每帧生成一个不同的随机数
int randomNumber = random.Next(0, 100);
Debug.Log("Random Number: " + randomNumber);
}
}
```
在此示例中,每帧都会生成一个不同的随机数,因为种子是基于当前时间的毫秒数设置的。如果需要在同一帧内生成多个不同的随机数,可以使用不同的随机数生成器实例,并将它们的种子设置为不同的值。
阅读全文