第 4 章 視野判断モデル
4.4 アニメーションの作成
生成された身体運動を観察するためにアニメーションの作成を行った.眼球・
筋骨格モデルを構築している C 言語上でもアニメーションを作成することはで きるが,視野判断モデルはFig. 4.9のような運転者視点や後方視点といった様々 な方向から身体運動を見ることができ,仮想自動車操縦空間にはインストルメ ントパネルとシートが設置されているため,こちらの方がアニメーションとし ての完成度が高いと考えた.
次に作成したオブジェクトをアニメートする手順について説明する.一般的 に何かがアニメートされるとき,それは時間に応じて変化させるということで あり,オブジェクトをアニメートするということは,ある時間の範囲にわたって 位置や姿勢情報を変化させるということである.Blender における時間の単位 はフレームと呼ばれるもので,1 フレームの時間的長さはフレームレート(1 秒 間に処理されるフレーム数)によって決まる.アニメーションは複数のフレーム にわたる少しずつの変化によってつくられるものなので,1フレーム毎に体表面 形状モデルの各リンクの姿勢情報を定義すれば 1 フレーム毎にポーズを変化さ せることができ,アニメートすることができる.
動力学的計算方法の筋骨格モデルを用いている場合,視野判断モデルには眼 球・筋骨格モデルで生成された姿勢情報が時々刻々と出力されてくるが,前述し たように動力学的計算方法のモデルは身体内部モデルで仮想的に身体を動かし,
身体負荷最小かつ視認率が最大となるような姿勢を探索しているため,姿勢情 報には摂動データと挙動データの二種類がある.よって,摂動のデータが出力さ れた場合の処理は,姿勢情報を体表面形状モデルに反映して視認率を算出する のみである.一方,挙動データが出力された場合はそれに加えて,現在の各リン クの姿勢,カメラの姿勢と座標を現在のフレームに挿入し,フレームを 1 つ進 める処理を行う.このように挙動データの姿勢を次々とフレームに挿入するこ とによって,最終的にアニメーションを作成することができる.以上の流れを Fig. 4.10に示す.
一方,準静的計算方法の筋骨格モデルを用いている場合は,姿勢が時々刻々と は送られてこないため,初期姿勢と最終的な姿勢のみを用いてアニメーション を作成する.この2つの姿勢の補間はソフトが自動で行われる.
57
(a) 後方視点
(b) 運転者視点
Fig. 4.9. アニメーションで用いるカメラ
58
Fig. 4.10. アニメーション作成のフローチャート
59