1

次の式を使用して、Unity のスプラインに沿った位置を取得しています。

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;
}

四元数が 4 つある場合、各点での回転を見つける方法はありますか?

4

1 に答える 1

0

直接行うことはできませんが、四元数に対応するようにスプライン コードを拡張できます。便利なコードはありませんが、出発点として使用できるOgre3D SDKを紹介できます。

スプラインでは、制御点と接線を使用して中間点を生成します。クォータニオンでは、方向の変化率を見つけるために導関数を取得し、それを使用して中間点を作成する必要があります。

オーガコードを見てください。ヘッダーには詳細が記載されています。実装用の .cpp をダウンロードできます。

于 2012-08-14T21:07:55.853 に答える