ラベル NormalMap の投稿を表示しています。 すべての投稿を表示
ラベル NormalMap の投稿を表示しています。 すべての投稿を表示

2015年9月24日木曜日

ノーマルマップとローポリメッシュのタンジェントの計算

知人から質問を頂いて自分でもうやむやにしていた
ノーマルマップとローポリメッシュのタンジェントについて
色々気づけたのでそれを少しまとめてみます。

かなり難しい部分なので自分の理解した範囲を感覚で書いていますので、
正確ではない記述もあるかとおもいます。
もし誤りである場合は、ご指摘いただけますと幸いです。


■UE4ドキュメントの法線マップ作成ガイド

事の発端はUE4ドキュメントにある法線マップ作成ガイド
これに『タンジェントが重要』って書いてあるけどFBXのエクスポートにチェックがないんだが、本当にこれ正しいの?

という質問を受けました。

はじめに結論から書きますが、ここに書いてある内容は正しいと思っています。
では、なぜこの方法に沿って作成すると正しいのかについて書いていきます。
(理解不足な部分も多く、推測も多い内容になっております…)

2014年12月1日月曜日

NormalMapをベイクする時の知識 その2 (追記)

以前紹介したNormalMapをベイクする時の知識 その2で紹介したNormalの歪みの解決方法ですが、
Polycountにもっとスマートな解決方法が掲載されていましたのでこちらに追記しておきます。



以下に動画を貼りますが、限定公開とのことなので削除されてしまうかもしれないです。

3dsmax


Xnormal


2014年11月21日金曜日

NormalMapをベイクする時の知識 その4

そろそろNormalについても書くことも少なくなってきました。
書く事がないわけではないですが、大分細かい部分になってきたという感じですね。

Normalのベイクの方法にこれをやれば全てOKという方法はなく、
ケースバイケースの事例が多すぎるので説明するのもちょっとむずかしいものです。


今回はNormalをベイクする時に知っておくと、よりよいNormalを作成することができます。
ちょっとしたことですが、クオリティに差が出てきます。



角度をつける

溝や凹みなどをHigh modelで作成するときに90度でそのまま凹凸をつけたりしていませんか?
凹凸情報を認識するためにNormal mapは数ピクセルの情報が必要になります。

下はその例です。
左側は90度、右側は少し角度をつけて凹みを作成しています。








 これはNormalが貼ってある状態です。
左側に比べて、右側のほうがしっかりと凹んでいるのが確認出来ると思います。

Normalmapはこのような感じです。




角をシャープにしすぎない

ハードサーフェスモデリングで作ってたりすると、ついつい角をシャープにしてしまいがちです。
角をシャープにした時にどのような問題があるかというと、
テクスチャにmipがかかってきた時にエッジの部分にジャギーが出てくるというもの。

遠くでも綺麗に見えるNormalMapを作成しておくに越したことはありません。
下図はPolycount wiki より転載した画像ですが、
これを見るとわかるようにmipがかかるほどジャギーが入ります。

mipの最低解像度の設定によって緩和できるかも知れないですが、
表示エラーの原因は基本的に避けておく方が良いと思います。

ちょっと画像の品質があまり良くないのか見づらいかもしれないですね…



その1~その4までの内容を意識しながら作れば、大分失敗もなく、いい感じのNormalが作れるようになるのではないでしょうか。



2014年11月7日金曜日

NormalMapをベイクする時の知識 その3

今回は円柱形のベイクで起きる波型の問題についてです。

参考にしたサイトはこちら
【Polycount】Understanding averaged normals and ray projection/Who put waviness in my normal map?


波型の問題って何?


円柱形のモデルからノーマルマップをベイクした時に一定の角度から見ると綺麗な円が見えるが、
真横から見ると上下の部分に波型の形が見えてしまう問題です。



2014年10月31日金曜日

NormalMapをベイクする時の知識 その2

その1ではNormalをベイクするためのソフトエッジ、ハードエッジについて書きました。
今回はその結果を踏まえて新たに出てくる問題の解決方法について記述してあります。

(追記)
別の方法でも歪みを解決できる事がわかり、追記しました。
NormalMapをベイクする時の知識 その2(追記)


角付近にある形状が歪む問題の解決方法


ここではUDN-法線マップの加工の内容を実際にテストしてみたいと思います。
(わざわざ同じようなモデルを作成してみました…)

これは、角付近にある形状が歪んでしまう問題の解決方法です。


その1のEの方法を踏まえて、下図のようなHighModelのNormalをベイクしてみたいと思います。
LowModelの法線は複数のスムージンググループを使用しており、
それにあわせてUVを切り離してあります。
(実線はハードエッジ、点線はソフトエッジです)



NormalMapをベイクする時の知識 その1

いつまでたってもうまくNormalmapが作成できないので、
自分が勉強したNormalのベイクに関する情報を少しずつまとめてみたいと思います。

知識を得るたびに少しずつ更新して内容を充実させたいです…(^_^;)

ここで掲載するNormalMapはMayaのマップの転写を使用してベイクしたものになります。



情報収集は主に以下のサイトから。
Polycount Wiki NormalMap
UDN-法線マップの加工


ソフトエッジとハードエッジ


NormalMapをベイクする時の基本はローモデルを単一のスムージンググループ(全てソフトエッジ)にすることです。
しかしソフトエッジだけではきれいにベイクできない場合があります。

基本的なルールとしては

90度ほどの角度がつく場合その箇所はハードエッジにして、UVを切り離す
 それ以外はソフトエッジにする。