« フィギュア | Main | ステレオグラム »

February 07, 2007

マッピングの迷宮

今日は一日MAX7のマッピングの迷宮にはまりました(^^:

一つのオブジェクトに何種類ものマップを貼るのは、メタセコイアの場合、貼りたいマテリアルを選択し、必要なポリゴンを選んで、メニューから選択したポリゴンに貼ればいいのですが、MAXではさすがにそう単純にはいきません。

Xbody84k
rendering:3ds max7

MAXの場合は一つのオブジェクト内に貼るマップをマテリアルIDとマップチャンネルという番号で管理します。今回は体を頭、胴体正面、胴体背面、手の表、手の裏、足の表、足の裏、手足の爪にわけ、該当するポリゴンを選択してマテリアルIDを割り当てることにしました。一度IDをセットしておけば、このIDから該当ポリゴンをいつでも呼び出せるので便利です。

次にマテリアルエディターで球体の絵のサンプルスロットから一つ選択してStandardというボタンを押してマルチ/サブオブジェクトマテリアルを選びます。オブジェクトに設定したマテリアルIDに対応するように、それぞれの材質設定を行い、必要なものはビットマップを読みこんでおきます。ここで、読み込んだビットマップは他と重ならないようにマップチャンネルを設定しておきます。これがUVWマッピングをする際に非常に重要なんですね。UVWマッピングとUVWアンラップモディファイアを選んだら、真っ先にこのチャンネルを指定しなくてはまともに事が運びません。

で、今日はこの次のステップで完全にはまりました。どうやっても顔のマップ(ID1、チャンネル1)以外、正常にビットマップ(ピクチャーマップ)を貼ることができません。マテリアルIDごとにポリゴンを選び、モディファイアリストからUVWマッピングとUVWアンラップを選んで設定するんですが、全く反映されません。

これで数時間試行錯誤というか堂々巡りをしたあと、問題を切り分けるためにごく単純なモデルを作り、サブオブジェクトマテリアルを設定してみました。最初は先ほどと同様、何度やっても駄目でしたが、ふとマップ設定をするオブジェクト自体を選んで、マテリアルエディタから「マテリアルを選択へ割り当てボタン」を押すと、一発で内包するマテリアルが全て反映されました。

Sshot01

つまり、今までは通常のマッピング同様の方法で、貼りたいポリゴンを選択して、サブオブジェクトマテリアル中の該当するマテリアルを個別で一生懸命貼ろうとしていたことが間違いだったわけです。単純にひとつのオブジェクトに複数のマップを貼る場所をIDで管理、指定しておいて、そのオブジェクトに、マテリアルの同じIDで管理されたマップの集合体であるサブオブジェクトマテリアルを単純に1:1で割り当てすればよかったわけで、気づいてみればなるほど理に適っています。

こういう単純なことってわかってみれば参考書にはさらっと書いてあるんですが、そのさらっと書いてある部分って意外に気がつかないものなんですよね(^^;

結構苦労しましたが、やっと爪や手などのマップも貼ることができました。あとは残りの箇所のピクチャーマップを作成し、バンプや反射などのマップを重ねてからMAX8に持って行き、髪やまつ毛を生やすことになります。

Sshot02

|

« フィギュア | Main | ステレオグラム »

Comments

Post a comment



(Not displayed with comment.)




TrackBack

TrackBack URL for this entry:
http://app.cocolog-nifty.com/t/trackback/84881/13828157

Listed below are links to weblogs that reference マッピングの迷宮:

« フィギュア | Main | ステレオグラム »