我得到的白色紋理上三星Galaxy變量,但在我測試的紋理工作得很好。所以我追問是什麼,是通常的懷疑造成這種行爲的其他電話?是具有任何特殊硬件的星系變體,並且缺少什麼?的Android的OpenGL紋理白色的三星Galaxy變種
我的紋理加載代碼是這樣的
GLuint texture;
glGenTextures(1, &texture);
glBindTexture(GL_TEXTURE_2D, texture);
glPixelStorei(GL_UNPACK_ALIGNMENT, 2);
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE,GL_MODULATE);
if(alpha)glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, (GLvoid*) image_data);
else glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, width, height, 0, GL_RGB, GL_UNSIGNED_BYTE, (GLvoid*) image_data);
和繪製正在發生的事情像往常一樣GL_TRIANGLES
*我沒有在我面前的實際設備,所以我不能做glGetError
你能保證紋理是2的大小?如果您從位圖工廠獲取數據,則可以使用屏幕密度進行縮放,從而使PO2源圖像成爲NPO2。 – Tim
是紋理是鍋,沒有我不從位圖factory.I實際上從C加載它們讓他們++(由accesing的APK),但我不事有問題,因爲它只是C++的東西不是OpenGL的,如果這個問題在那裏他們我會在所有設備上使用它。 – SteveL
每一個紋理都是白色的,還是僅僅是其中的一些?它們都是RGBA,RGB還是混合?爲什麼使用2的解包對齊? – Tim