Unity3D C# 随机输入生成器
Unity3D C# Random Int Generator
我已经用了很长时间C++。现在,我刚刚开始在 Unity3D 中使用 C#。我几乎完成了一个应用程序,但我似乎在 Unity C# 中找到了一个有效的 int 生成器(带有最小值和最大值(。我尝试了以下方法:
r = Random.Range(min, max)
和
Random rand = new Random();
r = rand.next(min, max)
两者都没有用。我知道你在C++使用:
r = rand() % max + min;
如果你想要一个随机数。但是Unity C#是什么情况呢?法典:
编辑:
using UnityEngine;
using System.Collections;
public class STarget : MonoBehaviour {
public GameObject inter;
int rand;
public GameObject TS1;
public GameObject TS2;
public GameObject TS3;
public GameObject TS4;
public GameObject TS5;
void Update () {
rand = Random.Range(1, 6);
}
public void GameRun () {
switch (rand){
case 1:
inter = TS1;
break;
case 2:
inter = TS2;
break;
case 3:
inter = TS3;
break;
case 4:
inter = TS4;
break;
case 5:
inter = TS5;
break;
}
Game.TargetSingle(inter);
}
}
来自C++,就像r = rand() % max + min
会在 C++ 中给你 min
到 max
之间的随机数一样,在 C# 中是不同的。首先,使用 Random.Range(min, max)
在 Unity 中获取随机数。
真正要理解的是,Random.Range(min, max)
不会像C++那样真正从min
到max
之间随机给你。如果提供的min
和max
是整数,它将为您提供一个介于min
(max-1)
之间的随机数。
所以当你需要从 1
到 5
的随机数时,将 1
添加到 max(5( 中,否则你将只得到从 1
到 4
的数字。 Random.Range(2, 5+1)
或Random.Range(min, max+1)
.这可能是你的问题。
相关文章:
- 为什么随机数生成器不在void函数中随机化数字,而在main函数中随机化
- 如何从输入文件 c++ 创建随机名称生成器
- 遍历我的数据结构,并向其中输入随机值
- C++ 通过 range for 循环将整数输入到矢量中;随机 0
- 如何使用C 随机显示用户输入字符串
- c++ 根据随机生成的数组检查用户输入的值
- 根据用户输入生成随机字母
- PRNG程序故障.无法输入随机数量的选择,并且将始终从PRNG中回答2
- Unity3D C# 随机输入生成器
- 获取随机科学数字而不是输入
- 无论用户输入,我的数组都会接受随机值
- 在 c++ 中处理代码的命令行参数,用于随机输入和用户输入
- 在C++中实现随机预言机(输出在范围内是随机的,但对于相同的输入输出是相同的)
- 输入文件中的单词列表,然后选择一个随机单词
- 从用户输入的范围中为不同的类创建不同的随机x,y值
- 为什么我随机生成的数字输入都是零
- C++麦克风输入作为随机种子
- 仅由非常大的随机输入引起的基于出列前的pqueue堆中转储的分段故障核
- 如何告诉 advance() 在输入迭代器上使用 += 运算符(如果它们不是随机访问)
- 我如何生成一个随机的小写字符串的长度的用户输入的数字