[D3D12] Non-adaptive triangle tessellation

This commit is contained in:
Triang3l
2020-04-07 18:55:43 +03:00
parent b00baadf53
commit 9d36c257b0
21 changed files with 445 additions and 247 deletions

View File

@@ -65,14 +65,15 @@
//
// Name Index Mask Register SysValue Format Used
// -------------------- ----- ------ -------- -------- ------- ------
// XEVERTEXID 0 x 0 NONE int
// XEVERTEXID 0 x 0 NONE int x
//
//
// Output signature:
//
// Name Index Mask Register SysValue Format Used
// -------------------- ----- ------ -------- -------- ------- ------
// no Output
// XEVERTEXID 0 x 0 NONE float x
//
// Tessellation Domain # of control points
// -------------------- --------------------
// Quadrilateral 4
@@ -91,6 +92,12 @@ dcl_tessellator_output_primitive output_triangle_cw
dcl_globalFlags refactoringAllowed
dcl_constantbuffer CB0[0:0][15], immediateIndexed, space=0
hs_control_point_phase
dcl_input vOutputControlPointID
dcl_input v[4][0].x
dcl_output o0.x
dcl_temps 1
mov r0.x, vOutputControlPointID
itof o0.x, v[r0.x + 0][0].x
ret
hs_fork_phase
dcl_hs_fork_phase_instance_count 4
@@ -114,4 +121,4 @@ dcl_indexrange o4.x 2
mov r0.x, vForkInstanceID.x
mov o[r0.x + 4].x, CB0[0][14].y
ret
// Approximately 7 instruction slots used
// Approximately 9 instruction slots used