三次元リアルタイムアニメーション 三次元リアルタイムアニメーション 技術の研究開発 技術の研究開発 神戸大学工学部 情報知能工学科 瀧和男 吉川和宏 松嶋祥文 正健太朗 背景 背景 ゲーム バーチャルリアリティ, インタラクティブムービー インターネット テキスト テキスト テキスト テキスト 静止画 静止画 動画 動画 マンマシンインタフェースとしての動画の需要 コンテンツ不足 効率のよい 3D リアルタイムアニメーションシステム A T (Actors ・ Theatre) A T とは とは アニメーション制作時のコスト軽減とリアルタイム合成を 目的として設計された CG システム Actor モデルによる仮想世界の表現 シナリオ(Goal) 駆動型の意思決定エンジン 行動シミュレーションによる動作決定 リアルタイム 3D 出力 Actor Actor モデルに基づく仮想世界の表現 モデルに基づく仮想世界の表現 Actor モデル アニメーション仮想世界 Object Object メッセージ交換 Object Object 視覚,聴覚 内部状態 行動 メソッド Actor Actor Object Object 登場人物や物を 登場人物や物を「Actor 「Actor Object」 Object」 として表現 として表現 シナリオ シナリオ (Goal) (Goal) 駆動型の意思決定方式 駆動型の意思決定方式 How to resolve? 情報交換 Goal Local Rule 行動 行動 Actor Actor Obj Obj Actor Actor Obj Obj シナリオ 指示 (Goal) 指示 (Goal) Director Director Obj Obj シナリオを管理する シナリオを管理する Object Object 行動シミュレーション 行動シミュレーション 認識 他のキャラクタ 判断 認識 行動 状況更新 認識 障害物 リアルタイム リアルタイム 3D 3D 出力 出力 アニメーションの生成/表示を実時間で処理 Animation Data A T Graphics Image Graphics Hardware interaction 仮想世界内のストーリーがダイナミックに変化 User Actor Actor Object Object の動作手順 の動作手順 ゴールを受け取る ルール参照 行動列の生成 動作の 適用/合成 Tactics Layer Action Layer 時系列データの 同期/出力 Display Layer A T (mosaic) (mosaic) のスケジューリング のスケジューリング PE PE Scheduler message queue Actor Actor のメソッドは同一 のメソッドは同一 PE PE 内では逐次 内では逐次 に実行される に実行される (( 同期的に実行 同期的に実行 )) 異なる 異なる PE PE 間では非同期に実行 間では非同期に実行 緩い同期 緩い同期 Actor Actor アニメーションにおける ( 時刻 ) 同期 厳密な同期をとらなくても良い場合が多く存在 ストーリ上重要な同期はシナリオ上に制御文として記述される 太郎と花子が C 点で出会う taro.wait:while(hanako=point(C)) point C シナリオに記述されていない場合の同期 同一 PE 内に Actor Object をおく 頻繁にメッセージ交換を行い同期をとる 改良案を検討中 ストーリー管理方式 ストーリー管理方式 シナリオ シナリオ A の Goal B の Goal ストーリーを形成するための 各 Actor Obj の目標 (Goal) の集合 Director Object Director Object シナリオを一元管理 Goal : : Goal 適切なタイミングで Actor Obj に Goal を与える Actor Obj A Actor Obj B Actor Actor Object Object の相互干渉 の相互干渉 オブジェクト同士のメッセージ通信により実現 例1 ActorA どこにいますか? 位置情報の類の交換 ここにいます 例2 作用の伝達 ActorA ActorB あなたを蹴りました ActorB では飛びます Actor Actor Object Object の動作決定 の動作決定 Goal 1. Director Object から Goal を受け取る ルール 2. 動作決定のためのルール参照 Actor Object 3. 状況に見合った行動列を生成 自身の状態 周囲の環境 他オブジェクトの状態 行動列生成 Actor Actor Object Object の動作決定の詳細 の動作決定の詳細 (1) (1) 現状 現状 G Gooaall 名 名 条件 条件 動作 動作 A A 選択 選択 動作 動作 C C 動作 動作 D D 動作 動作 B B 同時に 同時に パラメータ パラメータ 決定 決定 動作 動作 E E 動作決定ルール木 動作決定ルール木 キュー キューhead head 動作 動作 A A 動作 動作 D D Actor Actor Object Object の動作決定の詳細 の動作決定の詳細 (2) (2) head head 動作 動作 A A キューの先頭 を参照 描画処理 動作 動作 B B 動作 動作 C C 動作 継続 or 終了の判定 キュー キュー 今後 今後 ・・ プロダクションシステムの導入 プロダクションシステムの導入 ・・ 群制御のための仕組みを検討 群制御のための仕組みを検討 動作の合成 動作の合成 データベース 行動列 走る 走る 止まる ける 適用/合成 合成 ける 時系列アニメーションデータ 動作データ生成における問題点 動作データ生成における問題点 同じ動作であっても 同じ動作であっても 形状が違うキャラクタには 形状が違うキャラクタには 別の動作データが必要 別の動作データが必要 手が長いキャラクタ 手が長いキャラクタ 足が長いキャラクタ 足が長いキャラクタ パラメトリックな動作データ パラメトリックな動作データ 形状パラメータにより違う形状の 形状パラメータにより違う形状の キャラクタに適用 キャラクタに適用 手が長い 手が長い 足が長い 足が長い 「人型」 「人型」テンプレート テンプレート アニメーションに登場する キャラクタに併せて初期化 時に生成 動作連結グラフ 動作連結グラフ 立っている 立っている 動作データベース 動作データベース 歩いている 歩いている 開始状態 開始状態 終了状態 終了状態 蹴っている 蹴っている 走っている 走っている 各動作がどのように連結 できるかを初期化時に求 めておく 連結と補間 連結と補間 蹴り足をおろす 走るのをやめる 現在の状態 現在の状態 ける 補間する動作 補間する動作 蹴り足を 蹴り足を おろす おろす 連結したい動作 連結したい動作 ける 走るのを 走るのを やめる やめる 改良点 改良点 現状では 現状では 出来上がる動作連結グラフを 出来上がる動作連結グラフを 意識して動作データを作成 意識して動作データを作成 (補間) 走り出す 蹴り足をおろす 蹴り足をおろす 走るのをやめる 走るのをやめる この問題点を解決するには この問題点を解決するには 自動的に補間動作データを生成で 自動的に補間動作データを生成で きる機能が必要 きる機能が必要 ける ける リアルタイム出力 リアルタイム出力 アニメーション出力 motion data 出力 running running motion data 1/20∼1/30 sec で 常時データを転送 ActorObject 一度に 1∼1/3 sec 分の データを生成 A T(mosaic) のスケジュールアルゴリズムでは細かな 出力制御は困難 時系列データの出力 時系列データの出力 Actor Obj A Sync animation data PE1 Actor Obj B Sync animation data PE2 Shared memory Graphics Kernel output Image 開発環境 開発環境 動作マシン SGI 社製 PowerOnyx (R10000x12 (R 000x12 + InfiniteReality ) 使用言語 mosaic (Actor モデル型オブジェクト指向言語)+ C 言語 使用アプリケーション Alias|Wavefront 社製 Explore( おもに 3D model 制作 ) MediaLab 社製 CLOVIS( Graphics Kernel ) 現状 現状 A T '96 ( Rapid prototype version ) の試験実装 単純な Story を制作 問題点/性能評価 処理能力 表現力 ユーザインタフェース システム構成 今後の展開 今後の展開 A T システム全体の Blush-up( '96 から '97 へ) より高度な(なめらかな)モーションメイク 知識処理の高度化/学習機能の導入 外部ユーザインタフェースによるインタラクティブ性 音声インタフェースによる表現の向上 etc.... 今年 今年 (( 97年度) 97年度)の展開 の展開 A T '97 のための目標 システム記述手法の見直し(効率のよい並列技術の導入) 知識処理としてプロダクションシステムの導入 群れ制御による集団の制御 アニメーションデータのパラメタライズ手法 アニメーションデータの補間技術
© Copyright 2024 ExpyDoc