Answers:
如何从种子生成随机X? 种子值是随机数生成器的初始状态。在大多数编程语言中,您可以设置此种子。例如,C使用srand()
。如果您没有指定特定的种子作为开始,通常将时间戳值用作种子。这样,每次运行时,随机数都是不同的。
// C example
srand(1);
for(i=0; i<3; i++)
printf("%d\n", rand());
srand(1);
for(i=0; i<3; i++)
printf("%d\n", rand());
1270216262
1085377743
1481765933
1270216262
1085377743
1481765933
如您所见,每当您使用特定值进行种子(我使用1作为种子)时,所得随机数都是相同的。
您如何基于随机数创建“我的世界”生活世界? Notch对此发表了一篇文章。 另外,您可以查看其他人关于“类似于minecraft的世界”的教程。我喜欢这一点,例如:在OpenGL 4中类似于Minecraft的渲染。基本思想是使用Perlin噪声(或单纯形噪声)。这是一个有关噪声函数的好问题:了解Perlin噪声