Take the 2-minute tour ×
Game Development Stack Exchange is a question and answer site for professional and independent game developers. It's 100% free, no registration required.

What is so special about directx 11's dynamic tessellation? Can't it be implemented by hand, and just render geometry tessellated by your own code using older versions of directx? What are the advantages of using dx11? Thank you!

share|improve this question
add comment

1 Answer

up vote 9 down vote accepted

Here are just a few reasons off the top of my head:

  • You don't have to store the tessellated mesh in memory at any time, because it's generated on the fly on the GPU and streamed directly into the rasterizer/shader units. This is a huge memory savings versus precomputed tessellation, and can (sometimes) help performance as well due to the reduced memory bandwidth for reading vertices and indices (since on the GPU it will typically stay on-chip rather than being streamed in and out of memory).

  • The GPU is massively parallel, so GPU tessellation is also going to be way faster than running the equivalent CPU tessellation each frame (at least if you're tessellating enough stuff).

  • You can also make use of the GPU's texture sampling hardware e.g. for applying a displacement map to the tessellated vertices, which would be much trickier and slower if you had to implement the texture sampling yourself on the CPU.

share|improve this answer
    
One disadvantage: your players either need DX11 hardware (which is relatively expensive) or you need to be able to emulate it to a certain degree in the absence of DX11 hardware. –  Jonathan Dickinson Mar 14 '12 at 12:57
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.