2011年11月29日火曜日

Boujou メモ 03

02の続きです。

07)Scene Geometry
座標のアイコンです。
どこがワールドの原点で、どこがX軸で・・・・などの設定を定義するものです。
これをすることで3Dシーンで読み込んだ際、カメラや地面などの空間が整った状態で読み込まれます。

まずシーン上にグリッドを出しましょう。viewer上で右クリック >Ground plane でグリッドが表示されます。とんでもない位置・角度になっていると思います。 このグリッドが床の位置にしっくり来るように定義付けしていきます。

Scene Geometry 内の Add Coord Frm Hint ボタンを押すとデフォルトで Origin (hint) という Type が出ます。つまり原点を指定しましょうってことです。Camera Solve で出来たポイント(Predictions)から任意のポイントを1つ選びます。そこが原点になります。複数選ぶとそれらの平均を取った位置が原点になります。
今後、どの設定においても複数選ぶとそれらの平均の位置が定義されるのでお忘れなく。
そして ポイントが選ばれるとプロパティ内の Connect to selected がアクティブになります。
そのボタンを押し、続いて下の Update Coord.Frame ボタンを押せば更新されます。


筆箱の角付近が原点になりました。

次に x-y 平面を設定します。今回は床面が多く見えるのでx-y 平面を指定した方がいいと思いましたが、例えば街やビルのある背景をマッチムーブした時は、ビルに出来るであろう窓やタイルの“同一垂直線上のポイント”を選び、z-axis と定義してあげれば自ずとx-y 平面も決まります。ケースバイケースで!
今回僕は床面にあるポイントを全て選択しました。 Connect to selected > Update Coord.Frame で更新すると・・・・

グリッドがいい感じになりました。

ここで、x-y plane と Plane parallel to x-y plane の違いについて説明します。
x-y plane は選んだポイントを通るx-y 平面を定義します。しかし先に Origin を指定して後から x-y plane を指定すると Origin が無視されます。
そこで Origin を維持したまま、Origin と平行なx-y 平面を指定・・・・というのが Plane parallel to x-y plane なのです。
原点を指定する場合は必ず parallel 系の hint を使用します。上の例はまさに Plane parallel to x-y plane を利用しています。

では続いて・・・。X軸を指定しましょう。x-y 平面は指定されても、カメラから見てどこがx軸か分かりません。ここではキーボードの両端に出来た2点を選び指定します。勿論前述を踏まえて Line parallel to x-axis を選びます。



微妙に変わりましたが、間違いなくX軸が指定されました。


では次、Known Length を指定しましょう。
これは任意のポイント間の距離を指定します。例えば撮影時ターゲット(パーマセル)を100cm間隔で貼りそれをマッチムーブした場合、隣り合う2点のポイントを選び Length の値に 100 と入れると、Boujou のシーンがスケールされます。重要なのはマッチムーブする予定の2点間のターゲットの距離を予め把握しておくことです。ターゲットが貼れないなら小物でも何でも。
最悪この Known Length を指定しなくても、3Dシーンにインポート後スケール調整すれば問題ありませんが。。。

今回僕はモニターに張ってあるポストイットの2点(10cmだったので10)を指定しました。



グリッドが小さくなりましたね。これでいいんです。


ここでグリッドについて更に詳しく。
Boujou には1.0ユニットがinchiだのcmだのといったシステムユニットがありません。つまり1.0ユニットはただの1.0(デフォルトでは・・・)。MaxのUnit Setup 内で言うところの Generic unit みたいなこと。
例えば撮影時のターゲット間が1.0mであっても Known Length に10とも100とも入れていいわけです。僕の場合は勝手に1.0ユニット1.0cmを基準に考えているので、1.0mの場合は Known Length に100と入れます。
今回ポストイットの2点を10と指定しました。つまりこのポイント間のユニットも10であり、その空間内においてポストイットの2点と同じ距離の2点間にはグリッドが10マスできます。その証拠に、筆箱の横幅(実際測ると10cmでした)の2点のポイント間もポストイットの2点と大体同じで、グリッドは9つありました。この差はおそらくレンズの歪みを考慮せずマッチムーブしたことが考えられます。
結構ややこしいですが、実際に測った長さを Known Length に入れるのが妥当だと思います。


さてこれでようやくエクスポート出来るまでになりました。
実は Scene Geometry はやってもやらなくてもエクスポート出来ます。ただこれをすることでとても親切な形で3Dアーティストにバトンを渡せるわけです。僕の場合そのどちらもであり、Maxで設定するよりはBoujouで設定する方が遥かに楽なので、ここで紹介したことをやってエクスポートしています。

エクスポートの前に、心配な方は Add Test Objects でてんとう虫を置いて確かめるもよし!
僕はこのてんとう虫には飽きているので、もう置いてませんが・・・。

8)Export Camera
カメラと青矢印のアイコンです。
ようやく最後の手順です。

保存先を指定したり、Export Type を選んだり。一番重要なのは、最後にマッチムーブした Camera Solve を選ぶことです。06)Camera Solve の項で「Delete existing solves」のチェックが外れている場合、履歴が残ると言いました。もし履歴を残したまま Export Camera をすると、一番古い Camera Solve がデフォルトで選ばれるので要注意です。
あと、Move type ですが、背景をマッチムーブしている場合は Moving Camera, Static Scene を選んで下さい。その名の通りです。そして例えば持っている携帯電話をマッチムーブする時は(CMではこんなの当たり前にやってます)、 Moving Scene, Static Camera にします。Panning Camera, translating Scene はカメラも携帯電話もどちらも動いている時です。カメラには回転、携帯電話には移動のアニメーションがベイクされます。例えです、例え。
僕は今まで Panning Camera, translating Scene でエクスポートしたことがありません。そういう仕事が無かったとも言えますが、この出し方で一番引っかかるのは携帯電話も回転してたらどうするの?ってことです。おそらくカメラの回転で携帯電話が回転したように見せるのでしょう。


以上僕のやり方でした。そのほとんどがウィザードの流れに忠実ですが 、ここではさも自分が編み出したことのように説明してしまいました。ごめんなさい。

他にもレンズディストーションのことや、OBJをインポートする方法などもあります。
いつかはそれらも紹介できればなと思います。

0 件のコメント:

コメントを投稿