hlsl.domain.3.tese 652 B

1234567891011121314151617181920212223242526272829303132
  1. // Test vec2 tessellation coordinate: the IO form should be a vec3, copied to a vec2
  2. // at the entry point boundary.
  3. struct ds_in_t
  4. {
  5. float4 pos : POSITION;
  6. float3 norm : TEXCOORD0;
  7. };
  8. struct pcf_in_t
  9. {
  10. float flTessFactor [3] : SV_TessFactor;
  11. float flInsideTessFactor : SV_InsideTessFactor;
  12. };
  13. struct gs_in_t
  14. {
  15. float4 pos : POSITION;
  16. float3 norm : TEXCOORD0;
  17. };
  18. [domain ( "isoline" )]
  19. gs_in_t main (const OutputPatch <ds_in_t, 2> i, float2 tesscoord : SV_DomainLocation, pcf_in_t pcf_data )
  20. {
  21. gs_in_t o;
  22. o.pos = i[0].pos + tesscoord.x;
  23. o.norm = i[0].norm + tesscoord.y;
  24. return o;
  25. }