ノーマルマップの生成

本題に入る前に、今日偶然ですが面白い光景を見ました。

信号待ちをしている時に目の前にパチンコ屋の建物があるのですが、

その建物は輪郭線に沿って電飾が付いていました。

恐らくLEDだと思うのですが、主に青と白の光を放っていました。

その建物には縦長の看板が建物の縁近くに付いており、赤いネオン灯が付いています。

 

自分が見た位置からだとLEDの電飾とネオン灯のグロウ部分が丁度重なっていました。

すると、青と白が主なLEDの電飾が、ネオンのグロウ部分と重なっているところだけ赤くなっていました。

 

変な気遣いをするものだ。

と思っていたのですが、待っている間に無意識に重心を変えると、今まで赤く見えていたものが

他と同じ青と白になりました。

 

思わず、「うわっ」という声が口を突いて出ました。

 

どうもブレンドされています。

青い光の上に赤い光を乗せると紫になりそうなものですが、オレンジに近い位の赤色でした。

家に帰ってフォトショップで試してみてしまいました。

 

それが正しいのかは分かりませんが、ブレンドの仕方により、紫にももちろんなりますが

赤にもなりました。

 

人間の視覚はかなりいい加減なものなので、そのせいかとも思いましたが、

計算でもそうなっている。ということでしょうか。

最もその計算の大元になっているものは人間の視覚なので、やはりあてにはなりませんが。

 

こう書いてしまうと厭世的な感じになりますが、そういうわけではありません。

いい加減といってしまうと、人間の感覚全てがいい加減です。

 

違う言い方をすると補完機能が備わっている、といえます。

視覚にしろ聴覚にしろ、意識的にも無意識的にも情報は改竄されます。

「ピーッ」という信号音とノイズを交互に聞くと途切れているはずの信号音は連続して聞き取れます。

聴覚器そのものは絶対音感ですが、補完機能が働き相対音感になります。

でなければ、違う人が発音する言葉を聞き取れません。

 

視覚も感覚器が取得する情報は秒間300MB位だといわれます(不確かですが)。

このデータもかなり怪しいものですが、眼球が得たその上方が脳に伝わるまでに10分の1になるそうです。

少なくなったデータを再現するには補完が必要です。

生まれてから様々な感覚器を通して学習した経験を元に補完されます。

 

先天的に盲目の方は、成人して眼球を治療しても視覚を得ることはできないそうです。

 

どうも自分のやっている職業であるデザイナーというものは、

その補完機能をうまく利用することにあるのだと思います。

自分の脳味噌ですでに補完されているので、できうる限りその要素を個別に抽出して吟味する。

それが個体が出来る精一杯の事なのかと思います。まぁ、楽しんでいるのですが。

 

さて、ようやく本題です。

実はこれもある意味補完が関わっています。

 

記事で何度か取り上げているかと思いますが、ノーマルマップです。

どうも調べてゆくと、プログラマの人もこの技術に関して疑問を抱いている人がおおいのでは?と思ってしまいます。

この技術は過渡的なもので、どうせ消えてゆく。と行ったニュアンスを感じてしまいます。

 

そして、何が補完かというと、ノーマルマップにはタンジェントスペースとオブジェクトスペースとがあります。

ワールドスペースというものもあるようですが、オブジェクトスペースとほぼ同じものだと思います。

 

modoでは、タンジェントスペースとワールドスペースのノーマルマップを生成できます。

ZBrushで出力したオブジェクトスペースのノーマルと比べてみましたが、確かグリーンとブルーのチャンネルが

反転していただけだったかと思います。

 

タンジェントスペースはUVと絡みます。

これがややこしくなります。どうしてもUVの切れ目で繋がらなくなることがあります。

ゲームCGでは服や装飾でその切れ目を誤魔化します。

 

オブジェクトスペースはほとんど切れ目がありません(若干は存在します)。

しかし固定位置でのノーマル方向なので、変形ができません。

 

シェーダを使えばオブジェクトからタンジェントへのコンバートが出来るそうです。

modoだけでそれが出来るかは自分には分かりません。

xNormalというツールを使うとコンバート出来るそうです。

まだ、調べる価値はありそうです。

 

本当の本題はちょっと違うのですが、こんな記事を見つけました。

以前フォトショップでプラグインを使わずにノーマルマップを作成する記事を書いたかと思います。

その元になったページです。

その時興味がなく見落としていました。

タンジェントとオブジェクトの事を調べている時に再発見し、ここで書かれていることをmodoで再現してみました。

image588l

こんな感じです。

normal_scene

シーンデータです。

 

前回書いたフォトショップでノーマルを作るやり方だと、レイヤースタイルの限界があり、

高さや幅を修正しようと思ったら全てのレイヤースタイルを変更する必要がありました。

しかしこれではその心配がありません。

まぁ、ここまで来るとオブジェクトにベイク、で良いんじゃない?

と思わなくは無いのですが、最終結果を見ながら調整出来るのはやはり良いです。

やはりWYSIWYG(見たものが、手に入る)です。

 

関係ない話が大半を占めましたが、今回はこの辺で。

コメントする

post date*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

トラックバックする

トラックバック用URL:

アニメーションが親切に解説されております

レンダリング、ライティングの基本が分かります

図版が見やすい美術解剖書です