0

最近、webGL の学習を開始し、Three.js ライブラリを使用することにしました。

現在、100K を超える立方体のレンダリングに加えて、それらの立方体間の線 (100K を超える) もレンダリングしようとしています。

立方体ではなく線を描画しようとすると、レンダリングの問題が発生します。100k キューブのレンダリングは比較的高速でした。これらの 100K 以上のラインのレンダリングでも比較的高速ですが、TrackballControls を使用してズーム/パンしようとすると、FPS がほぼ 0 に低下します。

アプリケーションのパフォーマンスを改善するために、StackOverflow やその他のさまざまなサイトを検索しました。マージ ジオメトリ手法、線の遅延レンダリング (基本的には js でタイムアウトを使用して一度に x 数の立方体/線) を使用し、線の外観を調整して必要なレンダリング時間を最小限に抑えました。

レンダリング/fps が影響を受けないように、線を作成する他の方法はありますか? 私はラインのグループを構築し、それをシーンに追加しています。しかし、行をマージできる方法はありますか? 別のオブジェクトを使用してラインを作成する必要がありますか?

100k を超える立方体で高い fps を簡単にレンダリング/パン/ズーム/維持できるのに、線 (点以外のジオメトリの最も基本的な形式) を使用すると、すべてがクラッシュするのは奇妙です。

4

1 に答える 1

0

グラフィックチップベンダーがデバイスドライバーのどこに焦点を当てているかを(難しい方法で)見つけました。しかし、これは 3D グラフィックスで予想されることです。線 (はい、最も基本的なジオメトリ) は私の多くのゲームでは使用されないため、ポリゴンのようにあまり注目されません。webgl_buffergeometry_lines.html の例を見ることができます。これは、おそらく線を描画するより高速な方法です。

于 2013-02-08T07:38:05.570 に答える