Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Geometry shader instancing allows multiple executions of the same geometry shader to be executed per primitive. To instance a geometry shader, add an instance attribute to the main shader function and identify an instance index parameter in the shader function body.
To Instance a Geometry Shader:
Add the instance attribute to the main function.
[instance(24)]
This defines the number of instances (a maximum of 32) to be run for each primitive.
Attach the SV_GSInstanceID system value to a variable in the function parameter list that can be used to track the ID of the instance being executed.
uint InstanceID : SV_GSInstanceID
Compile and create the shader just as you would any other geometry shader.
Other details include:
- The maximum instance count is 32.
- The maximum vertex count is a per-instance maximum vertex count.
- Each instance invocation (like any geometry shader invocation) increases the invocation count and generates an implicit RestartStrip().
Related topics