ビジュアル情報処理 ch4 アニメーション (2/2)

CG検定勉強メモ資格勉強

出典: 

4-3 手続き型アニメーション

手作業では表現しきれない複雑な形状や動きを自動生成

4-3-1 進化・成長のアニメーション

  • 植物の成長をモデル化
  • Lシステム

    • A.Lindenmayer提案

4-3-2 自然現象のアニメーション

  • 煙、炎、爆発等、建物の崩壊や災害シーンは本物を使いづらい

    • 費用面
    • 安全面
  • ので、シミュレーションで生成されることも多くなってきた
  • 流体や火花: パーティクル
  • ガス状の流体: ナビエ・ストークス方程式の近似解

4-3-3 パーティクルとその応用

  • 表面が明確に定義できないような物体をパーティクルシステムで表現

    • 紙吹雪
    • 建物の爆発
    • 鳥や魚の群れ
    • 雨、噴水、滝、スプリンクラー等
  • 【補】RPGツクール5でやった

4-3-4 AIを利用したアニメーション

  • ライオンから逃げるシマウマの群れなど
  • 世界をモデル化し、キャラクタに動的に経路探索させる

4-4 キャラクタのアニメーション

4-4-1 フォワードキネマティクス

  • 肩が何度で、肘が何度で、…と、角度を直接指定する方法
  • 根本側を回転させると末端側すべてが追随するため結果が予測しにくい

4-4-2 インバースキネマティクス

  • もともとロボットアーム等の制御目的の分野
  • 指先の位置を指定して肩、肘、各関節の角度を自動的に求める
  • リグ

    • モデルを操作しやすくするしくみ
    • 【補】facerigの”rig”がこれ

4-4-3 パスアニメーション

  • ユースケースレイ: ジェットコースターのアニメーション
  • 指定したパスに沿って位置や向きを自動的に算出でき、効率的

4-4-4 モーションキャプチャデータによるアニメーション

  • 演者の実際の動きを測定し、そのデータを収集する
  • モーションリターゲッティング

    • 足が埋まったり浮いたりしがちなので拘束条件を与える
  • モーションブレンド

    • 複数のモーションキャプチャのデータを滑らかに補完して一連の自然なアニメーションを表現する

4-4-5 筋肉変形アニメーション

  • 解剖学に基づいて人体をモデル化

    • 筋肉
    • 皮下脂肪
    • 皮膚
  • 肉体には自由形状変形(FFD)の格子を与えておく
  • 骨の動きに合わせて格子の正義良点を移動させる

4-4-6 表情のアニメーション

  • リップシンク

    • 音声情報に基づいてCGキャラクタの口のモーションデータを生成する
    • 【補】昔所属していた会社の製品
  • 表情筋のモデリング

    • 3層のバネ質点系モデルで近似し、運動方程式を解く
  • 表情の与え方

    • あらかじめ用意した表情別の特徴点分布を用いてモーフィング技術で表現
    • 表情のモーションキャプチャ

4-4-7 布地のアニメーション

  • 運動方程式を解く

    • バネ質点系モデル
    • 曲げにくさ = 布の硬さパラメータを与える

4-4-8 髪の毛のアニメーション

  • 技術的に難しい

    • 1本1本は単純。テーパのついた円柱状の容易に変形する物体
    • しかし何万本と集まると液体のような複雑な振る舞いをするようになる
  • いろいろ提案されている

    • 剛体セグメントとして近似し、チェーン状に結合
    • 布のテクスチャを貼り付けた仮想の帯状のオブジェクト + 布の変形アニメーション
    • 髪の房ごとに動きを生成

4-4-9 群集(フロック)アニメーション

  • 大人数のエキストラを動員するのは困難

    • 費用面
    • 撮影場所
  • CGで表現する機会がふえた
  • AI

4-5 物理ベースアニメーション

4-5-1 剛体の物理シミュレーション

  • 並進 + 回転 という新たな自由度
  • 運動方程式だけでなくエネルギー保存も考慮

    • 【補】運動量保存も

4-5-2 弾性体の物理シミュレーション

  • ユースケース例: ゴム、布など
  • バネ質点系モデルが汎用的に用いられる

4-5-3 衝突判定

  • 比較的単純な形状が用いられる
  • よく使われるもの

      • もっとも単純
      • 球どうしは中心座標間の距離だけで衝突判定できる
    • AABB: Axis-Aligned Bounding Box

      • 稜線が座標軸に平行な直方体
      • 非常に効率的に衝突判定を行える
    • 凸包

      • 【補】ベジエ曲線、Bスプライン曲線のときに出てきたやつ
  • 複雑形状は単純形状の組み合わせ
  • 移動体の場合、さらにスイープを考慮する

    • 時間が量子化されることによる「すり抜け」の防止

4-6 リアルタイムアニメーション

4-6-1 リアルタイムアニメーション

  • タブルバッファ方式の話とか

    • ティアリング防止
  • 【補】トリプルバッファ方式

    • ダブルバッファ方式におけるロック待ち問題の解消
  • なめらかさ命

    • LOD等様々な手法が提案されている
  • リアルタイムアニメーションのユースケース

    • テレビ番組内のバーチャルセット
    • Web3D
  • プログラマブルシェーダ

    • ハードウェアの一部機能をソフトウェアでコントロールできる

      • HLSL、GLSL等

4-6-2 ゲーム物理

  • ゲームエンジンに積まれている物理シミュレーション等を使ったりする

    • Unity
    • CryENGINE
    • Unreal Engine
  • 物理エンジン単体の有名どころ

    • PhysX

4-6-3 実写映像との合成

  • 実写映像とCG映像とを自然に合成するために考慮が必要な条件

    • カメラパラメータ
    • 照明条件
    • 前後関係
    • 境界部分での自然さ

カメラパラメータ

  • マッチムーブ

    • 実写映像から推定したカメラパラメータを用いてCGの素材映像を実写映像と違和感なく合成
    • 例: 実写の道路の上に違和感なくCGの車を配置する
  • 参照長方形

    • 実世界で長方形であると思われる領域
    • 例: 道路脇のブロック、机等
    • 【補】消失点を求めたりするアレ
  • ストラクチャフロムモーション

    • 複数の画像間で複数の点を対応付けて三次元再構成する
    • 参照長方形のような手がかりがない場合にも使える
  • モーショントラッキング

    • 動いている被写体の自動検出・追跡

照明条件の整合

  • イメージベーストレンダリング/イメージベーストライティング

    • 実空間の照明状態を仮想空間内で実現
    • 仮想空間での照明条件をコンピュータ制御のLED光源で実世界に再現