Skip to main content
GameDev.net gamedev.net
🔒 Locked

OpenGL Texture Coordinates

Started by Hairu Nov 25, 2001 at 4:55 PM 2 replies 700+ views
Original Post
Hairu
Hairu
I need help getting the texture coordinate arrays to work properly in OpenGL. this is the content of my coordinate array 1.000000 1.000000 0.000000 1.000000 0.000000 0.000000 1.000000 1.000000 0.000000 0.000000 1.000000 0.000000 I call this array like the following glTexCoordPointer(2, GL_FLOAT, 0, TexCoords); Here is the output... On left is what it should look like, the right is what i''m actually getting It might be worth noting that I use indexed vertex arrays. This is what the vertex array looks like... 1.000000 1.000000 0.000000 1.000000 -1.000000 0.000000 -1.000000 -1.000000 0.000000 -1.000000 1.000000 0.000000 this is what the index array looks like.... 0 3 2 0 2 1 it is called like this.... glVertexPointer(3, GL_FLOAT, 0, Vert_public); glDrawElements(GL_TRIANGLES, header.numFaces*3, GL_UNSIGNED_INT, index); ''Vert_public'' is the vertex array, and ''index'' is the index array. I''m so very desperate right now, any assistance at all is helpful, i''ve been over this a million times, and can''t figure it out.
Hairu
Hairu
any ideas?
xyzzy00
xyzzy00
Seems strange to me that you are treating your position array as indexed, but your texcoord array as non-indexed. Is this right?

xyzzy
Bad Monkey
Bad Monkey
yeah... each vertex can have only one texture-coord/normal/colour/etc ... so you should only have 4 texture-coords (8 values) in your array.

If you want to use different tex-coords for the same vertices, you must have separate tex-coord arrays, and make extra calls to glDrawElements (changing the tex-coord pointer between these calls)... pain in the arse, I know, but its the only way to do it using vertex arrays

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.