AnsweredAssumed Answered

glTexSubImage2D crash with RGB texture in 13.12 drivers (regress from 13.9) on Radeon HD 7700

Question asked by eodabash on Jan 3, 2014
Latest reply on Jul 11, 2014 by eodabash

We're seeing a crash when uploading a large texture with format GL_RGB. It seems to require one of the dimensions to be larger than 5300 pixels or so. This wasn't occurring in the 13.9 drivers. Tested on Windows 8.1.

 

This code will reproduce the problem. I'm also linking to a complete VS 2012 project that demonstrates the crash.

 

Header 1
GLuint texture = 0;
glGenTextures(1, &texture);
glBindTexture(GL_TEXTURE_2D, texture);

 

 

int const w = 5400;
int const h = 4400;

 

 

glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, w, h, 0, GL_RGBA, GL_UNSIGNED_BYTE, 0);

 

 

glTexParameteri (GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
glTexParameteri (GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
glTexParameteri (GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
glTexParameteri (GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);

 

 

std::vector<unsigned char> data(w*h*3);
glPixelStorei(GL_UNPACK_ALIGNMENT, 1);
glPixelStorei(GL_PACK_ALIGNMENT, 1);
glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 0, w, h, GL_RGB, GL_UNSIGNED_BYTE, &data[0]); // crash here

 

Link to project: https://dl.dropboxusercontent.com/u/69927239/texsubimage2d_crash.zip

Outcomes