Painting with Polygons using Maya
http://www.outside-hollywood.com/siggraph/ をMayaで試してみた(1時間くらい)。
うまくいかなかったんだけど、誰かが答えを教えてくれると思ってレビュー。
3Dが固いと言われる理由の一つに、三次元的に正しすぎる輪郭があると思います。
どんなにきれいな輪郭線を描いても、形状が正確すぎて、機械的にみえてしまう。それを打破しようと色んなノンフォト系の論文がでています。
このサイトでは、それを超シンプルな方法で打破しています。思考の流れをまとめるとこんな感じ。
- 輪郭はディスプレイスメントで形状自体変えればいいじゃん
- だけどそれだとただのバキバキなオブジェクトになっちゃう
- だからディスプレイスメント部分を透明というか、それっぽく重なってみせたい。
- だから、ディスプレイスメントにモーションブラーを適用。一フレーム間でディスプレイスの強さを0→1→0と高速に動かす。そうすると、オブジェクトの形状変化部分にモーションブラーがかかり、それっぽく見える。
この手法の特徴は、最後の部分だけ。クソ簡単なので試してみる。
やってみた
まず、ティーポットを用意。レンダリング時間を抑えるためにレイトレースシャドウのノイズはそのままです。(デプスマップは死んでも使わん。)
というわけでディスプレイスメントを3Dフラクタルで行う。レンダラはmental rayです。
はい、ここまで5分。
そして次にアニメーションの設定ですね。ハイパーシェードでディスプレイスメント用3Dフラクタルのalpha gainに0→0.5→0とキーを打ちます。
そしてモーションブラーをONにする。mental rayでもちろんFullです。
・・・・とここまでやったが・・・・・画像がただのディスプレイスメントのまんま。
色々パラメータいじったり、Mayaが落ちたりで早くも一時間。人の大切な休日をなんだと思ってんだ。
というわけで、明日会社のデザイナにでも聞いてみよう。
リアルタイム性について
でも、これ、物体の輪郭をやわらかくぼかすためだけに、モーションブラーなんて比較的ヘビイな処理かましてるな。
リアルタイムにするならば、
- ディスプレイスメントはジオメトリシェーダor頂点ノイズで。
- モーションブラーは、いわゆる残像系エフェクトの頂点つなぐ方法でやる?
- それよりも、2パスでディスプレイスメントと普通のモデルを・・・・
とかあるかもしれないけど、費用対効果に見合った行動かは謎。
やらなきゃと思いつつ、心のスタックに積んでおこう(深さ3)。