Raystonn wrote:
> 
> In my quest for algorithmic optimizations, I have stumbled onto what I
> believe must be a bug.  Please take a look at the client_state function (the
> first function) in enable.c.  You will find the following code:
> 
>    if (*var == flag)
>       return;
> 
> If I am correct this should actually be:
> 
>    if (*var == state)
>       return;
> 
> This bug is causing all vertices to be flushed even if a client state which
> is already enabled is being enabled again.  I have analyzed the Team Arena
> Quake 3 Demo and find that it is constantly enabling GL_TEXTURE_COORD_ARRAY
> and GL_COLOR_ARRAY, even when they are already enabled.  This, coupled with
> the above bug, may be caused some pretty bad performance penalties.  I would
> be interested in seeing some benchmarks from before and after.

You're right, the test should be against 'state'.

Keith

_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to