【发布时间】:2011-12-06 11:59:57
【问题描述】:
我正在尝试生成无限的随机地形。每次给定相同的种子时,地形应该生成相同的。
我尝试使用 Java 的 Random 函数,使用地形网格上给定节点的 x 和 y 坐标的各种函数创建种子。如x*y+x+y+seed、20*x+30*y等
这种方法的问题是我总是在生成的数字中看到清晰的模式。
所以基本上我想要的是: f(x,y) = 随机数
如果上述函数可以包含某种种子,这将是有帮助的,使其成为: f(x,y,seed) = 随机数
我需要为每个 x,y 组合生成多个数字,但是一旦我拥有上述功能,就应该很容易推导出其他数字。这些将用于决定地形的高度,以及将出现哪些特征(建筑物、树木)。
请不要提及 Perlin Noise 或其他此类方法。我的问题不是让噪音看起来不错,而是得到可靠的“随机”噪音。
谢谢, 杰米。
【问题讨论】:
-
您在 java.util.Random 生成的数字中看到了清晰的模式?想详细说明这些模式是什么?
-
地形中有图案,水平和垂直都有重复。
-
您能否上传这些模式的示例以及生成它们的代码?我对它很感兴趣;这也是我的爱好之一。 (曾经是我在我曾经工作过的一家研究公司做的事情。)
标签: java function random 2d procedural