人体モデルのアニメーションデモ POSE.J3D 解説

5/16/99
Copyright (c) Jun Mizutani 1997-1999

人体アニメーションの作成と再生を行うアプリケーションです.

フレームと呼ぶ「人体の姿勢」を複数作成して,それらの姿勢を滑らかに 補間しながら再生する機能を持っています.

すべての操作は1文字のキー入力で行います.

【 関節の操作 】

表示されている人体モデルの各関節を回転させて任意の姿勢(フレーム) を作成することができます.

操作中の関節は3次元の3本の線分から表示される「3Dカーソル」の 原点部分(交差した部分)で示されます. 矢印キーと[K],[L]キーでその関節を回転させることができます. 人体の姿勢は各関節の角度で決まります.通常の関節の他に1つだけ見え ない関節が存在し,これは「重心位置」にあり,全身の角度を決定します. 世界座標系(地面)に対する人体の位置は「重心」が,地面に対する人体 の角度は「重心」と腰部の間の関節(「腰」と呼びます)が決定します.

起動時には「3Dカーソル」は「腰」に位置しています.[X]と[C]キーで 「3Dカーソル」の対象となる関節は次々と移動します. 関節を何度も回転させた後,どちらを向いているのか混乱したような場合に は,[HOME]キーを押して下さい.すべて回転していない状態に戻ります. 隣り合うフレーム間で180度以上の回転を行うと近道となる逆方向に回転し てしまいます.

[LEFT] 左回転 [RIGHT] 右回転
[UP] 下向き回転 [DOWN] 上向き回転
[L] 反時計回り [K] 時計回り
[X] 前の関節 [C] 次の関節
[Home] 関節の角度をすべて0に設定

【 全身の操作 】

人体の位置は「重心」(実際は腰部分の下側)の位置で決まり,空間内で 移動することができます.移動の向きはワールド座標系です.体の向きと は無関係なので注意してください.

[V] 全身の前進 [B] 全身の後退
[G] 全身の左移動 [H] 全身の右移動
[Y] 全身の上移動 [U] 全身の下移動
[END] 初期位置に戻す

【 カメラの操作 】

画面上に表示されている人体モデルは,人体の周囲を回り,常に人体の方向を 向いたカメラから見た状態を表示しています.カメラは以下に示すキーで操作 できます.[D]はカメラを前進させて人体を大きく表示し,[F]はカメラを後退 させて小さく表示します.

[W] [Z]
[A] [S]
[D] 前進 [F] 後退
[Q] 反時計回り [E] 時計回り
[I] 初期位置に戻す

【 フレーム操作 】

あるポーズを記録したものを「フレーム」と呼びます.関節を回転してポー ズを作成したら[ENTER]キーを押します.画面右上には,

現在のフレーム番号/全体のフレーム数

が表示されており,現在のフレーム番号に記録されます.[R]と[T]キーで 現在のフレーム番号を変更できます.現在のフレーム番号を変更した場合 表示されているポーズは変化しません.[SPACE] キーでフレームに記録さ れているポーズを画面上に取得することができます.また[N]キーを使用す ると,現在のフレーム番号に記録されているポーズを左右反転させて画面 上に取得することができます.このことを利用してあるフレームのコピー を別のフレームに設定したり,対称形のポーズを別のフレームに設定した りすることができます.[Insert]キーは現在のフレームの直後にフレーム を挿入し,[Delete]キーは現在のフレームを削除します. フレーム数の最大値は241フレームです.241フレームを超えて挿入できま せん.

画面に表示されているポーズは [ENTER] で設定しない限り記録されない ことに注意してください.

画面右上の Time は一つ前のフレームから現在のフレームのポーズに変化 するのに要する時間をミリ秒単位で設定します.デフォルトは1000で1秒 です.この時間を変化させるのは,[PgUp] と [PgDown] キーです.

[J]キーで一つ前のフレームから現在のフレームまでのアニメーションを 表示できます.3Dカーソルは消えません. [P] と [M] キーですべてのフレームを最初から再生します.再生中は3D カーソル消えます.再生の中断は[BackSpace]キーを押すと押した時点の ポーズで停止します. [M] キーによる再生では最後のフレームから最初のフレームに戻りますが, ここでは動きは補間されません.最後のフレームには最初のフレームと同 じフレームを書込んでおくとスムーズに繰り返すことができます.

再生中でもカメラは自由に移動することができます.

すべてのフレームは[O]キー(オー)でファイルに記録できます. 記録するファイル名は FRAME_1.DAT 固定です.常に上書きされるため注意 してください.FRAME_1.DATの名前を例えば,FRAME_2.DAT に変更すること によって,[2]キーで読み込める読み出し専用ファイルとすることができま す.この読み出し専用ファイル名は FRAME_0.DAT と FRAME_2.DATから FRAME_9.DATが使用できます.対応する数字キーで読むことができます.

[R] フレーム前 [T] フレーム次
[PgUp] 時間延長 [PgDown] 時間短縮
[ENTER] ポーズ設定 [SPACE] ポーズ取得
[N] ポーズ反転取得
[INS] ポーズ挿入 [DEL] ポーズ削除
[P] 再生 [J] 1フレーム再生
[BS] 再生の中断 [M] 連続再生
[1]-[9],[0] FRAME_0-9.DATからファイル読込
[O] FRAME_1.DAT へのファイル書込

【プログラムの終了】

[ESC] 終了

【サンプルデータ】

FRAME_3.DATは人間が走るデータですが,基本的に1枚のフレームを作成し ただけです.

  1. フレーム1を作成 [ENTER] キーで記録
  2. [N] キーで反転したフレームを取得
  3. [Insert] キーでフレーム2を追加
  4. [ENTER] キーでフレーム2に記録
  5. [M] キーで再生して,[BS] キーで中間状態を取得
  6. フレーム1に移動して,[Insert] キーでフレームを追加
  7. 挿入したフレーム2を修正して [ENTER] キーでフレーム2に記録
  8. 反転してフレーム4に記録
  9. フレーム1をフレーム5をにコピー
  10. 時間を調整
以上のデータを [3] キーで読み込んで,[M] キーで連続再生する事で走る 人間のアニメーションを簡単に作成する事ができます.

FRAME_2.DATぐらいになると少し大変ですが...モーションキャプチャー の機材を用意する事に比べれば,はるかに簡単でしょう...たぶん?

【カスタマイズ】

人体の色と形状は BODY_DEF.J3I で定義されています.根性のある方は 人体モデルをカスタマイズすることもできます.

【注】

J3W 5.10で使用した場合 ビデオカードによりデバイスを HALとした場合と RGB Emulation とした場合で表示が異なる場合があります.


[HOME] [INDEX]
ご意見・ご感想は,水谷 純 <mizutani.jun@nifty.ne.jp>まで.