今天,我试图在使用噪声的处理中生成伪随机角度,但它没有按我希望的那样工作。

float xoff = 0;
float inc = 0.01;

void draw(){
 float vx = cos( noise(xoff) * 2 * PI));
 xoff += inc;
}


这是我的代码的重要部分。我以为会发生的是vx会是介于-1和1之间的随机浮点数,但几乎总是负数。问题似乎出在,noise(xoff)输出的数值范围有限。仅介于0.3和0.7之间。为了使vx为正,它必须小于0.3且大于0.7,但这几乎永远不会发生。

这是怎么了?

最佳答案

您可以调整noiseDetail()以包含大于4个octaves或使用小于0.5的falloff

07-24 14:40