Original Post
I'm drawing a 2D texture and am having some difficulty getting the correct result. I'm trying to draw a checkerboard (or anything actually) using the following code, and all I get is a mix of colors... so the code below shows up as a big gray square. If I change the values, it seems to show an average of the colors, but I don't see the individual pixels I'm expecting. int w = canvasSize.GetWidth(); int h = canvasSize.GetHeight(); GLfloat size_ = 1.0; GLfloat aspect = (GLfloat) h/(GLfloat) w; /* setup viewport, etc */ glViewport(0, 0, (GLsizei) w, (GLsizei) h); glMatrixMode(GL_PROJECTION); glLoadIdentity(); glOrtho(-size_, size_, -size_*aspect, size_*aspect, -size_, size_); glMatrixMode(GL_MODELVIEW); glEnable(GL_TEXTURE_2D); glEnable(GL_BLEND); glShadeModel(GL_SMOOTH); glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); unsigned char buffer[16]; buffer[0] = 255; buffer[1] = 0; buffer[2] = 255; buffer[3] = 0; buffer[4] = 255; buffer[5] = 0; buffer[6] = 255; buffer[7] = 0; buffer[8] = 255; buffer[9] = 0; buffer[10] = 255; buffer[11] = 0; buffer[12] = 255; buffer[13] = 0; buffer[14] = 255; buffer[15] = 0; glGenTextures(1, &renderTexture); glBindTexture(GL_TEXTURE_2D,renderTexture); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); glTexImage2D(GL_TEXTURE_2D, 0, GL_LUMINANCE16, 4, 4, 0, GL_LUMINANCE, GL_UNSIGNED_BYTE, buffer); /* bind the textures */ glEnable(GL_TEXTURE_2D); glBindTexture(GL_TEXTURE_2D,renderTexture); glBegin(GL_QUADS); glTexCoord2f(0.0, 0.0); glVertex3f(-0.5,-0.5,-0.5); glTexCoord2f(1.0, 0.0); glVertex3f(0.5,-0.5,-0.5); glTexCoord2f(1.0, 1.0); glVertex3f(0.5,0.5,-0.5); glTexCoord2f(0.0, 1.0); glVertex3f(-0.5,0.5,-0.5); glEnd(); glDisable(GL_TEXTURE_2D); What might be going on?? -Greg