5

あまりにも多くの OpenGL 呼び出しをディスプレイリストに入れると失敗する可能性があるかどうかは誰にもわかりませんか? もしそうなら、これを行う可能性のある呼び出しの数を見積もっている人はいますか? それはビデオメモリに関連していますか?

私は JOGL から OpenGL を呼び出していますが、それは重要ではないと思います。

4

1 に答える 1

4

このドキュメントページによると、大きすぎるリストをコンパイルしようとすると、GL_OUT_OF_MEMORYエラーメッセージが表示されるはずです。リストを作成する前後に
必ず呼び出して、が返されるまですべての結果を処理してください。glGetError()GL_NO_ERROR

リストに含めることができるコマンドの数を見積もる方法はないようです。これはおそらく、すべてのコマンドがその引数と使用されるデバイス固有のエンコーディングに応じて異なるサイズを取るためです。リストはカードのビデオ メモリに保持されるため、比較的古いカードを使用している場合、これは通常、適切なサイズのリストでは問題にならないはずです。これが実際に問題であることがわかった場合は、おそらく Vertex 配列または VBO を使用できます

于 2009-02-12T21:20:32.007 に答える