6

いくつかのゲームで、テクスチャの良いボール、惑星、その他の球体オブジェクトを見てきました。前回は UFO: aftermath でした。u および w 座標としてテクスチャを緯度/経度にスプラッタするだけでは、極に対して多くの醜いテクスチャ歪みが発生します。

私自身、歪みを最小限に抑えて球面マップを実装する 1 つの方法だと考えることができます。正方形ではなく三角形にマッピングする。しかし、私はアルゴリズムを知りません。そのような球の頂点とテクスチャ座標を生成する方法は?

また、単純な平らな正方形の地図から完全な球形の地図を生成する方法がわかりません。そのようなマップを実際に問題なく描画する直感的な方法はありますか?

ただし、歪みを最小限に抑えて、または最小限に抑えて球をレンダリングする他のアルゴリズムはありますか?

レイトレーシングとラスタライズのアルゴリズムはどちらも興味深いものです。

4

6 に答える 6

5

ヘアリー ボールの定理は、テクスチャを歪ませる極がなければ、球上に連続したテクスチャ座標を定義することは不可能であると述べています。

于 2008-10-20T20:03:55.443 に答える
3

緯度/経度の「球」は、定義上歪んでいます。プログラミングに興味がある場合は、[四面体](http://en.wikipedia.org/wiki/Tetrahedron Tetrahedron)から始めて、各三角形を4つの三角形に分割し、指定された半径で中点を再配置することにより、必要に応じて細分割します中心から。

モデリングに興味がある場合は、GeoSphere(前述のとおり)または同様のもので問題を解決できます。

重要なのは、三角形には緯度に依存しない一定量の歪みがあるということです。

また、(閉じた)サーフェスの細分割により、 (C)LODをかなり簡単に作成できることにも注意してください。

テクスチャリングは別の話ですが、良い球体ができれば、問題は少なくなります。

これがあなたの想像力を刺激することを願っています:)

于 2008-10-21T13:34:00.427 に答える
2

または、キューブマップを使用できます。これは一般的に、環境マッピングを行うための推奨される方法です。これは、基本的にあなたが説明しているものです。

于 2008-10-17T18:46:49.267 に答える
2

縦方向のぼかしが極付近で増加する長方形のマップを使用できます (赤道ではゼロから北 60 度まで)。ミップマップと組み合わせて、これはあなたが言及している効果のいくつかを根絶するはずです。

于 2008-10-17T17:57:21.113 に答える
2

Drew Olbrich は、球体を分割して 9 面体を生成する気の利いた方法を思いつきました。頂点の数を増やすと、かなりまともな球状テッセレーションが得られます。

于 2008-10-17T18:04:10.943 に答える
1

経度と緯度で球体を分割しないでください。代わりに、3Ds Max で GeoSphere と呼ばれるものを使用します。(実際には、多面体、測地線球.)

于 2008-10-17T18:46:53.150 に答える