PDA

フルバージョン表示 : normal mapについて


redball
2011-03-09, 19:52
はじめまして。
初めて投稿します、redballと申します。
皆様よろしくお願い致します。

messiahのnormal mapについて質問させてください。

何か手続きを間違っているのか上手く行かず躓いています。
レンダーするとポリゴンごとにノーマルマップの
陰影が反転したような結果になってしまいます。


手順としましては、
zbrushでスカルプトをして
ローポリobjファイルとノーマルマップを出力しました。
messiahにモデルデータをロードして、
マテリアルノードのnormal入力を確保する為に
サーフェイスからマテリアルを一旦削除します。
新規にFull Shadingもしくは
Custom Shadingのマテリアルを作成してモデルに割り当てます。
追加で新規にtexture mapを作成し、ノーマルマップ画像を読み込み
map TypeをUVに変更、Normal MapのチェックボックスをON。
マテリアルノードのtexture map>color出力から
NORMAL入力(上のFull Shading等)に接続しました。


何か不足、あるいは間違いをしてるのでしょうか?
どうぞ宜しくお願い致します。


messiah 4.5 32bit
zbrush4

Neogen
2011-03-10, 11:29
redballさん

こんにちは。はじめまして。

Normal Mapについてですが、下記のSETUP TABのスレッドにもありますが、Normal Mapの設定はDisplacement Mapの設定に似ています。
http://setuptab.com/index.php?topic=371
ただし、スレッドの中でWegg氏が書いている「"Normal Map" switch」はオンにするとうまくいきません。

以下、Normal Mapの適用手順です。
※ここで使用しているサンプルファイルは、有名なZBrushのサンプルです。

1.
Renderタブで読み込んだモデルのマテリアルを選択状態にします。
Normalノードは使用しませんので、読み込んだときのマテリアルのままで大丈夫です。

899


2.
Materialsサブタブで、Texture Mapノードを追加してNormal Mapを読み込みます。
Map TypeをUVにします。このサンプルマップはVが反転しているのでFlip Vにチェックを入れていますがUVが正しい場合は、チェックの必用はありません。
Texture MapノードのColorをモデルの基本マテリアルノードのBumpにつなげます。

900


3.
モデルの基本マテリアルノードを選択して、Basic PropertiesサブタブのBumpの値に適当な数字を入れます。1.0~5.0あたりでまずは試してみてください。ここの数値が、Normal Mapの適用の強度になります。ちなみに、Texture Map選択画面にあったRemapでも調整できますが、元々ここはDisplacementマップ調整用のオプションです。

901


4.
レンダリング。数値を変更しながら調整・確認していきます。

902


スクリーンショットは、5.0のものですが4.5でも同じやり方で出来ますので、試してみてください。

オンラインマニュアルのNormal Mapの説明には、Normalノードの使い方が書いてありますが、その下のNoteに、「オブジェクトに回転やエフェクトをかけているとNormal Mapが正しく適用されないから、代わりにDisplacementかBumpを使え」とあります。このNormalノードの使い方は自分もいまいちよく分からない謎仕様なので、とりあえず上記のやり方を使っています。
参考になれば幸いです。

redball
2011-03-10, 15:44
こんにちは。
Neogenさん、レスありがとうございます。

早速教えて頂いた事を試してみました。
陰影は付くのですがbumpマップとしての
反応をしているようです。
normal mapの画像はUVの切れ目にまたがった
凹凸は色彩が逆転している事も多いので
bumpマップを用意するよりも悪い結果になってしまいます。
折角教えて頂いているのに不満の様な返答になって申し訳ないです。

ちょっとお話がずれるのですがDisplacementマップの
使い方にちょっと疑問があります。
Displacementマップを使おうとして
bumpに繋げて諸設定をし、見た目としては成功しました。
ただこれだとbumpマップと併用出来るのでしょうか?
ディスプレイスメントをしてしまうと
bumpマップの方でもオブジェクトに凹凸を付けてしまうようです。
ノーマルマップが使用出来ればディスプレイスメントとは分離されているので
bumpは使えなくてもよいかと思ったのですが・・・。
なんとかディスプレイスメントとノーマルを併用したいところです。

vim
2011-03-10, 22:43
試してないので(試せー)勘で書きますが、ノーマルマップの陰影が反転してるようなおかしい感じがする場合は、rgbチャンネルのg(だったっけかな…)の値が反転してるケースが多かったと記憶しています。

vim
2011-03-11, 01:39
普段messiahをレンダラとして使ってないんですが、ちょっと試してみました。
結果からいうと、やはりGreenチャンネルの反転でした。

903

904

ただ、やっぱりというか、

オンラインマニュアルのNormal Mapの説明には、Normalノードの使い方が書いてありますが、その下のNoteに、「オブジェクトに回転やエフェクトをかけているとNormal Mapが正しく適用されないから、代わりにDisplacementかBumpを使え」とあります。このNormalノードの使い方は自分もいまいちよく分からない謎仕様なので、とりあえず上記のやり方を使っています。

Neogenさんも仰っていますが、オブジェクトを回転させるとおかしくなります。

905

フルシェーディングのノーマルパラメータへ入力する方法だと、オブジェクトスペースのノーマルマップ(虹色のやつ)しか受け付けないみたいなんで、まあ、そのせいなんだと思いますが。
タンジェントスペースのノーマルマップ使えないのかな。
「"Normal Map" switch」とNormalシェーダーがなにか関係してそうな気はします。
どこかでmessiahのノーマルマップの貼り方みたような気がするんだけどな…:confused:

なんとかディスプレイスメントとノーマルを併用したいところです。

ZBrushでスカルプトしたモデルを他アプリで使う場合は、リトポしない限りは「ディスプレースメント必須」みたいなトコがあるのでつらいですよね。細かいディティールはノーマルマップ使いたいし。

redball
2011-03-11, 02:54
こんばんは。
vimさん、レスありがとうございます。

カラー反転は試していたのですが
モデルを回転させていた時のものが
質問させて頂いた状態のようです。

zbrushからワールドスペースの方で出力して
モデルを動かさずレンダーした所、成功しました。
どうもありがとうございます。
あとNeogenさんも回転の事を仰って頂いていたのに
いまいち汲み取れていませんでした、すみません。

ただ・・・こうなるとこれは仕様と言う事なんでしょうか・・・。
vimさんがどこかで方法を見かけたというお話ですので
こちらでももう少し探してみようと思います。

でもだいぶすっきりはしました、また何かありましたら宜しくお願い致します。
ありがとうございました。
こちらも何か気が付きましたら
ご報告にまたお邪魔させて頂きます。

Tap
2011-03-28, 19:49
いつのまにかmessiah v5のアップデートがでています。

http://www.projectmessiah.com/x6/downloadPatches.html
 
日付は2010年3月20日 になっていますが、中身のファイルは2011年ですので、新しいパッチです。
PMGさん、こんなとこ間違えるなよ・・・・。
これによりタンジェントのノーマルマップが使えるようになってます。
もちろんUVが効きますのでオブジェクトを回転させても大丈夫です。


でもBVH読み込みは直ってない・・・・・・・ orz 

vim
2011-03-28, 21:23
Tapさん、情報あるがとうございます。

タンジェントスペースで使える!
ってまだインストールしてないんですが。
早速試してみよう。

vim
2011-03-29, 09:06
すみません、Tapさんに貼っていただいたURLの末尾にスペースが入っていたので、勝手ながら修正いたしました。