Matching texcoord sets to texture units


I have a display list compiled with vertex data including two texture coordinates sets.

To achieve certain multitexturing effects, I sometimes want to use the second set of texture coordinates in the first texture unit. As far as I can tell, this isn’t possible, for this case specifically, or more generally setting an arbitrary texcoord set for use in an arbitrary texunit.

Would I be right in saying that the only way to achieve this is to use vertex arrays instead of display lists?


Yes, I think vertex arrays with the appropriate TexCoordPointer() calls would be the way to achieve this… As far as I can think right now, this would be the only way to do it cleanly.


I thought that might be the case.

I was hoping that there might be an extension out there that could do the job.

I know D3D8 can do it using the D3DTSS_TEXCOORDINDEX texture stage state, so I was hoping for something similiar in OpenGL since they can run on the same hardware.

I would also imagine that performance issues of swapping from display lists to vertex arrays can’t really be commented on since they are video card and driver dependent?