[Mesa-dev] [PATCH 00/12] RadeonSI: 3D clears and blits w/out VBOs and viewport state

Nicolai Hähnle nhaehnle at gmail.com
Sat Oct 7 09:40:23 UTC 2017


On 06.10.2017 16:10, Marek Olšák wrote:
> Hi,
> 
> There are 3 states that blits don't have to use or touch:
> - vertex buffers (also no buffer upload is needed)
> - vertex element state
> - viewport state
> 
> The blit implementation is reworked as follows.
> 
> VS blit shaders read inputs from user SGPRs and return positions in
> window space. (clipping and viewport transformation are disabled)
> 
> User SGPRs occupy existing SGPR slots starting with the first
> per-stage pointer (const buffers). Depending on the type of blit,
> there can be 3, 7, or 9 SGPRs per blit.
> 
> The x1,y1,x2,y2 position coordinates are passed as sint16 in 2 SGPRs.
> The 3rd one is Z as float. Followed by clear color (4 SGPRs) or
> texcoords (6 SGPRs - x1,y1,x2,y2,z,w).
> 
> Original shader pointers and draw constants are restored by the first
> non-blit draw call.

I've been wondering whether there isn't a clean way to give SGPRs an 
alternative use in a way that could be re-used for frequently-changing 
uniforms. But that's for another time.

For the series:

Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>

> 
> Please review.
> 
> Marek
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
> 


-- 
Lerne, wie die Welt wirklich ist,
Aber vergiss niemals, wie sie sein sollte.


More information about the mesa-dev mailing list