glCompressedTexImage2DARB ?

First off, I’ll admit to being an OpenGL noob, so if I’m missing the obvious just point me to the relevant FAQ ;D

I’m trying to use some DDS textures (DXT1 and DXT3). The handful of OGL examples that I’ve seen that deal with DDS uses the glCompressedTexImage2DARB() function, but I don’t see that binding in the latest rc builds. Is there a reason it’s not there or has it been absorbed into glCompressedTexImage2D() and I’m not enabling something I should?

Thanks

This was one of the extensions folded into core OpenGL 1.3. To reduce the number of obsolete functions exposed in the JOGL binding, we stopped exposing the extensions that were folded into core OpenGL 1.3 and below a while ago. The implicit assumption is that this function won’t be available unless you’re running on an OpenGL 1.3 implementation, but this is a fairly reasonable assumption nowadays.

FYI, this is discussed at the top of the JSR-231 specification overview.

Thanks for the confirmation. One of these days I’ll remember to write a simple test case before posting ::slight_smile:

The following snippets are now working for me.

gl.glCompressedTexImage2D(GL.GL_TEXTURE_2D, 0, GL.GL_COMPRESSED_RGB_S3TC_DXT1_EXT, w, h, 0, w*h/2, imgbuf);
gl.glCompressedTexImage2D(GL.GL_TEXTURE_2D, 0, GL.GL_COMPRESSED_RGBA_S3TC_DXT3_EXT, w, h, 0, w*h, imgbuf);

Note: imgbuf must contain exactly wh/2 if DXT1 or wh if DXT3 bytes.