我正在开发Perlin噪声发生器,它基于种子整数和其他两个整数:x和y。种子伪随机数发生器
截至目前,伪随机数生成器看起来像这样:
private float noise(int x, int y) {
int n = x + y * seed;
return (1.0f - ((n * (n * n * 15731 + 789221) + 1376312589) & 0x7fffffff)/1073741824f);
}
但也存在一些问题,这样实现:首先,返回的时间间隔不是恒定的(理想情况下,我想使用[-1,1]或[0,1])和负x和y值,图案变得块状,看起来没有机构。 有没有办法改变我的公式(或者可能是全新的),这会使它适合我的需求?
请提供一些关于您想要实现的更多信息。 – Frank 2013-03-12 09:11:59
我需要一个伪随机数生成器,它基于3个种子(实际的种子,x和y,它们都是整数)工作,生成从-1到1的浮点数,当负数输入给出时也可以使用。 – Thiago 2013-03-12 15:43:30
是这个JAVA?看起来像它。 – Frank 2013-03-12 15:45:40