Poserによる障子の質感

Poserを弄っていて難しい事の一つに質感設定がある。リアルな3DCGのシーンを作り出す上で、質感表現の良否は重要である。Poserでもかなりのレベルでリアルな質感を表現できるが、今回はライティングの設定で表現を変える『障子』質感に挑戦である。



障子の質感と一言に言っても、和紙の文様とかではなく、次のようなことを表現したかった。

 ●外側からの光が障子を通って、室内にほのかな光が当たる
 ●その光の間にある物が、障子に影を落とし、その影が室内側からも見える

この2点の表現である。これを実現するに私的に問題視したのは、次のこと。
 ●障子を通過した光が減衰して、室内側を照らすには、障子に『透明』値を設定しなければならない。==障子の向こう側が見えてしまう。
 ●障子に落ちた影を、室内側からも見えるようにするには、ポリゴン裏表2枚にしなくてはならないか?


ということで、こんなモデルを用い、外側からの光をこのように当て、室内側(上画の右側)に障子透過後の光を出してみよう、というワケ。


障子に影が映るようモデルを配置する。ちなみに障子のポリゴンは、室内側が表面であり、Poserのプレビュー上ではこの裏面側からみると透明である。


ライティングはIBLを含めた5灯を用い、矢印の光源が外から差し込む光としている。影を明確に出すためにレイトレーシングの設定をしている。


まずは障子に透明設定を加える。こうすれば矢印のように室内側に障子越しの光が当たることになる。が、当然の如く向こう側も丸見えである。。ここで透明度の値を弄ったところで、透過光の表現と、裏側が見えてしまう関係は相反することで改善にもならない。しかし、床に当たる透過光の表現には、透過する物体に透明度の設定をしない限り実現できない (と断定してよいのか、、今のワタクシの知識の範囲では、である)。
ならば、その透明の状態を何かのノードを接続して見た目『濁らして』しまえば良いかも〜、
ということで、


このdiffuse (拡散) のノードを透明に接続してみる。合わせて透明エッジにも接続して、見る角度にも影響しないようにする。実はこのノードを透明度に接続することがベストなのか? 他の代替拡散とかに接続するのが本筋なのか? と本来のノード接続論理をわきまえていないので不安ではある。


とは言え、この設定で向こう側(左矢印) は見えなくなり、かつ透過光は影付き(右矢印)でそのまま残る。この透過光の程度は障子質感の透明度の値を調節することで加減できる。



ということで、室内に当たる透過光の表現はOKである。が、このままでは障子に当たった光==すなわち光が当たる部分と当たらない部分の表現==障子に映る影、が表現できていない。これは思うに、障子のポリゴンの向きが室内側を向いているので、影を落とす面がポリゴンの裏面では、そもそも『無』の物に影は落ちない、ということなのかもしれない。しかるに影を落とす面を作るべく障子は裏表の2面が必要なのか? とも思ったワケ。。
しかし、これは過去に経験したことなのであるが、ある片面ポリゴンにPoserのSSS (SubSurface Scattering) 『表面下分散』ノードを用いることで、ポリゴン裏面にも影を落とせることになる。しかしこれを用いると設定していたライティングは全て『影の奥行マップ』になりますヨ、というコーションが出る。


すなわちレイトレーシングによるシャープな影ではなくなる、ということだが、このSSSを設定した後に、再びライティングを設定し直してやればレイトレーシングで実行できる。


このSSSの設定の、主にカラーを調整することで質感の発色を整える。


でご覧の通り、障子に影ができることになった。
これで当初 狙った障子の質感が実現できたことになるが、このノード設定で半透明の物体もうまく表現できるかもしれない。
さて、当初 この障子設定には、片面ポリゴンということから、『ノーマル_前』(Normal Forward)にチェックを入れた状態で進んでいた。


そのためか障子の裏面から見ると障子枠がアリアリ (左画) でちょっと不自然。そこでこのチェックを外してやる (右画) とほぼ自然な状態になった。本来ポリゴンの裏面であるから、この見る側の反対側から光を当てない限り黒くなってしまうのだが、これもSSSの効果か? 今回のライティングでは室内側からのライトも若干当てているので、それは定かではない。。

まぁ〜何はともあれ、したいことの実現に向かって、想像から想定へと思いを巡らせて弄れば何とかなる、ということだった。そうした経験を積み重ねることで、自然に覚えていくというローテクもスローではあるけど着実に身に付く方法ではある。

BlogTopへ戻る