On Tue,  8 Nov 2011 14:32:08 -0800, Kenneth Graunke <kenn...@whitecape.org> 
wrote:
> Although the hardware supports separate binding tables for each pipeline
> stage, we don't see much advantage over a single shared table.
> 
> Consider the contents of the binding table:
> - Textures (16)
> - Draw buffers (8)
> - Pull constant buffers (1 for VS, 1 for WM)
> 
> OpenGL's texture bindings are global: the same set of textures is
> available to all shader targets.  So our binding table entries for
> textures would be exactly the same in every table.
> 
> There are only two pull constant buffers (not many), and although draw
> buffers aren't interesting to the VS, it shouldn't hurt to have them in
> the table.  The hardware supports up to 254 binding table entries, and
> we currently only use 26.
> 
> Signed-off-by: Kenneth Graunke <kenn...@whitecape.org>

> +   brw->state.dirty.brw |= BRW_NEW_VS_BINDING_TABLE;
>     brw->state.dirty.brw |= BRW_NEW_PS_BINDING_TABLE;
>  }

I was surprised you didn't fold these two state flags together, but I
guess it leaves us flexibility if we decide to go back on this later.

Attachment: pgpsykDu5Qzbz.pgp
Description: PGP signature

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to