remap.hlsl.sample.basic.none.frag 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. SamplerState g_sSamp : register(s0);
  2. uniform sampler2D g_sSamp2d
  3. {
  4. AddressU = MIRROR;
  5. AddressV = WRAP;
  6. MinLOD = 0;
  7. MaxLOD = 10;
  8. MaxAnisotropy = 2;
  9. MipLodBias = 0.2;
  10. }, g_sSamp2D_b;
  11. Texture1D g_tTex1df4a : register(t1);
  12. uniform Texture1D <float4> g_tTex1df4 : register(t0);
  13. Texture1D <int4> g_tTex1di4;
  14. Texture1D <uint4> g_tTex1du4;
  15. Texture2D <float4> g_tTex2df4;
  16. Texture2D <int4> g_tTex2di4;
  17. Texture2D <uint4> g_tTex2du4;
  18. Texture3D <float4> g_tTex3df4;
  19. Texture3D <int4> g_tTex3di4;
  20. Texture3D <uint4> g_tTex3du4;
  21. TextureCube <float4> g_tTexcdf4;
  22. TextureCube <int4> g_tTexcdi4;
  23. TextureCube <uint4> g_tTexcdu4;
  24. struct MemberTest
  25. {
  26. int Sample; // in HLSL, method names are valid struct members.
  27. int CalculateLevelOfDetail; // ...
  28. int CalculateLevelOfDetailUnclamped; // ...
  29. int Gather; // ...
  30. int GetDimensions; // ...
  31. int GetSamplePosition; // ...
  32. int Load; // ...
  33. int SampleBias; // ...
  34. int SampleCmp; // ...
  35. int SampleCmpLevelZero; // ...
  36. int SampleGrad; // ...
  37. int SampleLevel; // ...
  38. };
  39. struct PS_OUTPUT
  40. {
  41. float4 Color : SV_Target0;
  42. float Depth : SV_Depth;
  43. };
  44. PS_OUTPUT main()
  45. {
  46. PS_OUTPUT psout;
  47. MemberTest mtest;
  48. mtest.CalculateLevelOfDetail = 1; // in HLSL, method names are valid struct members.
  49. mtest.CalculateLevelOfDetailUnclamped = 1; // ...
  50. mtest.Gather = 1; // ...
  51. mtest.GetDimensions = 1; // ...
  52. mtest.GetSamplePosition = 1; // ...
  53. mtest.Load = 1; // ...
  54. mtest.Sample = 1; // ...
  55. mtest.SampleBias = 1; // ...
  56. mtest.SampleCmp = 1; // ...
  57. mtest.SampleCmpLevelZero = 1; // ...
  58. mtest.SampleGrad = 1; // ...
  59. mtest.SampleLevel = 1; // ...
  60. float4 txval10 = g_tTex1df4 . Sample(g_sSamp, 0.1);
  61. int4 txval11 = g_tTex1di4 . Sample(g_sSamp, 0.2);
  62. uint4 txval12 = g_tTex1du4 . Sample(g_sSamp, 0.3);
  63. float4 txval20 = g_tTex2df4 . Sample(g_sSamp, float2(0.1, 0.2));
  64. int4 txval21 = g_tTex2di4 . Sample(g_sSamp, float2(0.3, 0.4));
  65. uint4 txval22 = g_tTex2du4 . Sample(g_sSamp, float2(0.5, 0.6));
  66. float4 txval30 = g_tTex3df4 . Sample(g_sSamp, float3(0.1, 0.2, 0.3));
  67. int4 txval31 = g_tTex3di4 . Sample(g_sSamp, float3(0.4, 0.5, 0.6));
  68. uint4 txval32 = g_tTex3du4 . Sample(g_sSamp, float3(0.7, 0.8, 0.9));
  69. float4 txval40 = g_tTexcdf4 . Sample(g_sSamp, float3(0.1, 0.2, 0.3));
  70. int4 txval41 = g_tTexcdi4 . Sample(g_sSamp, float3(0.4, 0.5, 0.6));
  71. uint4 txval42 = g_tTexcdu4 . Sample(g_sSamp, float3(0.7, 0.8, 0.9));
  72. psout.Color = 1.0;
  73. psout.Depth = 1.0;
  74. return psout;
  75. }