0013-04-21

[][]Kinectキャプチャ(8) Kinectキャプチャ(8) - Nao_uの日記 を含むブックマーク はてなブックマーク - Kinectキャプチャ(8) - Nao_uの日記 Kinectキャプチャ(8) - Nao_uの日記 のブックマークコメント

床を乗算ブレンドじゃなくてカメラ映像をスクリーン座標系で取り込んでシェーダー内で乗算するように(まだアルベドに入れただけなので一部破綻してる)。昼の環境に合わせて光源の数をあり得ないくらい増やすとなんだかいい感じの立体感が出たような気がする

キューブマップのXZ面の+-が逆だったことに気付いて修正してみた。ついでに夜用だったキューブマップを昼に撮ったものと入れ替えた結果、右側の窓からの直射光や、エッジに背後の窓からの逆光が出てて実物のリファレンスに近い見た目になった。

ディフューズ側も入れ替えてみたけど間違い探し程度の違いにしかならなかった。

方向を合わせた昼環境のキューブマップ、静止画では映えるんだけど、動くと複雑なポーズの遷移の過程で本来遮蔽されるはずの光がそのまま出てるのが、かえって不自然に見えてしまう。

体に腕が映ってるはずの場所が何事もなく光ってたり、体で遮蔽されて見えないはずの腕の逆光がそのまま乗ってたりすると一世代前の環境マップみたいに見えてしまう。このあたりは単純なIBLの限界かも。ローカルリフレクションで遮蔽をチェックすることには意味がありそう

元に戻した方が自然な感じになるので戻す。結局、人間は反射に映ってるものが正しいかどうかにはわりと鈍感で適当でもさほど気にならないんだけど、暗いはずの場所が光ってるのは不自然に見えやすいみたい。キューブマップに映ってる情報量が増えるとごまかしがばれやすい。

現状での反射内容は、正確かどうかよりも「それっぽく見える」ほうが大事なのかも。

次世代のスペキュラーについては遮蔽計算が可能な多光源による実装とか、ローカルリフレクションによる遮蔽チェックあたりが重要になってきそう。