タグ付けされた質問 「level-of-detail」

1
惑星レンダリングに最適なLODメソッドはどれですか?
私は現在、私の論文に取り組んでいます。それは惑星サイズの地形をレンダリングするエンジンです。 私はまだ研究を終えており、この主題に関する多くの問題に遭遇しました。問題は、どの詳細レベル(LOD)メソッドを使用すべきかを決定できないことです。 ジオミマップ、ジオメトリクリップマップ(GPU)、UlrichのチャンクLODについて知っています。これらは大きな地形でうまく機能し、キューブの6つの面をレンダリングし、この方法でキューブを「球状化」することができます。 C ++ / OpenGL / GLSLを使用したGPUでのこれらのメソッド(ROAMなどのメソッドを使用するか、キューブを使用しない他のメソッドを使用することは、テクスチャリングが苦手なので私の手の届かないところにあります)。また、最近、ここでテッセレーションシェーダーを使用して地形をレンダリングするチュートリアルに参加しました だから、私はすべての方法を実装し、どれが惑星規模に最適でより適しているかを見る時間がないので、誰かがこの種の比較を行ったかどうかを確認し、どの方法を決定するのを助けたいと思います私は実装して使用する必要があります(私の家庭教師はちょっと変わっていて、20面体で何かをしたいと思っていますが、ROAMを使用しないとその方法を理解できません) とにかく、あなたが私を決定するのを手伝うことができるか、または他の提案または方法があるならば、私は本当に感謝します。1つの条件は、メソッドがCPUのボトルネックを防ぐためにGPU側(少なくともそのほとんど)を実装できることです。 別の要求は、地形で多くの詳細を取得するときにフロートの精度に関する数値的な問題があることを知っていることです。それを解決する方法がわかりません。実装すると、そのスレッドを追跡できなくなり、この精度の問題を解決する方法を知りたいと思います。 私は現在、フロートの精度、zファイティングの問題、動的z値での錐台カリング、チャンクのデータ表現を解決するためのいくつかのマトリックス変換について読んでいます(フロートとワールド座標での位置をダブルとして使用)精度の問題は簡単に解決できると思います。このプロジェクトに最適なLODメソッドを決定するために、LODメソッドとあなたの意見や提案を比較する必要があります。実装の難易度と視覚的品質とパフォーマンスを考慮に入れて、最高のものが欲しいです。 私が言及するのを忘れていたのは、世代がハイブリッドであるということです、つまり、GPU(その場で計算される高さ)を使用して、および/またはベースの高さマップ画像を使用して、地球を完全にレンダリングし、GPU(頂点シェーダー)。テクスチャリングは、私が後者を悩ます側面の部分になります。今は、高さに応じて色だけを使用するか、フラグメントシェーダーで生成された何らかのノイズテクスチャを使用することができます。

1
「チャンクレベルの詳細」を分かりやすく説明する
つい最近、Unityでチャンクレベルの詳細システムを実装する意味を理解しようとしています。それぞれが高さマップを持つ4つのメッシュプレーンを生成しますが、現時点ではそれほど重要ではないと思います。このテクニックについて読んだ後、たくさんの質問があります。一度にすべてを尋ねるのが多すぎないことを願っていますが、このテクニックを理解してくれる人にとても感謝しています。 1:メッシュがチャンクに分割されることを、チャンクLODパイプラインのどのポイントで理解できない。これは最初のメッシュ生成中ですか、またはこれを行う別のアルゴリズムがあります。 2:チャンクLODデータの格納にQuadtreeデータ構造が使用されていることを理解しています。ポイントが少し欠落していると思いますが、quadtreeは各サブディビジョンレベルの頂点と三角形のデータを格納していますか? 3a:カメラ距離は通常どのように計算されますか。四分木について読むとき、軸に沿った境界ボックスが多く言及されます。この場合、各チャンクには、カメラまたはプレーヤーが近くにあることを検出するための衝突境界ボックスがありますか?またはこれを行うより良い方法はありますか?(多分レイキャスト?) 3b:チャンクはカメラ距離を自身で計算しますか? 4:各チャンクに同じ「解像度」がありますか。たとえば、最上位では、メッシュは32x32になり、各サブノードは32x32になります。以下の例:

6
最新のゲームのLOD [終了]
閉じた。この質問はより集中する必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集するだけで1つの問題に焦点を当てるように質問を更新します。 6年前に閉鎖されました。 現在、LODとメッシュの単純化に関する修士論文に取り組んでおり、このテーマに関する多くの学術論文と記事を読んでいます。ただし、現代のゲームでLODがどのように使用されているかについての十分な情報は見つかりません。多くのゲームが地形に何らかの動的LODを使用していることは知っていますが、他の場所はどうですか? たとえば、3Dグラフィックスの詳細レベルは、連続LODのパフォーマンスオーバーヘッドのために、離散LOD(アーティストがいくつかのモデルを事前に準備する)が広く使用されていることを指摘しています。しかし、その本は2002年に出版されたので、今は状況が違うのではないかと思っています。ジオメトリシェーダーを使用して動的LODを実行する研究がいくつかあります(たとえば、ShaderX6での実装を含むこのペーパー)。これは現代のゲームで使用されるでしょうか。 要約すると、私の質問は、最新のビデオゲームのLODの状態、使用されているアルゴリズム、およびその理由に関するものです。特に、ビューに依存する連続的な単純化が使用されていますか、または実行時のオーバーヘッドにより、適切なブレンドと詐称者を伴う離散モデルの使用がより魅力的なソリューションになりますか?離散モデルが使用されている場合、それらをオフラインで生成するアルゴリズム(頂点クラスタリングなど)が使用されているか、アーティストは手動でモデルを作成していますか、あるいは両方の方法の組み合わせが使用されていますか?


1
シングルプレイヤーゲームで大きなレベルをチャンク/キャッシングする
大きな非線形レベルをファイルベースのチャンクにオフロードし、それらをオンデマンドでロードすることは意味がありますか?レンダリングのパフォーマンスを向上させるためにレベルチャンキングを実装しましたが、すべてのレベルオブジェクトは引き続きRAMに保持されます。 もしそうなら、どのように私たちは生きている/変化する世界の幻想を維持するのでしょうか?レベルは線形ではなく、むしろそれ自体が世界のようであるので、通過したものが永遠に過ぎ去ったと偽ることはできません。 レベルを十分に複雑にするだけでなく、常にメモリに永続化するのに十分最適化し、完全に離れたポイント(つまり、まったく新しいレベル)にジャンプできるようにするマイクロ/マクロジャンプポイントを実装することをお勧めします。世界の一貫性、そして変化する世界の幻想について。また、これにより、一見非線形の世界でわずかに線形のストーリーをたどることができます。プレイヤーを元の状態に戻す場合は、「遠い」レベルの既存の状態に新しい状態を適用するだけで十分です。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.