2012-08-14 73 views
1

我用下面的公式來獲得在Unity沿着花鍵的位置:有沒有辦法使用CatmullRom插值quotelions?

public Vector3 CatmullRom(float t, Vector3 a, Vector3 b, Vector3 c, Vector3 d) 
{ 
    return (
     (b * 2.0f) + 
     (-a + c) * t + 
     (a * 2.0f - b * 5.0f + c * 4.0f - d) * t * t + 
     (-a + b * 3.0f - c * 3.0f + d) * t * t * t 
     ) * 0.5f; 
} 

授予了四種四元數,有沒有辦法找到在每個點旋轉?

回答

1

您不能直接做,但可以擴展樣條線代碼以適應四元數。我沒有任何代碼方便,但我可以指出你可以用作起點的Ogre3D SDK

使用樣條線控制點和切線來生成中間點。使用四元數時,您需要使用導數來找出方向的變化率,然後使用它來創建中間點。

看看食人魔代碼。頭文件提供了一些細節,您可以下載實現的.cpp文件。