playmesumch00ns
09-24-2005, 01:01 AM
I need to display a 2048x1556 image and run fragment programs on it. I can't reliably create a 32-bit float image, so I'd like to use half-float.
This is my sequence of calls to generate the texture:
GLuint id;
glGenTextures( 1, &id );
glBindTexture( GL_TEXTURE_RECTANGLE_ARB, id );
HlBase::checkGlError();
glTexParameteri( GL_TEXTURE_RECTANGLE_ARB, GL_TEXTURE_MIN_FILTER, GL_NEAREST );
glTexParameteri( GL_TEXTURE_RECTANGLE_ARB, GL_TEXTURE_MAG_FILTER, GL_NEAREST );
HlBase::checkGlError();
glTexParameteri( GL_TEXTURE_RECTANGLE_ARB, GL_TEXTURE_WRAP_S, GL_CLAMP );
glTexParameteri( GL_TEXTURE_RECTANGLE_ARB, GL_TEXTURE_WRAP_T, GL_CLAMP );
glTexImage2D( GL_TEXTURE_RECTANGLE_ARB, 0, GL_RGB16F_ARB, w, h, 0, GL_RGB, GL_HALF_FLOAT_ARB, pixeldata );
HlBase::checkGlError(); HlBase::checkGlError() just prints out the gluErrorString if there's an error on the stack.
The code fails with an INVALID_ENUMERANT just after the glTexImage2D call.
Any ideas?
This is my sequence of calls to generate the texture:
GLuint id;
glGenTextures( 1, &id );
glBindTexture( GL_TEXTURE_RECTANGLE_ARB, id );
HlBase::checkGlError();
glTexParameteri( GL_TEXTURE_RECTANGLE_ARB, GL_TEXTURE_MIN_FILTER, GL_NEAREST );
glTexParameteri( GL_TEXTURE_RECTANGLE_ARB, GL_TEXTURE_MAG_FILTER, GL_NEAREST );
HlBase::checkGlError();
glTexParameteri( GL_TEXTURE_RECTANGLE_ARB, GL_TEXTURE_WRAP_S, GL_CLAMP );
glTexParameteri( GL_TEXTURE_RECTANGLE_ARB, GL_TEXTURE_WRAP_T, GL_CLAMP );
glTexImage2D( GL_TEXTURE_RECTANGLE_ARB, 0, GL_RGB16F_ARB, w, h, 0, GL_RGB, GL_HALF_FLOAT_ARB, pixeldata );
HlBase::checkGlError(); HlBase::checkGlError() just prints out the gluErrorString if there's an error on the stack.
The code fails with an INVALID_ENUMERANT just after the glTexImage2D call.
Any ideas?