What are the stages of tessellation in Direct3D 11?

What are the stages of tessellation in Direct3D 11?

The Direct3D 11 pipeline implements tessellation using three new pipeline stages: Hull-Shader Stage – A programmable shader stage that produces a geometry patch (and patch constants) that correspond to each input patch (quad, triangle, or line).

How does tessellation work in DirectX factor factor?

In Direct2D, tessellation is the process of decomposing a two-dimensional area into triangles. The ID2D1TessellationSink interface has just two methods: Add­Triangles (which adds a collection of D2D1_TRIANGLE objects to the collection) and Close, which makes the mesh object immutable.

What’s the difference between tessellation and mosaic in Direct2D?

In general, “tessellation” refers to the process of covering a surface with a mosaic pattern, but the term is used somewhat differently in Direct2D and Direct3D programming. In Direct2D, tessellation is the process of decomposing a two-dimensional area into triangles.

How are patch constants consumed in the tessellation stage?

Patch constant data can be consumed by a domain shader; tessellation factors can be consumed by the domain shader and the tessellation stage. Tessellation factors determine how much to subdivide each patch. The shader declares the state required by the tessellator stage.

What happens when Edge tessellator is set to 0?

If the hull-shader stage sets any edge tessellation factor to = 0 or NaN, the patch will be culled. As a result, the tessellator stage may or may not run, the domain shader will not run, and no visible output will be produced for that patch.

What are the factors in The tessellator stage?

Tessellation factors determine how much to subdivide each patch. The shader declares the state required by the tessellator stage. This includes information such as the number of control points, the type of patch face and the type of partitioning to use when tessellating.

Is it safe to use divergent data in tessellation?

In general, as long as you use non-divergent data as a source for tessellation factor calculation you should be safe. Example of divergent data that could be dangerous would be normals, UV coords, vertex colors, etc. Anything an artist can split per vertex of a shared primitive. Figure 4 : Two abutting primitives.