0

glGenerateMipmapglGenerateMipmap* 関数が必要ですが、 とglGenerateMipmapEXT?の間に違いがあるかどうかを知りたいです。

EXT は ARB の前にあったので、EXT バージョンは古いハードウェアで動作するはずですか? 行動に違いはありますか?

別の質問:

使ってもいいですか:

myGLGenerateMipmap = loadProcAddress("glGenerateMipmap")

GL_EXT_framebuffer_objectまたは、最初のサポートを確認する必要がありますか?

GLEW/GLEEやその他のライブラリを使用したくないことに注意してください...

4

1 に答える 1

3

OpenGL 3.0 までは、この関数は OpenGL 仕様の一部ではありませんでした。ちゃんとした。OpenGL 3.0 に含まれているバージョンは、実際には仕様から派生したGL_ARB_framebuffer_objectものです。


ドライバーにGL_ARB_framebuffer_object拡張機能がリストされている場合、または正当な OpenGL 3.0+ 実装があることがわかっている場合は、proc を介してこの機能を使用できることが保証されます。アドレスglGenerateMipmap。そんな時はこの手順を踏むべきです。

glGenerateMipmapEXTFBO 仕様のひどい EXT バージョンから来ています。OpenGL 3.0 もGL_ARB_framebuffer_object. ただし、ドライバーが報告しない場合は、この手順も必要ありませんGL_EXT_framebuffer_object


これは、拡張ラングラーが生活を楽にする場所です...しかし、ソフトウェアに別の依存関係を追加したくないことはわかります。拡張機能の仕様を読む術を学び、 OpenGL® Registryのバージョン変更履歴をたどる必要があります。

于 2013-08-15T19:12:50.517 に答える