我实际上是想在Unity 5的C#脚本中获得Lissajous曲线。
这是从中左,135°曲线开始的第4次。我已经达到了45°曲线,但我无法在我的C#脚本中得到它的倒置变体因为这个“3π”我似乎无法用Mathf.PI重现。
我尝试过((Mathf.PI * 3)/ 4)和((Mathf.PI + Mathf.PI + Mathf.PI)/ 4),但它没有奏效。曲线不是我想要的曲线。
这是我已经实现的45°曲线的代码:
float xU = 0, yU = 0;
yU += yLissajousU * Mathf.Sin ((lissajousUSwaySpeed * 2) * Time.time);
xU += xLissajousU * Mathf.Sin (lissajousUSwaySpeed * Time.time + Mathf.PI / 4);
我确信这很简单,但我昨天就完成了45°曲线剧本,这是我第一次独自编码。
非常感谢任何帮助。
答案 0 :(得分:1)
我找到了解决方案!
float xA = 0, yA = 0;
yA += yLissajousA * Mathf.Sin ((lissajousASwaySpeed / 2) * Time.time);
xA += xLissajousA * Mathf.Sin (lissajousASwaySpeed * Time.time + ((Mathf.PI + Mathf.PI + Mathf.PI) / 4));
只需将yA SwaySpeed除以2而不是乘法。 Mathf.PI的添加似乎是正确的。
然而,x和y值被反转。我会尝试解决它们。