cacti2005-08-07

ほとんどの人が四角ポリゴンでモデリングしてると思いますけど
レンダラーっていうのはたいてい三角ポリゴンしか扱わないんですよ。
ShadeやRedqueenでもクイックレンダリングや3Dゲームなどのハードウェアレンダリングでもそうです。
四角ポリゴンは三角ポリゴン2つに変換されてるんですね。
(ちなみにShadeの多角ポリゴンも複数の三角ポリに変換されている。ハズ。)
で、四角を対角線で三角に割るには当然2通りの方法がありますよね。
4つの頂点が平面上にある場合(なおかつ平行な面で囲まれている場合)
どっちに割られてもレンダリング結果は同じですが
平面上に無い場合、全く違う結果になります。
わかりやすい例を考えました。
Shadeでも六角大王でもいいですが(サブデビは使わない)
4つの四角ポリゴンでできた正方形(要するに「田」の字)を作ってください。
作り方は正方形の閉じた線形上をポリゴンに変換するときに分割数を縦2横2にするとか
ポリゴンに変換してからメッシュツールの分割やナイフで縦横に割ってもいいです。
その「田」の字の真ん中の頂点を上に持ち上げてください。(上の画像参照)
とんがりコーンか工事用パイロンのようなものを作る気持ちで。
きれいなパイロンになりましたか?カメラでぐるぐるしてよ〜く見てください。
各面の面の張られ方が違いますね。わかんないって?よくぐるぐるして見なさいってば。
違いますね?対称でないヘンな形にシェーディングされてます。
これは4つの四角ポリゴンの割られる方向が違うためです。
どういう方向で三角に割られたのか想像してみると納得できます。
(Shadeのワイヤーフレームレンダラーで確認するといいかもしれない)
このことを知ってないときれいな曲面は作れない、って言いたい所ですが
知ってたところでこれを意識しながらモデリングするのは無理ぽ。役に立たん知識だな。
まあレンダリングしてみてヘンだったら面を張り直すってくらいでしょう。
そういうヘンな四角ポリゴンは作るなっていうのが一番いいんですが。
六角ではいくつか手順を踏めば割られる方向を変えることができます。
そういう機能が付いてるソフトもあると思う。Shadeではよく知らない。
ちなみにShadeレンダラーではどんな大きくずれた位置に4点があってもスムージングがかかります。
角度がスムージング値より大きくなっても稜線は出ないので、実際はそれほど気にならないはず。
これは、三角ポリゴンに割られるとはいっても「元は四角(多角)ポリゴンですよ〜」という情報をShadeレンダラーになら渡せるからでしょう。
外部レンダラーのCallistoやShade6パストレーサーなどの場合全てタダの三角ポリゴンとして渡されるハズなので
スムージング値を超えると稜線が出てきます。(Callistoでは出ない?)
それもこのパイロンでレンダリングしてみると確認できます。上の画像より極端に差が出ます。