您好,我正在尝试想象一个 Aizawa 吸引子,它一开始似乎有效,但随后稳定在零/停止移动。我在网上查看了几个实现,我的似乎是一样的,但我不知道为什么它停止移动。
这是接受一个点并返回新点的代码:
public class Aizawa
{
private const float a = 0.95f;
private const float b = 0.7f;
private const float c = 0.6f;
private const float d = 3.5f;
private const float e = 0.25f;
private const float f = 0.1f;
public static void Iterate(float x, float y, float z, out float dX, out float dY, out float dZ)
{
dX = ((z - b) * x - d * y);
dY = (d * x + (z - b) * y);
dZ = (c + a * z - ((z * z * z) / 3f) - (x * x + y * y) * (1f + e * z) + f * z * x * x * x);
}
}
在此之后,我将点设置如下:
_xPos += dX * time;
_yPos += dY * time;
_zPos += dZ * time;
我正在使用统一来可视化它,这是迄今为止的结果: screenshot
我不知道从这里去哪里!任何帮助,将不胜感激
干杯