ローポリモデルの制作
ローポリステージでは、ポリゴンカウント、シェーディング、UVスプリット、アニメーションの要件、ランタイムのパフォーマンスのバランスを定義しています。 目標は三角形の限界に合わないだけでなく、幾何学的に分布する。
良いリアルタイムメッシュは、シルエット、機能的な形状、クローズアップインタラクションゾーン、可動部分、およびシェーディングに影響を与える領域のジオメトリを費やします。 平らで、隠れた、反復的、または焼きやすい詳細は同じ予算を消費しないでください。
ローポリステージは、アセット生産パイプラインの最初の主要な最適化ステップの1つです。 これは、ポリゴンカウント、クリーンシェーディング、UVスプリット、変形要件、ランタイム性能のバランスを定義する場所です。
ゲーム制作で一貫して観察した1つの原則は、ローポリアセットを技術限界に合わせることだけにすることである。 より重要なタスクは、最適化された論理的な方法でトポロジを配布することです。
良い低ポリメッシュは、実際に重要であるジオメトリを消費します。 シルエット、機能的な形状、クローズアップインタラクションゾーン、可動部分、およびシェーディングに影響を与える領域。 同時に、平坦な面、隠れた部分、焼くことができる反復的な細部、またはプレーヤーによってまれに見られない部分にポリゴンを無駄にすることを避けます。
トポロジの最適化を議論する前に、高密度ジオメトリ、CAD出力、またはリアルタイムVRプロジェクトで直接シネマティックアセットを使用することができない理由を理解することが重要です。
なぜ三角形のカウントは物語の一部だけである
可視三角形は、実際の費用の1つだけです。 UV継ぎ目、異常な割れ目、物質的な境界、頂点色および皮むくデータは格子を複製し、GPUによって処理されるデータを高めることができます。 同じメッシュは影、反射、深さ、モーションベクトルパスにも参加できます。
「トライアングルカウント」は、消費者3Dアクセラレータの初期の頃から馴染みのパフォーマンスメトリックとして使われています。 アーティストにとっては、幾何学の複雑さを推定し、伝達する便利な方法です。 しかし、技術的な観点から、レンダリングコストは三角形ではなく、頂点から始まります。
リアルタイムメッシュは、見えるポリゴンのコレクションだけではありません。 複数の種類の頂点データが含まれています。
- 頂点位置
- 頂点法線
- UV座標
- タンジェントとバイタンジェントのデータ
- 頂点カラー
- ボーンウェイト
- マテリアルの割り当て
- UVの分割とハード法線による頂点分割
つまり、目に見える三角形のカウントと、処理された頂点データの実際の量が常に同じものではないことを意味します。 UV継ぎ目、堅い端、物質的な割れ目および皮むくデータはすべてGPUによって処理される最終的な頂点の計算を高めることができます。
実行時に、メッシュデータはロードされ、GPUバッファに送信され、変換、シェード、ラスタライズされ、複数のレンダリングパスで使用されます。 シーンに応じて、同じ幾何学も影、反射、深さのパス、モーションベクトル、または他のレンダリングシステムに貢献することができます。

グラフィック パイプラインの参照によるYoungdo Lee· ソース:グラフィック パイプラインの参照
ダイナミックライト、透明素材、反射、後処理が関与する際、コストはさらに複雑になります。 性能は、常に線形にスケールしません。 多角形の何百万ものポリゴンでシーンが安定して見えるかもしれませんが、複数のアセット、複数の光源、または1つの高価な材料を追加した後、フレームレートは突然不安定になる可能性があります。

キューブには8つの幾何学的なコーナーポイントしか含まれていませんが、ハードフェイスの通常のゲームレディキューブには24 GPUの頂点が必要です。6面ごとに4つの別々の頂点があります。 三角形の後、36のインデックスで参照される12の三角形が含まれています。
最適化予算の計画
幾何学の予算はターゲット プラットフォーム、フレーム率、記憶、最悪の箱フレーム、照明、VFX、およびアセットのスクリーンの重要性から始めなければなりません。 ダイレクトアクションでは、平均的な武器ターゲットが約10,000~40,000の三角形で、珍しい複雑なアセットが6万~80,000に上昇しています。
適切な最適化戦略は、ターゲットハードウェアの理解から始まります。
低予算を定義する前に、チームは理解する必要があります。
- ターゲットプラットフォーム
- 目標フレームレート
- メモリ予算
- 想定される最も負荷の高いフレーム
- 目に見える武器、キャラクター、プロップ、車、VFX、環境アセットの数
- 照明と影の複雑さ
- 後処理コスト
- 画面内でのアセットの重要度
これにより、各アセットカテゴリの現実的な限界を定義することができます。
ダイレクトアクションでは、武器ごとの約10,000~40,000の三角形で平均的な武器予算を定義しました。 機械銃や多くの可視機械部品を備えた高度な詳細なシステムなど、非常に複雑なアセットについては、予算は60,000〜80,000の三角形に上昇することができます。
これは、AAAフラットスクリーン製造でよく見られるものに近い、比較的高い幾何学的予算です。 弊社では、この決定は、VRでプレイヤーが体験したいクローズアップディテールのレベルによって駆動されました。
しかし、高いポリゴンの予算は、アセットが正しく構成されている場合にのみ機能します。
スタティックメッシュとスケルタルジオメトリ
堅い武器の部品は自動的に皮をむく必要はありません。 静的なコンポーネントは、不要な per-vertex 変形作業を避けますが、骨格メッシュは、本物的に複雑なアニメーションを必要とする部品のために予約する必要があります。 トレードオフは、コンポーネント管理と潜在的なドコールオーバーヘッドです。
主要な最適化戦略の1つは、武器全体を1つの完全に皮をむいたメッシュに強制する代わりに、可能な限り静的なメッシュを使用することです。
非変形の部品のために、静的な網は頻繁により有効です。 静的なメッシュは、その頂点のすべてのために単一の変換行列を使用できますが、皮をむいたメッシュは、骨の影響、変形、およびアニメーションのための追加のper-vertex計算を必要とします。
つまり、硬い兵器の部品が常に皮をむく必要はありません。 多くの場合、それらは別の静的なコンポーネントとして維持し、複雑なアニメーションを必要とする要素だけのために骨のメッシュを予約することをお勧めします。
例えば:
- 簡単な堅い部品は静的なままにできます
- 移動機械グループは別の部品として付くことができます
- 大きく変形する部分や、アニメーション上重要な部分だけにスケルタルデータを使用する
- 隠されているか、内部のアニメーションヘルパーは、非常に低いディテールジオメトリを使用することができます
このアプローチは、不要な頂点シェーダーコストを削減し、CPUとGPUの両方の過負荷を回避するのに役立ちます。
しかし、この方法はトレードオフも紹介しています。 より大きな静的なメッシュコンポーネントは、アセットを管理、アニメーション化、組み立てるのを困難にすることができます。 慎重に取り扱われていない場合は、ドローコールを増加させることもできます。 そのため、目標は、可能な限り多くの作品にすべてを分割するものではありませんが、アニメーションの柔軟性、レンダリングコスト、生産管理能力の実用的なバランスを見つけることです。
法線の向きとLODに適したシェーディング
一貫性のある通常の方向は、ジオメトリが減少するにつれて、焼きたての細部を強調し、より安定したハイライトします。 グッド・ノーマル・マネジメントは、大きな形態を維持し、LODトランジションを改善し、VRプレーヤーが武器を回転させると騒々しいステレオの反射を防ぎます。
ローポリ準備のもう一つの重要な部分は、積極的なLOD生成のための通常の方向を制御することです。
選択されたポリゴングループに一貫したまたは統一された通常の方向を割り当てることにより、アセットをタンジェント・スペースのノーマルマップや将来のLODにもっとフレンドリーにすることができます。 ジオメトリを削減する際に安定したシェーディングを維持するのに役立ちます。
実際には、アーティストは最終的なクローズアップメッシュだけでなく、アセットが距離やパフォーマンスの制約下で劣化する方法について考えるべきであることを意味します。
適切な法線の向きにより、次の効果が得られます:
- 可視シェーディングアーティファクトを削減
- ベイクしたディテールを安定させる
- LODトランジションの改善
- 大きい形態の視覚読書を予約して下さい
- 簡略化した形状でハイライトが乱れるのを防ぐ
- アセットを後で最適化しやすくする
武器の芸術のために、これは特に反射とハイライトがステレオおよび動きで知覚されるので重要です。 プレイヤーが自分の手でオブジェクトを回転させると、通常の管理が不安定、壊れた、または視覚的に騒々しい状態を感じることができます。
生産原則
高ポリモデルの簡略化されたコピーのように、低ポリアセットは感じるべきではありません。 丁寧に設計した実時間表現のように感じるべきです。
ローポリステージは、単に三角形を減らすことではありません。 芸術的な意図を維持し、シルエットを維持し、アニメーションをサポートし、テクスチャベークで動作し、パフォーマンスの制約下で安定したまま、アセットのリアルタイムバージョンを構築することについてです。