Opengl, Problem beim Texturieren
-
Hallo,
Ich möchte eine Kugel mit einer Art Schach-Textur versehen. Allerdings wird die Textur, auf meiner Kugel irgendwie anders dargestellt, sieht nun eher aus wie eine Zebra Textur.
Hier ein auszug aus meinem Quellcode
/* Kugeleinstellungen */ #define RADIUS 0.3 #define SLICES 24 #define STACKS 24 #define checkImageWidth 128 #define checkImageHeight 128 static GLubyte checkImage[checkImageHeight][checkImageWidth][4]; void createLists() { GLUquadricObj *obj; GLfloat gruen[]={0.0,1.0,0.0,1.0}; /* Texturen */ glNewList(TEX1,GL_COMPILE); 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_NEAREST); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, checkImageWidth, checkImageHeight, 0, GL_RGBA, GL_UNSIGNED_BYTE, checkImage); glEndList(); /* Grüne Kugel */ obj=gluNewQuadric(); glNewList(GRUENEKUGEL,GL_COMPILE); glDisable(GL_TEXTURE_2D); glColor3fv(gruen); gluQuadricDrawStyle(obj,GLU_FILL); gluSphere(obj,RADIUS,SLICES,STACKS); glEndList(); /* Kugel, mit Schachtextur */ obj=gluNewQuadric(); glNewList(BLAUEKUGEL,GL_COMPILE); glEnable(GL_TEXTURE_2D); glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_DECAL); glCallList(TEX1); gluQuadricDrawStyle(obj,GLU_FILL); gluSphere(obj,RADIUS,SLICES,STACKS); glEndList(); gluDeleteQuadric(obj); }
-
Ich habe das Problem bisher nicht lösen können. Hier ein Bild, wo ich versucht habe ein BMP zu laden und die 2. Kugel damit zu texturieren , mit dem selben Problem.
http://img186.imageshack.us/img186/6415/bildschirmfoto2ec3.jpg
-
gluQuadricTexture(obj, true);
-
Vielen Dank, das hat mir geholfen und das Problem gelöst