Mam bardzo, bardzo dziwne problem w mojej aplikacji C++ OpenGL.Tekstury OpenGL losowo nie pokazano
po prostu załadować tekstury i zastosować go do Quadric:
glGenTextures(1, &tex);
glBindTexture(GL_TEXTURE_2D, tex);
glTexImage2D(GL_TEXTURE_2D, 0, 3, width, height, 0, GL_RGB, GL_UNSIGNED_BYTE, image);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
Następnie
glEnable(GL_TEXTURE_2D);
glBindTexture(GL_TEXTURE_2D, tex);
gluQuadricDrawStyle(quad,GLU_FILL);
gluQuadricTexture(quad,GL_TRUE);
gluCylinder(quad,1,0,2,20,1);
glDisable(GL_TEXTURE_2D);
Teraz: działa idealnie 9 razy na dziesięć, ale czasami nie pokazano tekstury (kwadraty pozostają białe).
Plik image
został poprawnie załadowany, więc problem powinien dotyczyć OpenGL. Próbowałem też z kilkoma różnymi obrazami. Zawsze GL_NO_ERROR
.
Każdy pomysł? To doprowadza mnie do szału ...
Trochę głupie, ale w czasach, gdy nie chce się załadować, jeśli zminimalizować następnie zmaksymalizować okno, nie wydaje się? – Robb
Nie, nie ładuje się, nawet jeśli minimalizuję/maksymalizuję. – TheDude
Czy możesz przetestować to na innym komputerze lub z różnymi sterownikami? –