Maya LT での時間の計算方法

Maya LT でアニメートする場合、キーのタイミングを追跡する必要があります。フレームを秒単位で保存するのは明らかなように見えますが、Maya は各フレームの時間値を「ティック」という 64 ビットの整数表現に内部で変換しています。

ティック

ティックは Maya LT における時間の最小の増分単位であり、それぞれが 1 秒の 1/141,120,000 を表します。つまり、Maya LT は 1 秒間に 141,120,000 ティックをカウントするので、フレーム レートが 24 フレーム/秒(fps)の場合、フレーム当たりのティックは 5,880,000 (tpf)になります。

Maya LT で使用される 1 秒間のティック数は常に同じ値ですが、フレーム当たりのティック数は選択した再生速度に応じて変化します。選択された再生速度に対して Maya LT が使用するフレームあたりのティック数を計算するには、tps (141,120,000)を、使用している再生速度で除算します。

たとえば、15 fps の場合は 9,408,000 tpf (141,120,000/15)になります。

29.97 fps のような整数以外の(丸められた)フレーム時間値にこの式を使用すると、結果として整数(5 など)が得られないことがあります。Maya LT では小数のフレーム(25.55 など)にキーを設定できないため、Maya LT でティック値を近似する必要がある場合は、時間にアスタリスク * を付けて表示します。

ただし、Maya LT のティックは非常に小さい(1 秒の 1/141,120,000 である)ため、小数のフレーム レート(24.976 や 29.97 fps など)を使用している場合でも、精度は極めて高くなります。

時間の精度およびバイナリ ファイルの形式

最大限の時間精度を確保するには、シーンを Maya LT ASCII (.ma)ファイルとして保存することをお勧めします。これは、2017 より前のバージョンの Maya LT は 32 ビットのティック値を使用していましたが、6000 tps しか用意されていなかったためです。これらのバージョンとの互換性を維持するために、 Maya LT のバイナリ ファイル(*.mb) 内の時刻値は、引き続きティック期間が 1 秒の 1/6000 である 32 ビット ティックを使用して保存されます。

つまり、フレーム上に正確に設定されていないキーをバイナリ ファイルに保存する場合は、キーが若干移動されることがあります。通常、この移動がアニメーションに与える影響は無視できます。たとえば、24fps の場合、フレームは 0.004 フレームの単位まで正確です。Maya LT ASCII (.ma)ファイルを使用している場合は、キーの時刻がフレームとしてこれらのファイルに保存されるため、このようにはなりません。

注: 23.976 や 29.97fps のような、以前のバージョンの Maya LT と互換性がない、新しい、整数以外の(または丸められた)フレームレートの場合は、フレーム値を正確に表示するためにティック値が若干変更されます。 この場合、ティック期間は 1001/6000000s です。この変更は、以前の Maya LT 2017 バージョンと下位互換性を維持するための一時的なものです。

タイムラインの境界

数値のオーバーフローやアンダーフローの問題を回避するため、ティックは強制的に 64 ビット整数(符号付き)の範囲内に収まるように調整されます。理論的には、Maya LT のタイムラインは -2000 ~ 2000 年のキーが設定されたアニメーションを処理できます。 ただし、Maya LT では 32 ビットの時間値を含むバイナリ ファイルとして保存されるため、アニメーションを +/-50 時間に制限することをお勧めします。