このページでは、これから 3DCG に取り組まれる方に知っておいてもらいたいサーフェイス分割率を意識した制作のポイントについて説明します。
具体的にはスプラインベースの3Dモデラ、サブディビジョン系ポリゴンモデラが該当しますが、統合型3Dソフトが提供する3Dモデラは、これらの何れか、叉は両方をサポートしているため 3DCG 制作全般について言える重要な事柄となります。
特に初心者で多いのが必要のないところで無駄にメッシュ数を浪費するケースです。3D-CG 映像制作実習において私が最初にチェックするポイントがここになります。この無駄にメッシュを浪費する形状のタイプは大方決まっているので他人の作ったデータでもチェックするのはそれ程難しくありません。(シーンの複雑さによるが)
このような問題の発生しやすい形状のタイプを知っておくと事前に問題回避する事も可能になります。これら形状パターンと回避策について説明します。
無駄の発生しやすい形状の一つは円柱状に代表される二次曲面を持つ形状です。これらはスプラインベースの3Dモデラ、サブディビジョン系のポリゴンモデラ、何れも共通して言える事です。
左の図は、Maya の NURBS サーフェイスです。中央の穴に注目してください。(クリックで拡大します)
奥行きに対する分割率が異なっています。滑らかな円弧を表現するには、多くのメッシュ数を必要としますが、奥行きに対しては多くの分割率は必要としません。
下はレンダリング結果ですが、得られるイメージの品質に大きな違いはありません。同じ事はサブディビジョン・サーフェイス(ポリゴン)においても言える事です。
Maya ヒント
メンタルレイにおけるオブジェクトごとのテッセレーション(分割率)値の設定は
Window > Rendering Editors > mental ray > Appoximation Editor で行えます。
NURBS モデラに代表されるスプラインベースのモデラは、UV 方向という一連の流れを持っています。Shadeなどの スプラインベースの3Dモデラも同様です。
このNURBSモデラの特徴は U方向、V方向に対し、個別に分割率を設定できる点にあります。
ビューポート上の表示が簡素化できる上、編集も軽いメリットがありますが、レンダリング時に使用するメッシュ数を意識し難く、無駄なレンダリング・コストを発生させる結果を招きやすくなります。
Maya の場合、分割率は テッセレーション値(Sample Count)で指定します。この数値は分割するエッジの数を指しています。例えば、サブディビサーフェイスのデフォルトのテッセレーション値は 4 ですが、1ポリゴンが縦横に5つに分割・補間されます。
Lightwave のサブパッチの場合、デフォルトの分割率は 3 になっていますが、1ポリゴンが縦横に3つに分割されます。つまり、Maya のデフォルトはLightwave の分割率 5 に相当します。このようにソフトウェアによって基準は異なるので注意が必要です。
前述した通り、Lightwave 3Dに代表されるサブディビジョン系のポリゴンモデラでは、UV方向という概念は存在しないため、分割率の指定は均等にかかります。 以下は具体例です。
LWモデラのビューポート画面です。赤色がサブパッチで青色がポリゴン化したデータです。LWのポリゴン化は表示上のサブパッチ分割レベルに基いて変換されます。レンダリング時に指定する分割率に合わせて一時的に変換する事で、レンダリングに使用するポリゴン数を視覚的に確認することが出来ます。
円柱の縦方向を見れば、モデラの表示レベルが3分割であった事がわかります。下の図を見て下さい。
上は不要なポリゴンメッシュを手動で調整した例です。これにより、ポリゴン数は 918 から 576 に減少してます。
前述した通り、サブディビジョン系のオブジェクトは、レンダリング時に均等に分割されてしまうため無駄なレンダリング・コストが発生し易いという事がわかります。
サブパッチ表示は、どの程度のメッシュ数がレンダリング時に消費されるか視覚的に確認し難いため、見落としがちです。
サブパッチ・オブジェクトを利用する際は常にレンダリング・コストを意識して作成する必要があります。(Lightwave モデラの場合、一度、ポリゴン化してみる事で視覚的に確認可)
沢山のオブジェクトが配置されるシーンでは、これらの不要なメッシュが積もりに積もって制作コストを引き上げる結果を招くことになるので注意が必要です。
このような形状は初めからポリゴンでモデリングを行うべきであり、サブディビジョンやスプラインベースの 3Dサーフェイス では意識しないと無駄にレンダリング・コストをかけてしまう結果を招きます。(当然、オブジェクトの重要性・用途による)
3Dソフトウェアを活用する仕事では、他のソフトウェアで作成した形状データのやり取りを行う事も多く、基本的にポリゴン変換後のやり取りとなります。ポリゴンだけのモデリングテクニックはいろんな所で役に立ちます。
余計なポリゴンメッシュは減らせば良いという訳でもありません。左の図を見て下さい。床に使用する面を一つの四角ポリゴンで作成した例と三角メッシュで作成した例です。一見、一枚の四角ポリゴンの方がデータが軽くて良いように思えますが、一概には言えません。
レンダラの設計に左右されるところもありますが、少ないポリゴンで広範囲のエリアを表現しようとするとレンダリング時におかしな影が発生したり、正しく計算されなくなるといった不具合が生じ易くなる事もあります。Lightwave の場合は、三角ポリゴンで無ければレンダリング時にエラーが発生しやすいという時期もありました。
レンダリング時にサーフェイスに対してどのような内部処理を行っているかは、それぞれのソフトウェアによって異なります。
少しでも無駄を省いてレンダリング・コストを削減する努力は必要ですが、このようにシーンを最適化する作業は新たな制作コストを生み出します。
3DCG 映像制作の分野では、1秒間に 30フレームものレンダリングを行う必要があり、これらの努力は大きな意味を持ちます。 特に最近は HD化の普及により印刷用途レベルの解像度で計算を行う必要があり、無駄なレンダリング・コストは死活問題に直結します。
どの程度、シーンのカスタマイズに費やすかは、制作内容によっても異なる事があることをここで付け加えておきます。特に3DCG関連の仕事に携わろうと考えている方にとっては基本且つ重要なポイントではないかと思います。
映像のデジタル化に伴い、近年ではTVアニメーションの制作本数は増加しています。(デジタル・メディアは生産コストが安価で映像産業にとって収益倍増が見込めるため)
特にメカものは、3DCG ソフトによる制作が一般化して久しいですが、高い解像度を求める 『放送のHD(ハイビジョン)化』 により、唯でさえ高い3D制作コストが更に増加しています。
NTSC D1 = 720 × 486 → フルハイビジョン = 1920 × 1080 pixel
前半は CG で制作し、後半は 3DCG制作が追いつかず手書きに切り替えるといった事も実際に起きているそうです。3DCG の普及に伴い手書きメカ職人(アニメーター)も減っており、業界では人材確保が大変だという話も聞いています。