古典的なアニメーションでは、物理法則に違反して、効果と表現力を高めています。 物理学の法則を自由に扱い、視聴者が慣れる独自の法則を作成することも重要なアニメーションツールです。 しかし、そのようなスタイルは視聴者に「カートゥーン」として認識されます。
そして、アニメーションがニュートンの法則を厳守し、これらの法則に矛盾しないアニメーション手法のみを使用するとどうなりますか? そのような物理的正確さ自体はリアリズムを与えることはありませんが、完全性の効果を与えることができます。 実際、この場合、キャラクターは厳密に物理法則に従って空間内を移動し、質量、慣性を持ち、すべての動きは力によって決定されます。
長い間、物理モデリングは受動構造のリアルなアニメーションに使用されてきました:固体の衝突、組織の動き、髪の毛など。 ファブリックのアニメーションを手動で行うのは不当に難しいと誰もが主張することはまずありません。 キャラクターの体のアニメーションに物理モデリングを適用することは論理的です。
しかし、受動的なデザインとは異なり、自分が体の一部を動かす力を生成するキャラクターの現実的な動きをどのように計算するのでしょうか? アニメーターは、この動きが物理法則と矛盾しないことをどのように保証しますか?
この問題を研究する際、3つの概念を区別することができました。その正しい取り扱いにより、ニュートンの法則への準拠が保証されます。
- 支点
- 重心
- 勢い
これらの概念に関連して特定の規則が守られている場合、複雑なオブジェクト(数百の自由度を持つ)でさえ、ニュートンの法則全体を守れば十分です。 もちろん、これは、動きの表現力、自然さ、およびその他の特性に対する懸念をアニメーターから取り除くものではありません。
空気抵抗はほとんどの動きで無視できるため、ルールは次のように定式化できます。
1)キャラクターに支点がない場合:
- キャラクターの動きに関係なく、 重心は弾道曲線(放物線)に沿って移動します。
- 衝動の瞬間は 、キャラクターがどのような動きをするかに関係なく一定に保たれます。 つまり、回転軸も回転量も、キャラクターがサポートポイントを持つまで変更できません。
2)サポートポイントがある場合:
- 重心の軌跡が変化するということは、支持体(たとえば、床)に対するキャラクターの影響の強さと等しく、反対方向に向かう力が重心に作用することを意味します。
- 角運動量の変化は、サポートポイントでの特定の力に対応します。これは、サポートの制限と矛盾しないはずです。 たとえば、床の圧力を下げることはできますが、上げることはできません。
これらのルールを順守することは、各運動にとって難しいタスクになります。 通常、実際にどのように行われるかを理解するには、運動を研究する必要があります。
しかし、解が見つかった場合でも、特別なツールが重心と角運動量を直接制御するように頼みます。これは動力学の逆問題であり、解の反復法が必要です。 Cascadeur'eの反復法とすべてのアルゴリズムを構築しました。
物理学およびほとんどのツールのモデル化に使用される主な反復法は、Verlet数値積分です。 この方法の主な特徴は、システムにいくつかの異なる制限を課し、すべての制限を満たすソリューションを繰り返し見つける能力です。 これについては、おそらく次のいずれかの投稿で詳しく説明します。
私たちのシステムのキャラクターは、質量を持つ頂点と頂点を接続する接続で構成されています。 フレームを編集する場合、キャラクターを使用した操作は、粘性のある環境で物理オブジェクトを使用したアクションに似ています。
このアプローチにより、Cascadeurで次の機能とツールを実装できました。
- 接続された頂点はシステム全体の一部であるため、接続された頂点の位置は変わりますが、任意の頂点を越えてキャラクターを移動できます。
- 頂点を固定することができ、隣接する頂点での操作はその位置に影響しません。
- 重心を移動できます-固定されていないすべての頂点が移動します。 固定されたピークがある場合、キャラクターのポーズが変わります。
- 重心を固定することができます-そして、任意の頂点の動きは、そのようなゆるい頂点の動きにつながり、 重心はその場所に残ります。
- 重心の場合、開始位置と終了位置に基づいて弾道軌道を自動的に構築できます。
- 勢いの瞬間は 「滑らかに」され、間隔内で変化しないようにすることができます。 これにより、各フレームのキャラクターの位置とポーズが変更されます。
- 勢いの瞬間は固定できます。 次に、頂点のシフトは、質量の中心に対するキャラクター全体のそのような回転につながり、角運動量は変化しません。
- 重心と角運動量の頂点で、モーションパスが統合され(座標の単純な配列によって定義されます)、さまざまなフィルターを適用できます。
- 各フレームで必要な筋肉の緊張を計算し、これらのストレスを筋肉の色のグラデーションで表示できます。 キャラクターの荷重分布を確認する機能は、動きの正確さを評価するのに役立ちます。
- 各支点で力ベクトルを計算して表示できます。 また、正しい動きを評価するのにも役立ちます。
このビデオでは、単純なジャンプの例の作業でこれらのツールがどのように使用されるかを見ることができます。
このアプローチの利点:
- アニメートされたキャラクターは、視聴者に質量を持つオブジェクトとして認識され、したがってよりリアルになります。 その結果、リアリズムを実現しやすくなります。
- 異なる人々によって作られたとしても(異なる品質であっても)、動きはより全体的であり、互いに互換性があります。
- このような動きは、モーションキャプチャを使用してキャプチャされた動きとより互換性があります。
- アニメーターの想像力は、モーションキャプチャを使用する場合ほど制限されません。 世界のスタントマンができないような動きをすることを妨げるものは何もありません。
私たちはこのアプローチを開発し、その機能を探求し、新しいツールを発明し、試しているところです。 私たちの研究結果について最新情報をお届けします。