普通のサブディヴィジョンモデリングとサブディヴィジョンを前提としたモデリングの違いは何ですか?
違いについて教えてください。というメッセージ、メールが何通か頂きました。
基本的にサブディヴィジョンモデリングもサブディヴィジョンを前提としたモデリングも、モデリングの作業的にも、アプローチの方法も同じです。
ただ、サブディヴィジョンモデリングとレンダリング時に適応されるサブディヴィジョンでは得られる結果が異なります。
今回はモデリングと少し離れた話題になりますが、前回のモデリングの種類を補足する感じで、もう少し詳しく説明、紹介したいと思います。
まずサブディヴィジョン(再分割曲面)については、前回も紹介した通りです。
ここで勘違いされやすいのはサブディヴィジョンモデリングとレンダリング時に適応されるサブディヴィジョンアプロキシメーション(レンダーマンサブディヴィジョン)の違いです。
サブディヴィジョンモデリングはあくまでもモデリングデータとしてサブディヴィジョンを使用します(解り易いのがMAYAの3番表示や単純に面を分割するスムース的表現)
サブディヴィジョンアプロキシメーション(レンダーマンの場合はレンダーマンサブディヴィジョン?)は、レンダリング時にサブディビジョンを適用します。
サブディヴィジョンアプロキシメーション(レンダーマンサブディヴィジョン)はポリゴンに対して面分割を調整するのではなく、レンダリング時に映っているポリゴンに対して、どれだけ分割するか?という調整を行います。
長々と文章説明しても難しいので、画像で比較してみましょう!
まず下記のような単純なCubeを用意します。

左がMayaの3番表示(Subd level2)でレンダリングした状態です。右がMentalRayApproximation(ビューポートベースでサブディヴィジョン)を適用したレンダリング画像になります。
遠めにはほぼ同じ形状に見えますが、ズームしてみると大きな違いが確認できると思います。

※もちろんサブディヴィジョンアプロキシメーション(レンダーマンサブディヴィジョン)もMayaサブディヴィジョン(スムース)の様に、単純に面を分割するだけの設定も可能ですが、あえて違いを解って頂く為に、今回はビューポートベースでポリゴンを分割しています。
これがサブディヴィジョンモデリングとサブディヴィジョンアプロキシメーション(レンダーマンサブディヴィジョン)の大きな違いです。
海外の大手プロダクションの多くは後者の様なレンダリング時にサブディヴィジョンを適用する方法を用いています。
そして、サブディヴィジョンアプロキシメーション(レンダーマンサブディヴィジョン)を適用する前提で、モデリングも行う必要があります。
モデリングの作業的には、サブディヴィジョンモデリングもサブディヴィジョンアプロキシーメーションを適用してレンダリングする場合でも、同じようなアプローチを行いますが、そもそも日本の多くのプロダクションはレンダリング時間の負荷を考慮して、サブディヴィジョン自体を使用していいないプロダクションがほとんどだと思います。
これはRaytracer系とRays系というレンダラーの違いも大きいと思いますが、日本のプロダクションではCM、映画、アニメ、フル3Dアニメなど多様な対応を一つのプロダクションで行わなければいけないという背景もあると思います。
と言うことで、今回は前回の補足ということで、サブディヴィジョンモデリングとサブディヴィジョンアプロキシメーションの違いを紹介させて頂きました。
次回はサブディヴィジョンを用いない(日本式モデリング)とサブディヴィジョンを前提としたモデリング方法の違い、面の取り方、穴の空け方を紹介したいと思います。
※あくまでも日本と海外大手プロダクションのモデリングの仕様の違いについて紹介する物であり、これはサブディヴィジョンの使用を強要する物ではありません。