私はOpenGLを使用して小さなゲームを書いています(JavaではJOGLを使用していますが、それはほとんど問題ではないと思います)。最近、OpenGLエラー「1285」が発生したというエラーレポートがかなりあります。これは「メモリ不足」を示しているようです。 "。これは、新しいテクスチャを作成した後で確認するときにglGetError
わかります。これにより、テクスチャのメモリが不足しているように感じられます。
しかし、これは私を少し驚かせます。OpenGLは、必要に応じてGPUとプロセスメモリ間でテクスチャを交換して、テクスチャメモリを管理することになっているのではないですか?の仕様にglTexImage2D
は、確かに、考えられるエラー条件のいずれかとして「メモリ不足」エラーは含まれていません。
これは、仕様にかかわらず、OpenGLドライバーで一般的に受け入れられている方法ですか?仕様にもかかわらず、これを行っているのは一部のドライバーだけですか?後でこのエラーが発生した場合、しばらく使用されていないテクスチャを削除するように注意する必要がありますglTexImage2D
か?それとも、OpenGLのエラー報告が私に完全に簡潔に伝えていない何かをここで完全に見ているのでしょうか?
編集:詳細については、残念ながら、問題を自分でデバッグすることはできません。問題が発生していないためです。人々が私に送ったレポートを読むと、これに苦しんでいる人の大多数はIntelカードを使用しているようですが、私はいくつかのnVidiaカードも見つけました(680でも)。