GL_C4UB_V3F vs GL_C3F_V3F

I was trying to squeze a little more performance out my vertex arrays. While I know I could be transform limited, is GL_C4UB_V3F better, worse, or the same as GL_C3F_V3F in everybody’s opinion? What do you think?

It seems to make 0 difference in my case.

It’s probably card dependent and will also depend heavily on your scenario.

Make sure you are dispatch limited before testing this i.e. really small polygons on screen, and lots of them sent at once from system memory without using display lists.

It may not be a win depending on the optimizations the driver writers have focused on, but it has the chance to be faster and probably if you’re dispatch limited.

[This message has been edited by dorbie (edited 02-10-2004).]

What do you mean by dispatch limited? Do you mean transfer limited,bandwith? If so, then this should help in scenarious w/o VBO, or display lists.

glDrawArrays+glInterleave rendering with or without vbo depending on system.

Originally posted by maximian:
What do you mean by dispatch limited?

He means that you are sending too many small batches making CPU work a lot, while GPU is practically idle. Imagine rendering a thousand polys. You can send one at the time in immediate mode or call a pre-compiled display list that renders all of them with one call.