Skip to content
Snippets Groups Projects
Commit 1129575d authored by Timur Kristóf's avatar Timur Kristóf
Browse files

aco/ngg: Implement NGG GS output.


We store emitted GS vertices in LDS.
Then, at the end of the shader, the emitted vertices are compacted
and each thread loads a single vertex from LDS in order to export
a primitive as needed, and the vertex attributes.

The reason this	is done is because there is an impedance mismatch
between	how API	GS and the NGG HW works. API GS can emit an arbitrary
number of vertices and primites	in each	thread,	but NGG	HW can only
export one vertex per thread.

Signed-off-by: default avatarTimur Kristóf <timur.kristof@gmail.com>
Reviewed-by: default avatarRhys Perry <pendingchaos02@gmail.com>
Part-of: <!6964>
parent 62b5012e
No related branches found
No related tags found
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment