モデリングをしていると、情報量アップのためにディテールアップを施すことが少なくありません。ペイントしたり、シェーダーを工夫したりといろいろな方法があります。
しかし、時には注意しないといけないこともあり、それは「ディテールをポリゴンで作る」という方法です。
今回は、やってしまいがちなポリゴンディテールアップについてのデメリットを紹介します。
Contents
ポリゴンディテールアップのリスク
ポリゴンによるディテールアップは、レンダリングにおいてノイズやちらつきを発生させる原因となります。分かりやすい例を下にご用意しました。
これはUnity上で撮影したモデルです。左はポリゴンによるディテール、右はテクスチャによるディテールです。
ズームアウトすると、ポリゴンによってディテールアップされたモデルの方は、発行ラインがどんどん潰れていっていることがわかります。逆に、テクスチャによってディテールアップされたモデルは線がキレイに残っています。
ちらつきの原因
テクスチャに焼いた方のモデルではちらつきが起こっていません。これは、ミップマップによる作用が関係しています。
ミップマップは、遠い位置にあるメッシュ表面に、解像度の低いテクスチャを使用する技術です。このミップマップは、オリジナルのテクスチャをもとに縮小されていくため、画面に対するモデルの面積が小さくなっても、ディテールの大まかな形が残りやすくなっています。
一方で、ポリゴンでディテールを作ってしまうと、縮小に対する補正が一切かかりません。そのため、上の例における発光ラインのポリゴンは、1ピクセル以下になった瞬間に描画されなくなります。
サンプルでは、一定の距離以上離れると、発光ラインがぎざぎざになり、かすれて見えなくなっていくことがわかります。これはまさに、画面上で1ピクセル以下になっている、ということです。
ポリゴンディテールアップを使っていい場合
このように、ディテールがポリゴンによって表現されているのか、テクスチャによって表現されているのか、は大きな違いがあります。
しかし、ポリゴンによるディテールアップを絶対に使ってはいけない、というわけではありません。ポリゴンディティールアップにはそれなりのメリットもあります。個人的に使ってもいい場合は、以下の通りと考えています。
- ラフチェック用のモデル(=未完成品でもアウトプットが欲しい時)
- 遠景にしてもちらつきが目立たない場合
- 接写が重要なモデル
- パストレーシングに使用する場合(=時間をかけてレンダリングする)
これらは「ノイズが目立つ」もしくは「ノイズが許容できる」を基準に考えると理解しやすいかもしれません。
ポリゴンディティールアップは、なんといってもテクスチャの作成やUV展開を大幅に省略できることが大きなメリットです。こうした工程を省略することで制作時間の短縮化が見込めるため、状況を見極めたうえで使うことには問題ないといえるでしょう。
まとめ
ポリゴンによるティテールアップの掘り込みはデメリットが存在します。環境によっては気にならなかったりもしますが、リスクがあるということをかならず覚えておいてください。