2012年3月19日月曜日

【CG】 モデリング基礎編 その1 モデリングの種類 後編

さて今日は具体的な面の取り方や穴の空け方をやろうと思っていたんですが。。。。
普通のサブディヴィジョンモデリングとサブディヴィジョンを前提としたモデリングの違いは何ですか?
違いについて教えてください。というメッセージ、メールが何通か頂きました。
基本的にサブディヴィジョンモデリングもサブディヴィジョンを前提としたモデリングも、モデリングの作業的にも、アプローチの方法も同じです。
ただ、サブディヴィジョンモデリングとレンダリング時に適応されるサブディヴィジョンでは得られる結果が異なります。
今回はモデリングと少し離れた話題になりますが、前回のモデリングの種類を補足する感じで、もう少し詳しく説明、紹介したいと思います。

まずサブディヴィジョン(再分割曲面)については、前回も紹介した通りです。
ここで勘違いされやすいのはサブディヴィジョンモデリングとレンダリング時に適応されるサブディヴィジョンアプロキシメーション(レンダーマンサブディヴィジョン)の違いです。

サブディヴィジョンモデリングはあくまでもモデリングデータとしてサブディヴィジョンを使用します(解り易いのがMAYAの3番表示や単純に面を分割するスムース的表現)
サブディヴィジョンアプロキシメーション(レンダーマンの場合はレンダーマンサブディヴィジョン?)は、レンダリング時にサブディビジョンを適用します。
サブディヴィジョンアプロキシメーション(レンダーマンサブディヴィジョン)はポリゴンに対して面分割を調整するのではなく、レンダリング時に映っているポリゴンに対して、どれだけ分割するか?という調整を行います。

長々と文章説明しても難しいので、画像で比較してみましょう!

まず下記のような単純なCubeを用意します。


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



※もちろんサブディヴィジョンアプロキシメーション(レンダーマンサブディヴィジョン)もMayaサブディヴィジョン(スムース)の様に、単純に面を分割するだけの設定も可能ですが、あえて違いを解って頂く為に、今回はビューポートベースでポリゴンを分割しています。

これがサブディヴィジョンモデリングとサブディヴィジョンアプロキシメーション(レンダーマンサブディヴィジョン)の大きな違いです。
海外の大手プロダクションの多くは後者の様なレンダリング時にサブディヴィジョンを適用する方法を用いています。

そして、サブディヴィジョンアプロキシメーション(レンダーマンサブディヴィジョン)を適用する前提で、モデリングも行う必要があります。
モデリングの作業的には、サブディヴィジョンモデリングもサブディヴィジョンアプロキシーメーションを適用してレンダリングする場合でも、同じようなアプローチを行いますが、そもそも日本の多くのプロダクションはレンダリング時間の負荷を考慮して、サブディヴィジョン自体を使用していいないプロダクションがほとんどだと思います。

これはRaytracer系とRays系というレンダラーの違いも大きいと思いますが、日本のプロダクションではCM、映画、アニメ、フル3Dアニメなど多様な対応を一つのプロダクションで行わなければいけないという背景もあると思います。

と言うことで、今回は前回の補足ということで、サブディヴィジョンモデリングとサブディヴィジョンアプロキシメーションの違いを紹介させて頂きました。

次回はサブディヴィジョンを用いない(日本式モデリング)とサブディヴィジョンを前提としたモデリング方法の違い、面の取り方、穴の空け方を紹介したいと思います。

※あくまでも日本と海外大手プロダクションのモデリングの仕様の違いについて紹介する物であり、これはサブディヴィジョンの使用を強要する物ではありません。

5 件のコメント:

  1. はじめして、通りすがりの学生です。
    非常に参考になります。
    最近綺麗なトポロジーを意識し始めたのですが、
    三角形ポリゴンを使わないようにするだけで難しくなります。
    まるでパズルみたいです。
    次回の記事も期待しております。

    返信削除
  2. >匿名さん
    ありがとうございます。今後もモデリングの技術についてご紹介できればと思います。

    返信削除
  3. こんにちは。
    ツイッターのフィード読ませていただいてます。

    すみません、ひとつ質問させてください。

    まだ業界経験はないですが、昨年デジハリでCG勉強してました。
    そこでモデリング作業は基本ポリゴンの1番表示で作成し、一番最後にproxy > sabdiv proxyをかけて終わり、と教わりました。
    ところが今日、とある企業さんが行うモデリングチェックでデータを見てもらったところ、

    「このやり方は古い、今は3番表示できれいに見えればそれで納品できる。
    2〜3年前はそういうやり方やっている人を見たけど、今はない。」

    というようなことを言われ、ああ今はそうなんだと思ったのですが、、、
    昨年はむしろ「3番表示はつかうな、絶対つかうな」的なことを言われていたので、何が正しいのか、もう少し他の人の意見を聞いてみたいと思い、検索してみてこの一つ前の記事からこのブログに入りました。

    要するに、

    海外ではポリゴンの1番表示で作業を行い、最終的に3番表示の状態でレンダリングする

    という訳で、今日のこの企業さんが言うことが事実なら、日本もだんだんこのやり方に移行してきている、という解釈しているのですが、、私、北田さんの記事を理解できてますでしょうか??

    返信削除
    返信
    1. 正直に言うと、モデリングに答えはありません。どの方法が正しい?どの方法がベストか?というのはプロダクションのプロジェクトやワークフローにより異なります。

      僕がお伝えしているのは海外プロダクションで行われているスタンダードな方法で、この方法が全てのプロジェクト、プロダクションに当てはまるとは限りません。
      ただ、多くのプロダクションは僕が示した方法と同じ方法でモデリングしています。

      日本国内の場合は、1つのプロダクションでアニメ、CM、映画などを行うことが多いので、プロジェクト毎にモデリング方法が異なるプロダクションもあります。

      どの方法を用いるかは、プロジェクトとやプロダクション次第ですね。

      削除
  4. お忙しい中、ご返信ありがとうございました。

    そうなんですね、すこし誰の言うことを信じてよいのやらわからなくなっていたのでご意見を伺えてよかったです。あまり頑固にひとつのやり方に固執しすぎるのもダメなんですね。

    業界のスタンダードをおさえつつ、他のやり方を希望されたら柔軟に対応できる頭にしておきます^▽^

    ありがとうございました!

    返信削除