Jump to content
  • Advertisement
Sign in to follow this  
Husbj

Geometry shader patchlist input?

This topic is 1417 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I just ran into somewhat of a snag trying to send a D3D11_PRIMITIVE_TOPOLOGY_8_CONTROL_POINT_PATCHLIST indiced mesh through a geometry shader stage. Apparently judging by the produced error message, the GS stage needs a geometry specifier preceding the input array. Now, looking those up, it would seem the only valid patch input to the GS is either point (1 vertex), line (2 vertices), triangle (3 vertices), lineadj (2 base and 2 adjacent vertices) or triangleadj (3 normal and 3 base vertices).

Does this mean that the geometry shader can in fact only be used with point, line or triangle topologies? My intent was to produce the final geometry based on sets of control points patches.

Share this post


Link to post
Share on other sites
Advertisement

This is true.

 

Note that the pipeline is designed so that the geometry shader is (at least conceptually) after the tessellator and just before rasterization, so it can only handle simple primitives.

 

Could you use the tessellator instead of GS? This would only require that the patch can be parametrized across a line, a triangle or a quad (and of course, that your target GPU can handle it). 

Edited by Nik02

Share this post


Link to post
Share on other sites

Ah, I see...

 

I'm going to have to rethink my approach then, it is possible it could be solved using tessellation, however I had hoped for shader model 4 support. Maybe I can use a pre-processing step where a buffer resource is created to store the desired adjacency data that can then be made available to the GS in subsequent steps.

 

 

Thanks!

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!