PerObjectData.bslinc 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. Parameters =
  2. {
  3. mat4x4 gMatWorldViewProj : auto("WVP");
  4. mat4x4 gMatWorld : auto("W");
  5. mat4x4 gMatInvWorld : auto("IW");
  6. mat4x4 gMatWorldNoScale : auto("WNoScale");
  7. mat4x4 gMatInvWorldNoScale : auto("IWNoScale");
  8. float gWorldDeterminantSign : auto("WorldDeterminantSign");
  9. };
  10. Blocks =
  11. {
  12. Block PerObject : auto("PerObject");
  13. Block PerCall : auto("PerCall");
  14. };
  15. Technique : base("PerObjectData") =
  16. {
  17. Language = "HLSL11";
  18. Pass =
  19. {
  20. Common =
  21. {
  22. cbuffer PerObject
  23. {
  24. float4x4 gMatWorld;
  25. float4x4 gMatInvWorld;
  26. float4x4 gMatWorldNoScale;
  27. float4x4 gMatInvWorldNoScale;
  28. float gWorldDeterminantSign;
  29. }
  30. cbuffer PerCall
  31. {
  32. float4x4 gMatWorldViewProj;
  33. }
  34. };
  35. };
  36. };
  37. Technique : base("PerObjectData") =
  38. {
  39. Language = "GLSL";
  40. Pass =
  41. {
  42. Common =
  43. {
  44. layout(binding = 2, std140) uniform PerObject
  45. {
  46. mat4 gMatWorld;
  47. mat4 gMatInvWorld;
  48. mat4 gMatWorldNoScale;
  49. mat4 gMatInvWorldNoScale;
  50. float gWorldDeterminantSign;
  51. };
  52. layout(binding = 3, std140) uniform PerCall
  53. {
  54. mat4 gMatWorldViewProj;
  55. };
  56. };
  57. };
  58. };