はじめに
現代のゲームは、息を呑むようなリアルな環境に、複数のオブジェクトやキャラクターを配置することで、大きな成功を収めています。しかし、これらのオブジェクトやキャラクターは、視点からの距離に応じて機能していますが、実際にシーンを彩るものはほとんどありません。
とはいえ、エンジンはすべてのオブジェクトを処理してレンダリングしなければなりません。そのためには、高速なレンダリングを実現するLODが必要になります。しかし、それだけではありません。
今日は、LODとは何か、なぜゲーム内でLODが必要なのか、そして、LODを使用したゲームの開発について、知っておくべきことを学びます。 キャラクターモデリング.
LODとは?
LODまたは レベルオブディテール とは、3Dオブジェクトのpolygonの数を、ビューアーやカメラからの距離に応じて減らす手法です。モデラーは、CPUやグラフィックカードの負荷を軽減し、レンダリングの効率を上げるために使用します。
対応しています。 様々なレベルの詳細なグループがあります。 は、ゲームの背景ごとに作成されます。それぞれが異なるpolygonカウントを持ち、グループに属しています。LOD0グループは完全に詳細なモデルで、LOD1、LOD2一はより低いレベルの詳細なモデル、といった具合です。
の数千個のトライアングルまで様々です。 ポリゴンメッシュ 最も詳細なオブジェクトでも100人程度、最も詳細でないモデルでも100人程度がやっとです。
プレイヤーの経験値に影響を与えるかどうかというと、一 答えはイエスでもありノーでもある.
オブジェクトが遠くにあったり、速く動いていたりするため、モデルの視覚的品質の低下はほとんど気になりません。しかし、レンダリング時間は大幅に改善されており、これは注目に値します。
一見、万能な解決策のように見えますが、やはりすべてのゲームに適用することはできません。
注意してください。 三角形の多い非常に単純なオブジェクトや、固定カメラビューのゲームでは、LODを使用しないでください。これらのケースでは、meshの最適化は別の方法で行われます。
LODパラメータ
ゲーム中、様々なオブジェクトは、視聴者に対して異なる距離に位置しています。そのため、距離のみでは、各オブジェクト、キャラクター、風景のディテールレベルを定義するための有効な要素とはなりません。
他にも検討すべき指標があります。
- オブジェクトの特徴 ー 現実世界のオブジェクトとその要素を含める必要があります。
- 機能の複雑さ 現実世界の特徴の最小サイズとその形状の複雑さ
- セマンティクス 空間的意味的コヒーレンス
- 寸法 ー 各フィーチャーの幾何学的寸法
- 質感 ー 物体にテクスチャを貼る場合、各機能に求められる品質レベル
これらを定義したら、オブジェクトのLODを作成するために、どのテクニックを使うかを選択する必要があります。
レベルオブディテール管理手法
LODは以下のように役立ちます。 適切な 不必要な計算を回避しながらの映像品質 をアルゴリズムの助けを借りて行っています。しかし、現代のアプローチはレンダリングされた情報に合わせて行われており、オリジナルのアルゴリズムが陥りやすいものとはかけ離れています。
状況に応じて、主に2つの方法があります。
ディスクリートレベルオブディテール(DLOD)
離散的な手法を用いて作成した 複数の独立した、または異なるバージョン は、異なるレベルの詳細を持つオブジェクトのものです。それらすべてを得るためには、様々なpolygonリダクション技術で使用される外部アルゴリズムが必要です。
レンダリング時には、詳細度の高いオブジェクトのバージョンが、詳細度の低いオブジェクトに置き換えられ、その逆も同様です。これにより、トランジション時に視覚的なポッピングが発生しますが、これは常に避けなければなりません。
連続的詳細度(CLOD)
連続的なレベルオブディテール方式が最も適している パフォーマンス重視のアプリケーションや移動する物体のための これにより、ディテールを局所的に変化させることができます。その結果、視聴者に近い側をより詳細に、反対側をより詳細に見せることができます。
これは、ディテールのスペクトルが連続的に変化するメソッドの構造に起因しています。CLODは、状況に応じて適切な詳細度を選択することができます。操作が少ないから。 この方法では、CPUの削減とパフォーマンスの向上を両立しています。.
3DオブジェクトのLODレベルの最適化
polygon meshesを作り始めると、最初に頭に浮かぶ質問は「ー」です。 妥当なLODの数は?
単純なことのように思えますが、LODとは何かを知った上で、2番目に重要なことです。
その理由は以下の通りです。
polygon meshの数個の頂点を減らすだけでは、大幅なパフォーマンスの向上は見込めません。オブジェクトのすべてのバージョンがほとんど同じようにレンダリングされます。次に、polygonを減らしすぎると、LODの切り替えが目立ちすぎてしまいます。
プロの技。 LOD1、LOD2、LOD3などのグループのオブジェクトごとに、polygonの数を50%減らすという不文律を使いつつ、オブジェクトの大きさや重要性に合わせて調整します。
その上、LOD meshesは、メモリとCPUの作業量を消費します。そのため、数が多すぎると多くの処理が必要となり、ファイルサイズが大きくなってしまいます。その点はご了承ください。
LOD Meshesを作成するには?
派手な演出で 3Dモデリングソフトウェア とモディファイアが付属しているので、ゲームオブジェクトのLOD meshesを作成するのは難しいことではありません。
それでも、手動と自動の両方で行うことができます。
手動
手動で詳細レベルを作成する場合、必要なのはただ 3Dオブジェクトのいくつかの頂点を削除する とpolygonsのループがあります。また、LODのスムーズさをオフにすることもできます。
この作業はソフトウェア内で行うのですが、それでも多くの時間を必要とします。ですから、このプロセスを自動化したほうがいいでしょう。
自動的に
逆に言えば、オートマチックの方が選択肢が多いとも言えます。 3Dソフトの中でモディファイアを使うことができます。 先ほどご紹介しました。最も人気があるのは プロオプティマイザー 3DSMaxの場合、または LODの生成 Meshes in Maya。
必要に応じて、SimplygonのようなLOD生成ソフトウェアを使用することもできますし、ゲームエンジンに内蔵されているLOD生成機能を利用することもできます。例:Unreal Engine 4).
いずれにしても、LOD meshesを作成すると LOD番号でモデルを指定し、カメラからの距離を指定するだけで、自動的に それぞれが持つ意味を考えてみましょう。
注意してください。 自動ツールを使用する際には、作業のバックアップを取り、モデルのUVにダメージを与えないように適切なテストを行ってください。
ハイエンドゲームでは、視聴者の体験や設定全体のレンダリング時間に影響を与えるため、ディテールのレベルは必須です。ゲームに夢中になって学ぶとすぐに 3Dモデルの作成方法となると、LODの作成も簡単そうですね。特に、今日学んだ詳細な知識があればなおさらです。