DeferredMaterial.pass 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  1. {
  2. "Type": "JsonSerialization",
  3. "Version": 1,
  4. "ClassName": "PassAsset",
  5. "ClassData": {
  6. "PassTemplate": {
  7. "Name": "DeferredMaterialPassTemplate",
  8. "PassClass": "RasterPass",
  9. "Slots": [
  10. // Inputs...
  11. {
  12. "Name": "DepthStencilInputOutput",
  13. "SlotType": "InputOutput",
  14. "ScopeAttachmentUsage": "DepthStencil"
  15. },
  16. // Outputs...
  17. {
  18. "Name": "BaseColorOutput",
  19. "SlotType": "Output",
  20. "ScopeAttachmentUsage": "RenderTarget",
  21. "LoadStoreAction": {
  22. "ClearValue": {
  23. "Value": [
  24. 0.0,
  25. 0.0,
  26. 0.0,
  27. 0.0
  28. ]
  29. },
  30. "LoadAction": "Clear"
  31. }
  32. },
  33. {
  34. "Name": "RoughnessMetalOutput",
  35. "SlotType": "Output",
  36. "ScopeAttachmentUsage": "RenderTarget",
  37. "LoadStoreAction": {
  38. "ClearValue": {
  39. "Value": [
  40. 0.0,
  41. 0.0,
  42. 0.0,
  43. 0.0
  44. ]
  45. },
  46. "LoadAction": "Clear"
  47. }
  48. },
  49. {
  50. "Name": "NormalOutput",
  51. "SlotType": "Output",
  52. "ScopeAttachmentUsage": "RenderTarget",
  53. "LoadStoreAction": {
  54. "ClearValue": {
  55. "Value": [
  56. 0.0,
  57. 0.0,
  58. 0.0,
  59. 0.0
  60. ]
  61. },
  62. "LoadAction": "Clear"
  63. }
  64. }
  65. ],
  66. "ImageAttachments": [
  67. {
  68. "Name": "BaseColorImage",
  69. "SizeSource": {
  70. "Source": {
  71. "Pass": "Parent",
  72. "Attachment": "PipelineOutput"
  73. }
  74. },
  75. "MultisampleSource": {
  76. "Pass": "This",
  77. "Attachment": "DepthStencilInputOutput"
  78. },
  79. "ImageDescriptor": {
  80. "Format": "R16G16B16A16_FLOAT",
  81. "SharedQueueMask": "Graphics"
  82. }
  83. },
  84. {
  85. "Name": "RoughnessMetalImage",
  86. "SizeSource": {
  87. "Source": {
  88. "Pass": "Parent",
  89. "Attachment": "PipelineOutput"
  90. }
  91. },
  92. "MultisampleSource": {
  93. "Pass": "This",
  94. "Attachment": "DepthStencilInputOutput"
  95. },
  96. "ImageDescriptor": {
  97. "Format": "R16G16B16A16_FLOAT",
  98. "SharedQueueMask": "Graphics"
  99. }
  100. },
  101. {
  102. "Name": "NormalImage",
  103. "SizeSource": {
  104. "Source": {
  105. "Pass": "Parent",
  106. "Attachment": "PipelineOutput"
  107. }
  108. },
  109. "MultisampleSource": {
  110. "Pass": "This",
  111. "Attachment": "DepthStencilInputOutput"
  112. },
  113. "ImageDescriptor": {
  114. "Format": "R10G10B10A2_UNORM",
  115. "SharedQueueMask": "Graphics"
  116. }
  117. }
  118. ],
  119. "Connections": [
  120. {
  121. "LocalSlot": "BaseColorOutput",
  122. "AttachmentRef": {
  123. "Pass": "This",
  124. "Attachment": "BaseColorImage"
  125. }
  126. },
  127. {
  128. "LocalSlot": "RoughnessMetalOutput",
  129. "AttachmentRef": {
  130. "Pass": "This",
  131. "Attachment": "RoughnessMetalImage"
  132. }
  133. },
  134. {
  135. "LocalSlot": "NormalOutput",
  136. "AttachmentRef": {
  137. "Pass": "This",
  138. "Attachment": "NormalImage"
  139. }
  140. }
  141. ]
  142. }
  143. }
  144. }