視点(カメラ)

カメラ(視点)の制御 #

視点(カメラ)を変更することでCGエージェントを含むシーン全体の向き・距離を変更できます。一連のカメラの動きをモーションで設定することでカメラ演出を行うことも可能です。

カメラは キーやマウスでも操作できます。ここではカメラ視点の設定について以下の内容を説明します。

  • 位置とパラメータの変更・設定
  • 変化速度設定
  • 自動追従・ボーンマウント
  • カメラモーション再生

カメラを設定する #

CAMERA コマンドで視点のパラメータを指定できます。

  • x,y,z: カメラの位置座標
  • rx,ry,rz: カメラの回転量
  • distance: 画面中心からカメラまでの距離
  • fovy: 画角(単位:度)
CAMERA|x,y,z|rx,ry,rz|(distance)|(fovy)

d キーを押すと左下に出る2行目の数字が、現在のカメラのパラメータ値です。CAMERA メッセージに渡す形式と同じ形式で出力されているので、キーやマウスでカメラ位置を調整した後、表示されるこの値を使えばよいでしょう。

camera parameter on screen

移動速度の設定 #

CAMERA メッセージでカメラのパラメータを指示したとき、カメラは現在の状態から指示された位置まで1秒ほどかけて滑らかに移動します。このカメラの移動速度を変更したい場合は5番目の引数 transition time period を指定します。0 より大きい値を指定することで、その指定秒数だけかけて一定速度で移動します。以下の例では5秒間かけて指定した位置へ移動します。

CAMERA|x,y,z|rx,ry,rz|(distance)|(fovy)|5

0 を指定することで、カメラ遷移無しに即座に指定パラメータに切り替えることができます。

CAMERA|x,y,z|rx,ry,rz|(distance)|(fovy)|0

省略時のデフォルトは -1(=滑らか移動)です。

カメラをモデルに自動追従させる #

シーン内を歩き回るなどモデルが大きな動作を行う場合にモデルが画面外に出てしまうことがあります。この場合、カメラをモデルの動きに自動追従(左右のみ)させることで問題を緩和できます。

利用するには、CAMERA パラメータの第6引数として追従するモデルのエイリアス名を入れます。モデルを指定した時、カメラはまず与えられたパラメータに移動し、その後、モデルの左右の移動に合わせて自動追従を開始します。(正確にはモデルの「センター」ボーンに追従します)

CAMERA|x,y,z|rx,ry,rz|(distance)|(fovy)|1|(model alias)

この場合、第5引数の遷移時間(上記では 1 の部分)は、モデル移動に対するカメラの動作を指定します。0 にすると、モデルの移動に遅延なくぴったり追従します。正の値を与えることで、モデルの動きに対してある程度ルーズに遅れて追従します。用途に応じて調整してください。

カメラをボーンにマウントする #

モデルのエイリアス名に続いてボーン名を指定することで、特定のボーン上にカメラを載せて追従させることができます。原理は上記のモデル自動追従と同じです。

CAMERA|x,y,z|rx,ry,rz|(distance)|(fovy)|1|(model alias)|(bone name)

カメラモーションを使う #

カメラの動きをあらかじめ定義したカメラモーションファイル(.vmd)を指定することで、カメラワークを再現できます。カメラモーションは MMD ツールで作成できます。利用時は以下のようにカメラモーションファイル (.vmd) を与えます。

CAMERA|(camera motion file name)
comments powered by Disqus