Нет описания
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

FullscreenData.cs 5.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189
  1. using UnityEditor.ShaderGraph;
  2. using UnityEngine;
  3. using static UnityEditor.Rendering.BuiltIn.ShaderUtils;
  4. using UnityEditor.Rendering.BuiltIn;
  5. using System;
  6. using UnityEditor.ShaderGraph.Serialization;
  7. using UnityEngine.Rendering;
  8. using BlendMode = UnityEngine.Rendering.BlendMode;
  9. using BlendOp = UnityEditor.ShaderGraph.BlendOp;
  10. namespace UnityEditor.Rendering.Fullscreen.ShaderGraph
  11. {
  12. internal class FullscreenData : JsonObject
  13. {
  14. public enum Version
  15. {
  16. Initial,
  17. }
  18. [SerializeField]
  19. Version m_Version = Version.Initial;
  20. public Version version
  21. {
  22. get => m_Version;
  23. set => m_Version = value;
  24. }
  25. [SerializeField]
  26. FullscreenMode m_fullscreenMode;
  27. public FullscreenMode fullscreenMode
  28. {
  29. get => m_fullscreenMode;
  30. set => m_fullscreenMode = value;
  31. }
  32. [SerializeField]
  33. FullscreenBlendMode m_BlendMode = FullscreenBlendMode.Disabled;
  34. public FullscreenBlendMode blendMode
  35. {
  36. get => m_BlendMode;
  37. set => m_BlendMode = value;
  38. }
  39. [SerializeField]
  40. BlendMode m_SrcColorBlendMode = BlendMode.Zero;
  41. public BlendMode srcColorBlendMode
  42. {
  43. get => m_SrcColorBlendMode;
  44. set => m_SrcColorBlendMode = value;
  45. }
  46. [SerializeField]
  47. BlendMode m_DstColorBlendMode = BlendMode.One;
  48. public BlendMode dstColorBlendMode
  49. {
  50. get => m_DstColorBlendMode;
  51. set => m_DstColorBlendMode = value;
  52. }
  53. [SerializeField]
  54. BlendOp m_ColorBlendOperation = BlendOp.Add;
  55. public BlendOp colorBlendOperation
  56. {
  57. get => m_ColorBlendOperation;
  58. set => m_ColorBlendOperation = value;
  59. }
  60. [SerializeField]
  61. BlendMode m_SrcAlphaBlendMode = BlendMode.Zero;
  62. public BlendMode srcAlphaBlendMode
  63. {
  64. get => m_SrcAlphaBlendMode;
  65. set => m_SrcAlphaBlendMode = value;
  66. }
  67. [SerializeField]
  68. BlendMode m_DstAlphaBlendMode = BlendMode.One;
  69. public BlendMode dstAlphaBlendMode
  70. {
  71. get => m_DstAlphaBlendMode;
  72. set => m_DstAlphaBlendMode = value;
  73. }
  74. [SerializeField]
  75. BlendOp m_AlphaBlendOperation = BlendOp.Add;
  76. public BlendOp alphaBlendOperation
  77. {
  78. get => m_AlphaBlendOperation;
  79. set => m_AlphaBlendOperation = value;
  80. }
  81. [SerializeField]
  82. bool m_EnableStencil = false;
  83. public bool enableStencil
  84. {
  85. get => m_EnableStencil;
  86. set => m_EnableStencil = value;
  87. }
  88. [SerializeField]
  89. int m_StencilReference = 0;
  90. public int stencilReference
  91. {
  92. get => m_StencilReference;
  93. set => m_StencilReference = Mathf.Clamp(value, 0, 255);
  94. }
  95. [SerializeField]
  96. int m_StencilReadMask = 255;
  97. public int stencilReadMask
  98. {
  99. get => m_StencilReadMask;
  100. set => m_StencilReadMask = Mathf.Clamp(value, 0, 255);
  101. }
  102. [SerializeField]
  103. int m_StencilWriteMask = 255;
  104. public int stencilWriteMask
  105. {
  106. get => m_StencilWriteMask;
  107. set => m_StencilWriteMask = Mathf.Clamp(value, 0, 255);
  108. }
  109. [SerializeField]
  110. CompareFunction m_StencilCompareFunction = CompareFunction.Always;
  111. public CompareFunction stencilCompareFunction
  112. {
  113. get => m_StencilCompareFunction;
  114. set => m_StencilCompareFunction = value;
  115. }
  116. [SerializeField]
  117. StencilOp m_StencilPassOperation = StencilOp.Keep;
  118. public StencilOp stencilPassOperation
  119. {
  120. get => m_StencilPassOperation;
  121. set => m_StencilPassOperation = value;
  122. }
  123. [SerializeField]
  124. StencilOp m_StencilFailOperation = StencilOp.Keep;
  125. public StencilOp stencilFailOperation
  126. {
  127. get => m_StencilFailOperation;
  128. set => m_StencilFailOperation = value;
  129. }
  130. [SerializeField]
  131. StencilOp m_StencilDepthFailOperation = StencilOp.Keep;
  132. public StencilOp stencilDepthTestFailOperation
  133. {
  134. get => m_StencilDepthFailOperation;
  135. set => m_StencilDepthFailOperation = value;
  136. }
  137. [SerializeField]
  138. bool m_DepthWrite = false;
  139. public bool depthWrite
  140. {
  141. get => m_DepthWrite;
  142. set => m_DepthWrite = value;
  143. }
  144. [SerializeField]
  145. FullscreenDepthWriteMode m_depthWriteMode = FullscreenDepthWriteMode.LinearEye;
  146. public FullscreenDepthWriteMode depthWriteMode
  147. {
  148. get => m_depthWriteMode;
  149. set => m_depthWriteMode = value;
  150. }
  151. // When checked, allows the material to control ALL surface settings (uber shader style)
  152. [SerializeField]
  153. bool m_AllowMaterialOverride = false;
  154. public bool allowMaterialOverride
  155. {
  156. get => m_AllowMaterialOverride;
  157. set => m_AllowMaterialOverride = value;
  158. }
  159. [SerializeField]
  160. CompareFunction m_DepthTestMode = CompareFunction.Disabled;
  161. public CompareFunction depthTestMode
  162. {
  163. get => m_DepthTestMode;
  164. set => m_DepthTestMode = value;
  165. }
  166. }
  167. }