UDN
Search public documentation:

AnimationCompressionJP
English Translation
中国翻译
한국어

Interested in the Unreal Engine?
Visit the Unreal Technology site.

Looking for jobs and company info?
Check out the Epic games site.

Questions about support via UDN?
Contact the UDN Staff

アニメーション圧縮

ドキュメントの概要 :「Unreal Engine 3」におけるアニメーション圧縮システムの概説。

ドキュメント変更ログ: 2010年10月19日 更新者 Jeff Wilson

概要

「Unreal Engine 3」ではアニメーション圧縮を利用することによって、骨格アニメーション データがインゲームで使用される場合に占めるメモリ量を削減しています。これには、以下のように複数の方法があります。

  • キーを削除する - アニメーションの多くには、キーを削除しても大勢に影響なくなめらかに変化するモーションが含まれています。アニメーション オーサリング パッケージからモーションがエクスポートされるとき、モーションが比較的滑らかで変化がない場合でも、アニメーションが高い比率 (例: 毎秒 30 キー) でサンプリングされることが多いのです。
  • 個々のキーのサイズを縮小する - 生のアニメーション キーは、ボーン毎に回転および平行移動として保存されています。この回転および平行移動は浮動小数点数として表現されています。これらの浮動小数点数がとる値の範囲によっては、精度を大きく犠牲にすることなく、各浮動小数点数によって消費されるメモリ量を削減することができます。
  • 高度なテクニック (曲線適合) - モーションは、直接サンプリングされたキーとして保存するかわりに、関数として保存して、再生中にサンプリングすることができます。圧縮が「起きる」のは、関数による内的描写がキーの直接的な保存よりもメモリーの消費が少ない場合です。曲線適合で鍵となるのは、次のような関数を発見することです。 1) 入力されたモーションを良く近似する関数、2) 実行時に効率的にサンプリングできる関数。 注意: 「Unreal Engine 3」では、曲線適合は現時点では実行されていません。

前のバージョンのエンジンに比べて「Unreal Engine 3」のアニメーション圧縮が改善された点は、 圧縮アニメーションが生の (圧縮されていない) アニメーション データを破壊しない という点です。生のデータが圧縮データとともに保存されるため、アーティストは、アニメーションデータを再インポートすることなく、様々な圧縮スキームとパラメータを素早く試すことが可能になりました。

アニメーションがエンジンに初めてインポートされたときは、アニメーションが圧縮されていません。これによって、アニメーションをオーサリングするアーティストが、モーションをエンジンに取り込んで出来映えをチェックすることを繰り返せるようになります。その際、圧縮によってもたらされる可能性があるアーティファクトを気にかける必要はありません。

アニメーション シーケンスが圧縮される度に、圧縮の設定値がシーケンスとともに保存されるため、アニメーションを大量に再圧縮することが容易になります。これは、新たな圧縮アルゴリズムがオンラインで得られた場合などに便利です。一定のアニメーション編集作業が行われた場合 (たとえば、アニメーションが再インポートされた場合やトラックがアニメーション セットから削除された場合など)、アニメーションは自動的に再圧縮されます。

アニメーション圧縮のトピック

コンテンツのトピック
      - アニメーション圧縮アルゴリズム - 「Unreal Engine 3」で提供されているアニメーション圧縮アルゴリズムの概要です。
      - AnimSet エディタ内のアニメーション圧縮ダイアログ - AnimSet エディタ内にあるアニメーション圧縮ダイアログの概要です。