[Mesa-dev] draw_stream_output seems to be broken by design

Zack Rusin zackr at vmware.com
Mon Sep 20 09:07:08 PDT 2010

On Monday 20 September 2010 11:10:59 Luca Barbieri wrote:
> > The difference between this and the D3D semantics is that in D3D you bind
> > the buffer explicitely and in GL implicitly i.e. the buffer associated
> > with the stream output object id is bound for you. So for GL the state
> > tracker would have to bind the appropriate buffers on
> > DrawTransformFeedback.
> So the idea would be to store the stream output count in the stream
> output buffer, and then, after the user binds it as a vertex buffer,
> get it from there in draw_stream_output?

No, you don't store it at all. Storing it in the client side data structures 
implies fetching. The whole point of draw_stream_output is to not have to 
store it - it's to allow hardware to do the right thing. In other words 
Gallium, like D3D assumes that the hardware will have functionality that deals 
with this.

More information about the mesa-dev mailing list