From 61ffc56036ccb090e4699a42445b664c95111341 Mon Sep 17 00:00:00 2001 From: Elizabeth LeGros Date: Wed, 7 Oct 2020 16:44:21 -0500 Subject: [PATCH 1/4] Backport --- .../Direct3D11/None/InputNodes.png | 4 +- .../Direct3D11/None/InputNodes.png.meta | 8 +- .../Direct3D11/None/InputNodes.png | 4 +- .../Assets/Scenes/InputNodes.unity | 288 ++- .../Graphs/Input/Basic/ColorNode.mat | 5 +- .../Graphs/Input/Basic/ColorNode.shadergraph | 2035 ++++++++++++++++- .../Input/Basic/ColorNodeHDR.shadergraph | 1919 +++++++++++++++- .../Documentation~/Color-Node.md | 6 +- .../Documentation~/Property-Types.md | 2 + .../Shader-Graph-Preferences.md | 3 +- .../images/DeprecatedColorNode.png | 3 + .../images/DeprecatedColorProperty.png | 3 + .../images/DeprecatedWarning.png | 3 + .../Data/Graphs/AbstractShaderProperty.cs | 7 + .../Editor/Data/Graphs/ColorShaderProperty.cs | 27 +- .../Editor/Data/Graphs/GraphData.cs | 262 ++- .../Editor/Data/Legacy/GraphData0.cs | 2 + .../Editor/Data/Nodes/AbstractMaterialNode.cs | 28 - .../Data/Nodes/Input/Basic/ColorNode.cs | 68 +- .../Data/Nodes/Input/Geometry/PositionNode.cs | 8 +- .../Editor/Data/Nodes/Input/PropertyNode.cs | 23 +- .../Drawing/Blackboard/BlackboardFieldView.cs | 14 + .../Drawing/Blackboard/BlackboardProvider.cs | 19 +- .../AbstractMaterialNodePropertyDrawer.cs | 19 +- .../ShaderInputPropertyDrawer.cs | 13 +- .../Editor/Drawing/SearchWindowProvider.cs | 18 +- .../Editor/Drawing/Views/HelpBoxRow.cs | 24 + .../Editor/Drawing/Views/MaterialNodeView.cs | 21 +- .../Editor/Serialization/JsonObject.cs | 39 + .../Editor/Serialization/MultiJsonInternal.cs | 12 +- .../Editor/ShaderGraphPreferences.cs | 27 +- 31 files changed, 4681 insertions(+), 233 deletions(-) create mode 100644 com.unity.shadergraph/Documentation~/images/DeprecatedColorNode.png create mode 100644 com.unity.shadergraph/Documentation~/images/DeprecatedColorProperty.png create mode 100644 com.unity.shadergraph/Documentation~/images/DeprecatedWarning.png diff --git a/TestProjects/ShaderGraph/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/InputNodes.png b/TestProjects/ShaderGraph/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/InputNodes.png index 82ca835e1d8..9afa5dc86b1 100644 --- a/TestProjects/ShaderGraph/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/InputNodes.png +++ b/TestProjects/ShaderGraph/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/InputNodes.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5b8bf134ff1c3dd180a22629efd180352a029684c29c608ce48a9a0bc2f35072 -size 502183 +oid sha256:6c0594d5cc6af44c8cf13843a176d32e5e4637c1662706341ed5226a1f119f97 +size 573979 diff --git a/TestProjects/ShaderGraph/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/InputNodes.png.meta b/TestProjects/ShaderGraph/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/InputNodes.png.meta index 07e023f7f1a..a2791e796cd 100644 --- a/TestProjects/ShaderGraph/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/InputNodes.png.meta +++ b/TestProjects/ShaderGraph/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/InputNodes.png.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 -guid: 89dfd49511d0a0941b6e58d0ba940126 +guid: 0ee7e389d33ccec4384c4794b057b1be TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 10 + serializedVersion: 11 mipmaps: mipMapMode: 0 enableMipMap: 0 @@ -23,6 +23,7 @@ TextureImporter: isReadable: 1 streamingMipmaps: 0 streamingMipmapsPriority: 0 + vTOnly: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -54,10 +55,13 @@ TextureImporter: textureType: 0 textureShape: 1 singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 ignorePngGamma: 0 + applyGammaDecoding: 0 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform diff --git a/TestProjects/ShaderGraph/Assets/ReferenceImages/Linear/WindowsPlayer/Direct3D11/None/InputNodes.png b/TestProjects/ShaderGraph/Assets/ReferenceImages/Linear/WindowsPlayer/Direct3D11/None/InputNodes.png index 82ca835e1d8..9afa5dc86b1 100644 --- a/TestProjects/ShaderGraph/Assets/ReferenceImages/Linear/WindowsPlayer/Direct3D11/None/InputNodes.png +++ b/TestProjects/ShaderGraph/Assets/ReferenceImages/Linear/WindowsPlayer/Direct3D11/None/InputNodes.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5b8bf134ff1c3dd180a22629efd180352a029684c29c608ce48a9a0bc2f35072 -size 502183 +oid sha256:6c0594d5cc6af44c8cf13843a176d32e5e4637c1662706341ed5226a1f119f97 +size 573979 diff --git a/TestProjects/ShaderGraph/Assets/Scenes/InputNodes.unity b/TestProjects/ShaderGraph/Assets/Scenes/InputNodes.unity index 6c59d4c1004..6af789b8771 100644 --- a/TestProjects/ShaderGraph/Assets/Scenes/InputNodes.unity +++ b/TestProjects/ShaderGraph/Assets/Scenes/InputNodes.unity @@ -43,7 +43,7 @@ RenderSettings: --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 - serializedVersion: 11 + serializedVersion: 12 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 @@ -99,7 +99,8 @@ LightmapSettings: m_LightProbeSampleCountMultiplier: 4 m_LightingDataAsset: {fileID: 112000000, guid: ccd04a1b46622d842a16aa4d9df371fa, type: 2} - m_UseShadowmask: 0 + m_LightingSettings: {fileID: 4890085278179872738, guid: dcdd55ec8bc23564495b923650dd31ef, + type: 2} --- !u!196 &4 NavMeshSettings: serializedVersion: 2 @@ -119,6 +120,8 @@ NavMeshSettings: manualTileSize: 0 tileSize: 256 accuratePlacement: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} @@ -169,6 +172,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -193,6 +197,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &577818 MeshFilter: m_ObjectHideFlags: 0 @@ -263,6 +268,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -287,6 +293,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1221712 SphereCollider: m_ObjectHideFlags: 0 @@ -356,6 +363,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -380,6 +388,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &17182308 SphereCollider: m_ObjectHideFlags: 0 @@ -448,6 +457,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -472,6 +482,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &29891251 MeshFilter: m_ObjectHideFlags: 0 @@ -542,6 +553,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -566,6 +578,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &42793508 SphereCollider: m_ObjectHideFlags: 0 @@ -635,6 +648,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -659,6 +673,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &53016697 SphereCollider: m_ObjectHideFlags: 0 @@ -728,6 +743,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -752,6 +768,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &83771984 SphereCollider: m_ObjectHideFlags: 0 @@ -821,6 +838,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -845,6 +863,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &97661565 SphereCollider: m_ObjectHideFlags: 0 @@ -914,6 +933,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -938,6 +958,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &100390684 SphereCollider: m_ObjectHideFlags: 0 @@ -1044,6 +1065,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -1068,6 +1090,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &147557062 MeshFilter: m_ObjectHideFlags: 0 @@ -1138,6 +1161,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -1162,6 +1186,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &172255954 SphereCollider: m_ObjectHideFlags: 0 @@ -1231,6 +1256,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -1255,6 +1281,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &207413613 SphereCollider: m_ObjectHideFlags: 0 @@ -1324,6 +1351,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -1348,6 +1376,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &212523233 SphereCollider: m_ObjectHideFlags: 0 @@ -1417,6 +1446,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -1441,6 +1471,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &227977878 SphereCollider: m_ObjectHideFlags: 0 @@ -1509,6 +1540,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -1533,6 +1565,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &238486951 MeshFilter: m_ObjectHideFlags: 0 @@ -1548,13 +1581,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 238486948} - m_LocalRotation: {x: -0.5, y: 0.5, z: 0.5, w: 0.5} + m_LocalRotation: {x: -0.4055798, y: 0.4055798, z: -0.579228, w: -0.579228} m_LocalPosition: {x: -4, y: 0, z: -2} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 303484558} m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: -90, y: 180, z: -90} + m_LocalEulerAnglesHint: {x: 110, y: 180, z: -90} --- !u!1 &242909116 GameObject: m_ObjectHideFlags: 0 @@ -1663,6 +1696,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -1687,6 +1721,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &250086848 SphereCollider: m_ObjectHideFlags: 0 @@ -1756,6 +1791,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -1780,6 +1816,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &283589528 SphereCollider: m_ObjectHideFlags: 0 @@ -1849,6 +1886,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -1873,6 +1911,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &285294294 SphereCollider: m_ObjectHideFlags: 0 @@ -1992,6 +2031,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -2016,6 +2056,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &315644276 SphereCollider: m_ObjectHideFlags: 0 @@ -2049,6 +2090,7 @@ GameObject: - component: {fileID: 366199730} - component: {fileID: 366199729} - component: {fileID: 366199732} + - component: {fileID: 366199733} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera @@ -2139,7 +2181,41 @@ MonoBehaviour: PerPixelCorrectnessThreshold: 0.00075 AverageCorrectnessThreshold: 0.0001 UseHDR: 0 + UseBackBuffer: 0 + ImageResolution: 0 WaitFrames: 2 +--- !u!114 &366199733 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 366199728} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_RenderShadows: 1 + m_RequiresDepthTextureOption: 2 + m_RequiresOpaqueTextureOption: 2 + m_CameraType: 0 + m_Cameras: [] + m_RendererIndex: -1 + m_VolumeLayerMask: + serializedVersion: 2 + m_Bits: 1 + m_VolumeTrigger: {fileID: 0} + m_RenderPostProcessing: 0 + m_Antialiasing: 0 + m_AntialiasingQuality: 2 + m_StopNaN: 0 + m_Dithering: 0 + m_ClearDepth: 1 + m_AllowXRRendering: 1 + m_RequiresDepthTexture: 0 + m_RequiresColorTexture: 0 + m_Version: 2 --- !u!1 &366823146 GameObject: m_ObjectHideFlags: 0 @@ -2234,6 +2310,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -2258,6 +2335,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &371422991 SphereCollider: m_ObjectHideFlags: 0 @@ -2327,6 +2405,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -2351,6 +2430,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &414293742 SphereCollider: m_ObjectHideFlags: 0 @@ -2420,6 +2500,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -2444,6 +2525,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &414435822 SphereCollider: m_ObjectHideFlags: 0 @@ -2513,6 +2595,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -2537,6 +2620,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &460208045 SphereCollider: m_ObjectHideFlags: 0 @@ -2606,6 +2690,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -2630,6 +2715,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &462242930 SphereCollider: m_ObjectHideFlags: 0 @@ -2699,6 +2785,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -2723,6 +2810,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &480521287 SphereCollider: m_ObjectHideFlags: 0 @@ -2792,6 +2880,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -2816,6 +2905,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &485539996 SphereCollider: m_ObjectHideFlags: 0 @@ -2929,6 +3019,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -2953,6 +3044,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &507897637 SphereCollider: m_ObjectHideFlags: 0 @@ -3022,6 +3114,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -3046,6 +3139,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &510972452 SphereCollider: m_ObjectHideFlags: 0 @@ -3115,6 +3209,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -3139,6 +3234,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &513781238 SphereCollider: m_ObjectHideFlags: 0 @@ -3208,6 +3304,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -3232,6 +3329,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &524449750 SphereCollider: m_ObjectHideFlags: 0 @@ -3301,6 +3399,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -3325,6 +3424,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &529652658 SphereCollider: m_ObjectHideFlags: 0 @@ -3394,6 +3494,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -3418,6 +3519,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &574756866 SphereCollider: m_ObjectHideFlags: 0 @@ -3487,6 +3589,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -3511,6 +3614,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &582133713 SphereCollider: m_ObjectHideFlags: 0 @@ -3580,6 +3684,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -3604,6 +3709,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &585441713 SphereCollider: m_ObjectHideFlags: 0 @@ -3720,6 +3826,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -3744,6 +3851,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &628137915 SphereCollider: m_ObjectHideFlags: 0 @@ -3812,6 +3920,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -3836,6 +3945,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &644476904 MeshFilter: m_ObjectHideFlags: 0 @@ -3906,6 +4016,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -3930,6 +4041,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &661742760 SphereCollider: m_ObjectHideFlags: 0 @@ -3999,6 +4111,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -4023,6 +4136,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &697337480 SphereCollider: m_ObjectHideFlags: 0 @@ -4092,6 +4206,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -4116,6 +4231,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &715693414 SphereCollider: m_ObjectHideFlags: 0 @@ -4184,6 +4300,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -4208,6 +4325,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &735557293 MeshFilter: m_ObjectHideFlags: 0 @@ -4278,6 +4396,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -4302,6 +4421,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &738840891 SphereCollider: m_ObjectHideFlags: 0 @@ -4370,6 +4490,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -4394,6 +4515,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &770505458 MeshFilter: m_ObjectHideFlags: 0 @@ -4464,6 +4586,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -4488,6 +4611,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &801207487 SphereCollider: m_ObjectHideFlags: 0 @@ -4557,6 +4681,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -4581,6 +4706,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &804860715 SphereCollider: m_ObjectHideFlags: 0 @@ -4650,6 +4776,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -4674,6 +4801,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &820177706 SphereCollider: m_ObjectHideFlags: 0 @@ -4743,6 +4871,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -4767,6 +4896,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &840653960 SphereCollider: m_ObjectHideFlags: 0 @@ -4836,6 +4966,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -4860,6 +4991,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &841185861 SphereCollider: m_ObjectHideFlags: 0 @@ -4929,6 +5061,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -4953,6 +5086,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &853683123 SphereCollider: m_ObjectHideFlags: 0 @@ -5022,6 +5156,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -5046,6 +5181,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &871278867 SphereCollider: m_ObjectHideFlags: 0 @@ -5115,6 +5251,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -5139,6 +5276,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &919728591 SphereCollider: m_ObjectHideFlags: 0 @@ -5208,6 +5346,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -5232,6 +5371,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &925157437 SphereCollider: m_ObjectHideFlags: 0 @@ -5301,6 +5441,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -5325,6 +5466,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &991341885 SphereCollider: m_ObjectHideFlags: 0 @@ -5394,6 +5536,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -5418,6 +5561,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1029832736 SphereCollider: m_ObjectHideFlags: 0 @@ -5487,6 +5631,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -5511,6 +5656,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1029851379 SphereCollider: m_ObjectHideFlags: 0 @@ -5580,6 +5726,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -5604,6 +5751,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1050940237 SphereCollider: m_ObjectHideFlags: 0 @@ -5672,6 +5820,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -5696,6 +5845,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1051528461 MeshFilter: m_ObjectHideFlags: 0 @@ -5766,6 +5916,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -5790,6 +5941,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1059825223 SphereCollider: m_ObjectHideFlags: 0 @@ -5859,6 +6011,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -5883,6 +6036,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1077364020 SphereCollider: m_ObjectHideFlags: 0 @@ -5952,6 +6106,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -5976,6 +6131,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1114000236 SphereCollider: m_ObjectHideFlags: 0 @@ -6045,6 +6201,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -6069,6 +6226,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1126344843 SphereCollider: m_ObjectHideFlags: 0 @@ -6138,6 +6296,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -6162,6 +6321,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1136984179 SphereCollider: m_ObjectHideFlags: 0 @@ -6231,6 +6391,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -6255,6 +6416,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1182234435 SphereCollider: m_ObjectHideFlags: 0 @@ -6324,6 +6486,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -6348,6 +6511,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1222953126 SphereCollider: m_ObjectHideFlags: 0 @@ -6417,6 +6581,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -6441,6 +6606,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1235329771 SphereCollider: m_ObjectHideFlags: 0 @@ -6510,6 +6676,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -6534,6 +6701,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1290363524 SphereCollider: m_ObjectHideFlags: 0 @@ -6603,6 +6771,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -6627,6 +6796,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1290626768 SphereCollider: m_ObjectHideFlags: 0 @@ -6695,6 +6865,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -6719,6 +6890,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1311165579 MeshFilter: m_ObjectHideFlags: 0 @@ -6789,6 +6961,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -6813,6 +6986,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1315568619 SphereCollider: m_ObjectHideFlags: 0 @@ -6882,6 +7056,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -6906,6 +7081,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1322529935 SphereCollider: m_ObjectHideFlags: 0 @@ -6975,6 +7151,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -6999,6 +7176,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1324643245 SphereCollider: m_ObjectHideFlags: 0 @@ -7068,6 +7246,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -7092,6 +7271,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1327032209 SphereCollider: m_ObjectHideFlags: 0 @@ -7161,6 +7341,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -7185,6 +7366,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1343815778 SphereCollider: m_ObjectHideFlags: 0 @@ -7254,6 +7436,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -7278,6 +7461,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1383437970 SphereCollider: m_ObjectHideFlags: 0 @@ -7347,6 +7531,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -7371,6 +7556,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1425383531 SphereCollider: m_ObjectHideFlags: 0 @@ -7475,6 +7661,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -7499,6 +7686,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1452926176 SphereCollider: m_ObjectHideFlags: 0 @@ -7568,6 +7756,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -7592,6 +7781,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1462505747 SphereCollider: m_ObjectHideFlags: 0 @@ -7661,6 +7851,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -7685,6 +7876,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1467200803 SphereCollider: m_ObjectHideFlags: 0 @@ -7754,6 +7946,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -7778,6 +7971,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1469504154 SphereCollider: m_ObjectHideFlags: 0 @@ -7847,6 +8041,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -7871,6 +8066,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1471236226 SphereCollider: m_ObjectHideFlags: 0 @@ -7939,6 +8135,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -7963,6 +8160,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1475762080 MeshFilter: m_ObjectHideFlags: 0 @@ -8032,6 +8230,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -8056,6 +8255,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1506539578 MeshFilter: m_ObjectHideFlags: 0 @@ -8071,13 +8271,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1506539575} - m_LocalRotation: {x: -0.5, y: 0.5, z: 0.5, w: 0.5} + m_LocalRotation: {x: -0.6532815, y: 0.6532815, z: -0.27059805, w: -0.27059805} m_LocalPosition: {x: -5, y: 0, z: -2} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 303484558} m_RootOrder: 2 - m_LocalEulerAnglesHint: {x: -90, y: 180, z: -90} + m_LocalEulerAnglesHint: {x: 45, y: 180, z: -90} --- !u!1 &1536751008 GameObject: m_ObjectHideFlags: 0 @@ -8126,6 +8326,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -8150,6 +8351,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1536751011 SphereCollider: m_ObjectHideFlags: 0 @@ -8219,6 +8421,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -8243,6 +8446,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1545791080 SphereCollider: m_ObjectHideFlags: 0 @@ -8348,6 +8552,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -8372,6 +8577,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1606512716 SphereCollider: m_ObjectHideFlags: 0 @@ -8441,6 +8647,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -8465,6 +8672,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1610334440 SphereCollider: m_ObjectHideFlags: 0 @@ -8533,6 +8741,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -8557,6 +8766,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1619359163 MeshFilter: m_ObjectHideFlags: 0 @@ -8627,6 +8837,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -8651,6 +8862,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1701306557 SphereCollider: m_ObjectHideFlags: 0 @@ -8720,6 +8932,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -8744,6 +8957,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1704958866 SphereCollider: m_ObjectHideFlags: 0 @@ -8877,6 +9091,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -8901,6 +9116,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1718807272 SphereCollider: m_ObjectHideFlags: 0 @@ -8969,6 +9185,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -8993,6 +9210,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1739134292 MeshFilter: m_ObjectHideFlags: 0 @@ -9063,6 +9281,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -9087,6 +9306,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1765169125 SphereCollider: m_ObjectHideFlags: 0 @@ -9156,6 +9376,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -9180,6 +9401,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1770065823 SphereCollider: m_ObjectHideFlags: 0 @@ -9248,6 +9470,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -9272,6 +9495,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1770552485 MeshFilter: m_ObjectHideFlags: 0 @@ -9342,6 +9566,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -9366,6 +9591,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1785428293 SphereCollider: m_ObjectHideFlags: 0 @@ -9435,6 +9661,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -9459,6 +9686,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1787014627 SphereCollider: m_ObjectHideFlags: 0 @@ -9528,6 +9756,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -9552,6 +9781,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1806418204 SphereCollider: m_ObjectHideFlags: 0 @@ -9620,6 +9850,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -9644,6 +9875,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1808814367 MeshFilter: m_ObjectHideFlags: 0 @@ -9713,6 +9945,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -9737,6 +9970,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1813021371 MeshFilter: m_ObjectHideFlags: 0 @@ -9806,6 +10040,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -9830,6 +10065,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1824269726 MeshFilter: m_ObjectHideFlags: 0 @@ -9900,6 +10136,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -9924,6 +10161,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1840713833 SphereCollider: m_ObjectHideFlags: 0 @@ -9993,6 +10231,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -10017,6 +10256,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1856304762 SphereCollider: m_ObjectHideFlags: 0 @@ -10086,6 +10326,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -10110,6 +10351,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1887502894 SphereCollider: m_ObjectHideFlags: 0 @@ -10178,6 +10420,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -10202,6 +10445,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1888281877 MeshFilter: m_ObjectHideFlags: 0 @@ -10272,6 +10516,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -10296,6 +10541,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1889255734 SphereCollider: m_ObjectHideFlags: 0 @@ -10365,6 +10611,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -10389,6 +10636,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1894348793 SphereCollider: m_ObjectHideFlags: 0 @@ -10458,6 +10706,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -10482,6 +10731,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1908664928 SphereCollider: m_ObjectHideFlags: 0 @@ -10550,6 +10800,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -10574,6 +10825,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1909678460 MeshFilter: m_ObjectHideFlags: 0 @@ -10644,6 +10896,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -10668,6 +10921,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1926593707 SphereCollider: m_ObjectHideFlags: 0 @@ -10737,6 +10991,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -10761,6 +11016,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1947256755 SphereCollider: m_ObjectHideFlags: 0 @@ -10871,6 +11127,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -10895,6 +11152,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1976893047 SphereCollider: m_ObjectHideFlags: 0 @@ -10964,6 +11222,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -10988,6 +11247,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1981582517 SphereCollider: m_ObjectHideFlags: 0 @@ -11057,6 +11317,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -11081,6 +11342,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &1990772824 SphereCollider: m_ObjectHideFlags: 0 @@ -11150,6 +11412,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -11174,6 +11437,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &2006496221 SphereCollider: m_ObjectHideFlags: 0 @@ -11243,6 +11507,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -11267,6 +11532,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &2011343687 SphereCollider: m_ObjectHideFlags: 0 @@ -11336,6 +11602,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -11360,6 +11627,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &2048688198 SphereCollider: m_ObjectHideFlags: 0 @@ -11428,6 +11696,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -11452,6 +11721,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &2064675060 MeshFilter: m_ObjectHideFlags: 0 @@ -11522,6 +11792,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -11546,6 +11817,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &2076468049 SphereCollider: m_ObjectHideFlags: 0 @@ -11615,6 +11887,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -11639,6 +11912,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &2087670892 SphereCollider: m_ObjectHideFlags: 0 @@ -11708,6 +11982,7 @@ MeshRenderer: m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -11732,6 +12007,7 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &2140997635 SphereCollider: m_ObjectHideFlags: 0 diff --git a/TestProjects/ShaderGraph/Assets/Testing/IntegrationTests/Graphs/Input/Basic/ColorNode.mat b/TestProjects/ShaderGraph/Assets/Testing/IntegrationTests/Graphs/Input/Basic/ColorNode.mat index 2ec363d4d89..b6d3fc3ca34 100644 --- a/TestProjects/ShaderGraph/Assets/Testing/IntegrationTests/Graphs/Input/Basic/ColorNode.mat +++ b/TestProjects/ShaderGraph/Assets/Testing/IntegrationTests/Graphs/Input/Basic/ColorNode.mat @@ -21,4 +21,7 @@ Material: serializedVersion: 3 m_TexEnvs: [] m_Floats: [] - m_Colors: [] + m_Colors: + - Color_8cec592cd4184ffcae31bb4968a07592: {r: 0.5471698, g: 0, b: 0, a: 0} + - Color_9cbb7d0f6a9f4600a30ce1093efb115f: {r: 0.5471698, g: 0, b: 0, a: 0} + m_BuildTextureStacks: [] diff --git a/TestProjects/ShaderGraph/Assets/Testing/IntegrationTests/Graphs/Input/Basic/ColorNode.shadergraph b/TestProjects/ShaderGraph/Assets/Testing/IntegrationTests/Graphs/Input/Basic/ColorNode.shadergraph index c9bce406051..f9a2e263c04 100644 --- a/TestProjects/ShaderGraph/Assets/Testing/IntegrationTests/Graphs/Input/Basic/ColorNode.shadergraph +++ b/TestProjects/ShaderGraph/Assets/Testing/IntegrationTests/Graphs/Input/Basic/ColorNode.shadergraph @@ -1,29 +1,323 @@ { - "m_SerializedProperties": [], - "m_SerializableNodes": [ + "m_SGVersion": 2, + "m_Type": "UnityEditor.ShaderGraph.GraphData", + "m_ObjectId": "f9530e754b39480689640fe72a2f3184", + "m_Properties": [ { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.UnlitMasterNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"3645aff8-5a45-4516-8b45-2380b21d7ec5\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Unlit Master\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 67.0,\n \"y\": 136.0,\n \"width\": 200.0,\n \"height\": 149.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.PositionMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 9,\\n \\\"m_DisplayName\\\": \\\"Position\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Position\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.ColorRGBMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Color\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Color\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.5,\\n \\\"y\\\": 0.5,\\n \\\"z\\\": 0.5\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_ColorMode\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 7,\\n \\\"m_DisplayName\\\": \\\"Alpha\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Alpha\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 8,\\n \\\"m_DisplayName\\\": \\\"AlphaClipThreshold\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"AlphaClipThreshold\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.5,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_SerializableSubShaders\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.Rendering.Universal.UniversalUnlitSubShader\"\n },\n \"JSONnodeData\": \"{}\"\n }\n ],\n \"m_SurfaceType\": 0,\n \"m_AlphaMode\": 0,\n \"m_TwoSided\": false,\n \"m_AddVelocityChange\": false\n}" + "m_Id": "9cbb7d0f6a9f4600a30ce1093efb115f" }, { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.ColorNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"123589aa-c28c-44b6-89ae-b1d16933f7be\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Color\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -355.5,\n \"y\": 110.49996948242188,\n \"width\": 0.0,\n \"height\": 0.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector4MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_Color\": {\n \"color\": {\n \"r\": 0.9528301954269409,\n \"g\": 0.04494481533765793,\n \"b\": 0.04494481533765793,\n \"a\": 0.0\n },\n \"mode\": 0\n }\n}" + "m_Id": "8cec592cd4184ffcae31bb4968a07592" } ], - "m_Groups": [], - "m_StickyNotes": [], - "m_SerializableEdges": [ + "m_Keywords": [], + "m_Nodes": [ + { + "m_Id": "e9764189650c4bf19b67df5739c5bc7c" + }, + { + "m_Id": "3b9ac9422a07454fa54965bd3f291803" + }, + { + "m_Id": "a36c2d8a7f6f428ca1c777fdfad16e3f" + }, + { + "m_Id": "210252ce2e9241c2845a6cfe4739d2c9" + }, + { + "m_Id": "f6a451b4d3c2482984b1e4d50d61dbe5" + }, + { + "m_Id": "a2bfc40d2d344b4a9b02ba2c2053694d" + }, + { + "m_Id": "0b238d3b3c804a81ab6f272addc36d58" + }, + { + "m_Id": "6e3d4b970aa2416ca5378e3f5fcd942b" + }, + { + "m_Id": "06b55a13f65d4bc7b5480fc38147cf0e" + }, + { + "m_Id": "2af2e02a77c14b08b16a3fd1276efe6f" + }, + { + "m_Id": "6b1384a8b963457b9d006f8da9e686d5" + }, + { + "m_Id": "d3bc1ddf42214d8cbdc21b00958aede3" + }, + { + "m_Id": "8d55f22092f34b10992fc2a8cd1ef493" + }, + { + "m_Id": "de8ab964a37342bd8aebcfe3df0babcd" + }, + { + "m_Id": "c83b5956457e428f9a0e03a5df54b835" + }, + { + "m_Id": "c26ca31aee1f404aa3958df860cb66b6" + }, + { + "m_Id": "506b654a5dec4da7a519f3514feec328" + }, + { + "m_Id": "85f5e15718e34aa09a17407f01dc0f1b" + }, + { + "m_Id": "2323bcca48a94fbb98b043e3c8724e00" + } + ], + "m_GroupDatas": [], + "m_StickyNoteDatas": [], + "m_Edges": [ + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "06b55a13f65d4bc7b5480fc38147cf0e" + }, + "m_SlotId": 1 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "2af2e02a77c14b08b16a3fd1276efe6f" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "06b55a13f65d4bc7b5480fc38147cf0e" + }, + "m_SlotId": 1 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "6b1384a8b963457b9d006f8da9e686d5" + }, + "m_SlotId": 1 + } + }, { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" + "m_OutputSlot": { + "m_Node": { + "m_Id": "06b55a13f65d4bc7b5480fc38147cf0e" + }, + "m_SlotId": 1 }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"123589aa-c28c-44b6-89ae-b1d16933f7be\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"3645aff8-5a45-4516-8b45-2380b21d7ec5\"\n }\n}" + "m_InputSlot": { + "m_Node": { + "m_Id": "8d55f22092f34b10992fc2a8cd1ef493" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "2af2e02a77c14b08b16a3fd1276efe6f" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "d3bc1ddf42214d8cbdc21b00958aede3" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "506b654a5dec4da7a519f3514feec328" + }, + "m_SlotId": 3 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f6a451b4d3c2482984b1e4d50d61dbe5" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "6b1384a8b963457b9d006f8da9e686d5" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "c83b5956457e428f9a0e03a5df54b835" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "6e3d4b970aa2416ca5378e3f5fcd942b" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "06b55a13f65d4bc7b5480fc38147cf0e" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "85f5e15718e34aa09a17407f01dc0f1b" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "506b654a5dec4da7a519f3514feec328" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "8d55f22092f34b10992fc2a8cd1ef493" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "506b654a5dec4da7a519f3514feec328" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "c26ca31aee1f404aa3958df860cb66b6" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "c83b5956457e428f9a0e03a5df54b835" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "c83b5956457e428f9a0e03a5df54b835" + }, + "m_SlotId": 3 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "506b654a5dec4da7a519f3514feec328" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "d3bc1ddf42214d8cbdc21b00958aede3" + }, + "m_SlotId": 3 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "c83b5956457e428f9a0e03a5df54b835" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "de8ab964a37342bd8aebcfe3df0babcd" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "d3bc1ddf42214d8cbdc21b00958aede3" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "e9764189650c4bf19b67df5739c5bc7c" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "2323bcca48a94fbb98b043e3c8724e00" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "e9764189650c4bf19b67df5739c5bc7c" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "d3bc1ddf42214d8cbdc21b00958aede3" + }, + "m_SlotId": 0 + } } ], + "m_VertexContext": { + "m_Position": { + "x": 906.7999877929688, + "y": 608.800048828125 + }, + "m_Blocks": [ + { + "m_Id": "3b9ac9422a07454fa54965bd3f291803" + }, + { + "m_Id": "a36c2d8a7f6f428ca1c777fdfad16e3f" + }, + { + "m_Id": "210252ce2e9241c2845a6cfe4739d2c9" + } + ] + }, + "m_FragmentContext": { + "m_Position": { + "x": 906.7999877929688, + "y": 808.800048828125 + }, + "m_Blocks": [ + { + "m_Id": "f6a451b4d3c2482984b1e4d50d61dbe5" + }, + { + "m_Id": "a2bfc40d2d344b4a9b02ba2c2053694d" + }, + { + "m_Id": "0b238d3b3c804a81ab6f272addc36d58" + } + ] + }, "m_PreviewData": { "serializedMesh": { "m_SerializedMesh": "{\"mesh\":{\"instanceID\":0}}", @@ -32,5 +326,1710 @@ }, "m_Path": "Shader Graph Tests/Input/Basic", "m_ConcretePrecision": 0, - "m_ActiveOutputNodeGuidSerialized": "3645aff8-5a45-4516-8b45-2380b21d7ec5" -} \ No newline at end of file + "m_OutputNode": { + "m_Id": "" + }, + "m_ActiveTargets": [ + { + "m_Id": "4d1c49433eaa45fda6f708c727d2aa7d" + } + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalMaterialSlot", + "m_ObjectId": "06b2a35bf99e45d5828bc6baf348f1c0", + "m_Id": 0, + "m_DisplayName": "Normal", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Normal", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SplitNode", + "m_ObjectId": "06b55a13f65d4bc7b5480fc38147cf0e", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Split", + "m_NodeVersion": 0, + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1485.0001220703125, + "y": -359.9999694824219, + "width": 120.0, + "height": 149.0 + } + }, + "m_Slots": [ + { + "m_Id": "0f85c29e5d8647bfa19bf9af114d2bb3" + }, + { + "m_Id": "afb0c5ef71aa448dae30eea641b78845" + }, + { + "m_Id": "f8482e461762421f9a254f0a156529f4" + }, + { + "m_Id": "79ff1f86849a48e1b94838034a13720b" + }, + { + "m_Id": "82759ab102f74d528b2f1579ee5b48ca" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "09970e1eb79440dfb9a674126b0acca1", + "m_Id": 1, + "m_DisplayName": "In", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "In", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "0b238d3b3c804a81ab6f272addc36d58", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.AlphaClipThreshold", + "m_NodeVersion": 0, + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "41768a51b53841539cf316a5dd8b512e" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.AlphaClipThreshold" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "0f73d282530d4b6f8288430cace42ce7", + "m_Id": 0, + "m_DisplayName": "Alpha", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 2, + "m_Value": 1.0, + "m_DefaultValue": 1.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "0f85c29e5d8647bfa19bf9af114d2bb3", + "m_Id": 0, + "m_DisplayName": "In", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "In", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "0fc72a9fc3a04395ae05ea892409bec6", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "11b1186f975747c89391d6d7f9bb42f6", + "m_Id": 1, + "m_DisplayName": "In", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "In", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "128bd62b93d24fd6a60e3969f379f5e4", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "210252ce2e9241c2845a6cfe4739d2c9", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Tangent", + "m_NodeVersion": 0, + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "b4c2b7b62b214f038f9bcc5820d21ddc" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Tangent" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "21b02055ba8f43eab56e8399ece8bf8c", + "m_Id": 3, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PreviewNode", + "m_ObjectId": "2323bcca48a94fbb98b043e3c8724e00", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Preview", + "m_NodeVersion": 0, + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -859.2000122070313, + "y": -708.3999633789063, + "width": 208.0, + "height": 278.0 + } + }, + "m_Slots": [ + { + "m_Id": "3942bfc2091c4d609362375a0e97042a" + }, + { + "m_Id": "3b85d0ace3a346feb9b3bce6885daa2d" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Width": 208.0, + "m_Height": 208.0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.StepNode", + "m_ObjectId": "2af2e02a77c14b08b16a3fd1276efe6f", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Step", + "m_NodeVersion": 0, + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1221.0001220703125, + "y": -381.9999694824219, + "width": 207.99998474121095, + "height": 301.9999694824219 + } + }, + "m_Slots": [ + { + "m_Id": "f9367987a07249d6a31c3a39cacdafd6" + }, + { + "m_Id": "b49bac041ef0444cb63cad642a8459a7" + }, + { + "m_Id": "ed9a5cbd854e4a889bdd0d14ed6a538e" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "2cd1f9de1f004a1aac95a7de8487b888", + "m_Id": 3, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "3942bfc2091c4d609362375a0e97042a", + "m_Id": 0, + "m_DisplayName": "In", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "In", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "3b85d0ace3a346feb9b3bce6885daa2d", + "m_Id": 1, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "3b9ac9422a07454fa54965bd3f291803", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Position", + "m_NodeVersion": 0, + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "dbcb3ba878804354b7dc90725c37449a" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Position" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "3e5e5b1d08fa49c5af5024591a8e2614", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "41768a51b53841539cf316a5dd8b512e", + "m_Id": 0, + "m_DisplayName": "Alpha Clip Threshold", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "AlphaClipThreshold", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.5, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "4268017339ea4fe0ad0aa8ba2b102c3a", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalTarget", + "m_ObjectId": "4d1c49433eaa45fda6f708c727d2aa7d", + "m_ActiveSubTarget": { + "m_Id": "d8a18ac4a1aa4a3baa8187f24220a06a" + }, + "m_SurfaceType": 0, + "m_AlphaMode": 0, + "m_TwoSided": false, + "m_AlphaClip": false, + "m_CustomEditorGUI": "" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.LerpNode", + "m_ObjectId": "506b654a5dec4da7a519f3514feec328", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Lerp", + "m_NodeVersion": 0, + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -129.0000457763672, + "y": 567.0, + "width": 207.99998474121095, + "height": 326.0 + } + }, + "m_Slots": [ + { + "m_Id": "128bd62b93d24fd6a60e3969f379f5e4" + }, + { + "m_Id": "4268017339ea4fe0ad0aa8ba2b102c3a" + }, + { + "m_Id": "603f21dc9a534d8692517ac54ea37780" + }, + { + "m_Id": "21b02055ba8f43eab56e8399ece8bf8c" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "603f21dc9a534d8692517ac54ea37780", + "m_Id": 2, + "m_DisplayName": "T", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "T", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.StepNode", + "m_ObjectId": "6b1384a8b963457b9d006f8da9e686d5", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Step", + "m_NodeVersion": 0, + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1221.0001220703125, + "y": -38.000003814697269, + "width": 207.99998474121095, + "height": 301.9999694824219 + } + }, + "m_Slots": [ + { + "m_Id": "a6f772054e6d4884a090ca363a096dab" + }, + { + "m_Id": "09970e1eb79440dfb9a674126b0acca1" + }, + { + "m_Id": "bd3f00a5f516458a8f1795f38776ccbc" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "6e3d4b970aa2416ca5378e3f5fcd942b", + "m_Group": { + "m_Id": "" + }, + "m_Name": "UV", + "m_NodeVersion": 0, + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1648.0, + "y": -359.9999694824219, + "width": 145.0, + "height": 130.0 + } + }, + "m_Slots": [ + { + "m_Id": "71dba580cb4848dea029d82a6f2dae10" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "71dba580cb4848dea029d82a6f2dae10", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "79ff1f86849a48e1b94838034a13720b", + "m_Id": 3, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "81409977dc8741ddbf50186ef67c498d", + "m_Id": 0, + "m_DisplayName": "Color", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "82759ab102f74d528b2f1579ee5b48ca", + "m_Id": 4, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "85f5e15718e34aa09a17407f01dc0f1b", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Property", + "m_NodeVersion": 0, + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -466.0, + "y": 533.0, + "width": 128.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "e62a6ad966514678a2298c3c0b877783" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "8cec592cd4184ffcae31bb4968a07592" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "8ac7d3538aa74755a0c2281d2513c738", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "8cec592cd4184ffcae31bb4968a07592", + "m_Guid": { + "m_GuidSerialized": "b93c4f9d-777b-4b41-a97d-1300e11b202c" + }, + "m_Name": "ColorDep", + "m_DefaultReferenceName": "Color_8cec592cd4184ffcae31bb4968a07592", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": true, + "m_Precision": 0, + "m_GPUInstanced": false, + "m_Hidden": false, + "m_Value": { + "r": 0.5471698045730591, + "g": 0.0, + "b": 0.0, + "a": 0.0 + }, + "m_ColorMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.StepNode", + "m_ObjectId": "8d55f22092f34b10992fc2a8cd1ef493", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Step", + "m_NodeVersion": 0, + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1262.0, + "y": 332.0, + "width": 207.99998474121095, + "height": 301.9999694824219 + } + }, + "m_Slots": [ + { + "m_Id": "f8eafaf14d7245ffac7d5e8194a9472a" + }, + { + "m_Id": "11b1186f975747c89391d6d7f9bb42f6" + }, + { + "m_Id": "3e5e5b1d08fa49c5af5024591a8e2614" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "8f2967102a674d5f823a898916471aef", + "m_Id": 2, + "m_DisplayName": "T", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "T", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "9cbb7d0f6a9f4600a30ce1093efb115f", + "m_Guid": { + "m_GuidSerialized": "04057c74-6ff3-4c4b-aada-e3efc0ad1d21" + }, + "m_Name": "Color", + "m_DefaultReferenceName": "Color_9cbb7d0f6a9f4600a30ce1093efb115f", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": true, + "m_Precision": 0, + "m_GPUInstanced": false, + "m_Hidden": false, + "m_Value": { + "r": 0.5471698045730591, + "g": 0.0, + "b": 0.0, + "a": 0.0 + }, + "m_ColorMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "a2bfc40d2d344b4a9b02ba2c2053694d", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.Alpha", + "m_NodeVersion": 0, + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "0f73d282530d4b6f8288430cace42ce7" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Alpha" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "a36c2d8a7f6f428ca1c777fdfad16e3f", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Normal", + "m_NodeVersion": 0, + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "06b2a35bf99e45d5828bc6baf348f1c0" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Normal" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "a6f772054e6d4884a090ca363a096dab", + "m_Id": 0, + "m_DisplayName": "Edge", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Edge", + "m_StageCapability": 3, + "m_Value": { + "x": 0.20000000298023225, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "afb0c5ef71aa448dae30eea641b78845", + "m_Id": 1, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "b49bac041ef0444cb63cad642a8459a7", + "m_Id": 1, + "m_DisplayName": "In", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "In", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.TangentMaterialSlot", + "m_ObjectId": "b4c2b7b62b214f038f9bcc5820d21ddc", + "m_Id": 0, + "m_DisplayName": "Tangent", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Tangent", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "bd3f00a5f516458a8f1795f38776ccbc", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "c26ca31aee1f404aa3958df860cb66b6", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Property", + "m_NodeVersion": 0, + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -755.0001220703125, + "y": 68.0, + "width": 107.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "81409977dc8741ddbf50186ef67c498d" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "9cbb7d0f6a9f4600a30ce1093efb115f" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ColorRGBMaterialSlot", + "m_ObjectId": "c46afd10ccd043f7bb77c7e36c62595e", + "m_Id": 0, + "m_DisplayName": "Base Color", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "BaseColor", + "m_StageCapability": 2, + "m_Value": { + "x": 0.5, + "y": 0.5, + "z": 0.5 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_ColorMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.LerpNode", + "m_ObjectId": "c83b5956457e428f9a0e03a5df54b835", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Lerp", + "m_NodeVersion": 0, + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -514.0000610351563, + "y": -80.0, + "width": 207.99998474121095, + "height": 326.0 + } + }, + "m_Slots": [ + { + "m_Id": "e4af9ba05a24439cb9dd5a8cf7bbe98d" + }, + { + "m_Id": "face138222e54074a7bfd0d2c134ffe6" + }, + { + "m_Id": "8f2967102a674d5f823a898916471aef" + }, + { + "m_Id": "d04343aac5e04ab4aad6fbfad1e64b51" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "ceb94d7c6bb646d8a47fd227a850035b", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "d04343aac5e04ab4aad6fbfad1e64b51", + "m_Id": 3, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.LerpNode", + "m_ObjectId": "d3bc1ddf42214d8cbdc21b00958aede3", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Lerp", + "m_NodeVersion": 0, + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -859.0001220703125, + "y": -406.0, + "width": 207.99998474121095, + "height": 326.0 + } + }, + "m_Slots": [ + { + "m_Id": "de43a46865194a71829ae9a4f89465ab" + }, + { + "m_Id": "ceb94d7c6bb646d8a47fd227a850035b" + }, + { + "m_Id": "f87a28ac928f440bb08e9fcb43557f1a" + }, + { + "m_Id": "2cd1f9de1f004a1aac95a7de8487b888" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalUnlitSubTarget", + "m_ObjectId": "d8a18ac4a1aa4a3baa8187f24220a06a" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PositionMaterialSlot", + "m_ObjectId": "dbcb3ba878804354b7dc90725c37449a", + "m_Id": 0, + "m_DisplayName": "Position", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Position", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "de43a46865194a71829ae9a4f89465ab", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ColorNode", + "m_ObjectId": "de8ab964a37342bd8aebcfe3df0babcd", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Color", + "m_NodeVersion": 0, + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1282.0, + "y": -532.9999389648438, + "width": 207.99998474121095, + "height": 127.0 + } + }, + "m_Slots": [ + { + "m_Id": "0fc72a9fc3a04395ae05ea892409bec6" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Color": { + "color": { + "r": 0.5471698045730591, + "g": 0.0, + "b": 0.0, + "a": 0.0 + }, + "mode": 0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "e4af9ba05a24439cb9dd5a8cf7bbe98d", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "e62a6ad966514678a2298c3c0b877783", + "m_Id": 0, + "m_DisplayName": "ColorDep", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.ColorNode", + "m_ObjectId": "e9764189650c4bf19b67df5739c5bc7c", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Color", + "m_NodeVersion": 0, + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1282.0, + "y": -708.3999633789063, + "width": 208.0, + "height": 126.79998779296875 + } + }, + "m_Slots": [ + { + "m_Id": "8ac7d3538aa74755a0c2281d2513c738" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Color": { + "color": { + "r": 0.5471698045730591, + "g": 0.0, + "b": 0.0, + "a": 0.0 + }, + "mode": 0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "ed9a5cbd854e4a889bdd0d14ed6a538e", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "f6a451b4d3c2482984b1e4d50d61dbe5", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.BaseColor", + "m_NodeVersion": 0, + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "c46afd10ccd043f7bb77c7e36c62595e" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.BaseColor" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "f8482e461762421f9a254f0a156529f4", + "m_Id": 2, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "f87a28ac928f440bb08e9fcb43557f1a", + "m_Id": 2, + "m_DisplayName": "T", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "T", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "f8eafaf14d7245ffac7d5e8194a9472a", + "m_Id": 0, + "m_DisplayName": "Edge", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Edge", + "m_StageCapability": 3, + "m_Value": { + "x": 0.30000001192092898, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "f9367987a07249d6a31c3a39cacdafd6", + "m_Id": 0, + "m_DisplayName": "Edge", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Edge", + "m_StageCapability": 3, + "m_Value": { + "x": 0.10000000149011612, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "face138222e54074a7bfd0d2c134ffe6", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + diff --git a/TestProjects/ShaderGraph/Assets/Testing/IntegrationTests/Graphs/Input/Basic/ColorNodeHDR.shadergraph b/TestProjects/ShaderGraph/Assets/Testing/IntegrationTests/Graphs/Input/Basic/ColorNodeHDR.shadergraph index 5a8e3056602..aedf5491f44 100644 --- a/TestProjects/ShaderGraph/Assets/Testing/IntegrationTests/Graphs/Input/Basic/ColorNodeHDR.shadergraph +++ b/TestProjects/ShaderGraph/Assets/Testing/IntegrationTests/Graphs/Input/Basic/ColorNodeHDR.shadergraph @@ -1,29 +1,306 @@ { - "m_SerializedProperties": [], - "m_SerializableNodes": [ + "m_SGVersion": 2, + "m_Type": "UnityEditor.ShaderGraph.GraphData", + "m_ObjectId": "7e17b234fc1740429c731f4e774e9a83", + "m_Properties": [ { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.UnlitMasterNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"3645aff8-5a45-4516-8b45-2380b21d7ec5\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Unlit Master\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 67.0,\n \"y\": 136.0,\n \"width\": 200.0,\n \"height\": 149.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.PositionMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 9,\\n \\\"m_DisplayName\\\": \\\"Position\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Position\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.ColorRGBMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Color\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Color\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.5,\\n \\\"y\\\": 0.5,\\n \\\"z\\\": 0.5\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_ColorMode\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 7,\\n \\\"m_DisplayName\\\": \\\"Alpha\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Alpha\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 8,\\n \\\"m_DisplayName\\\": \\\"AlphaClipThreshold\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"AlphaClipThreshold\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.5,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_SerializableSubShaders\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.Rendering.Universal.UniversalUnlitSubShader\"\n },\n \"JSONnodeData\": \"{}\"\n }\n ],\n \"m_SurfaceType\": 0,\n \"m_AlphaMode\": 0,\n \"m_TwoSided\": false,\n \"m_AddVelocityChange\": false\n}" + "m_Id": "3aaf7afa840840dfb98a5241f2bac68d" }, { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.ColorNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"123589aa-c28c-44b6-89ae-b1d16933f7be\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Color\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -444.0,\n \"y\": 113.0,\n \"width\": 213.0,\n \"height\": 128.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector4MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_Color\": {\n \"color\": {\n \"r\": 14.226009368896485,\n \"g\": 0.6439757943153381,\n \"b\": 0.6439757943153381,\n \"a\": 0.0\n },\n \"mode\": 1\n }\n}" + "m_Id": "9ca2003b25484d6aab715cc13565a6b3" } ], - "m_Groups": [], - "m_StickyNotes": [], - "m_SerializableEdges": [ + "m_Keywords": [], + "m_Nodes": [ + { + "m_Id": "e9e1ac0424e54cea87d5d48125f2d7f1" + }, + { + "m_Id": "4c3abdc830fe4083bc26abfbd81fe1d6" + }, + { + "m_Id": "fabb954b7b8d4c808091abd0d2155936" + }, + { + "m_Id": "0d6d50a7de1c45af967403bdc5d9e7cb" + }, + { + "m_Id": "ad18f0efb4e146a9a6c459decbaf7710" + }, + { + "m_Id": "c3ae2931736d43c6b56dc3ad6d3c08cf" + }, + { + "m_Id": "cbacef4f67fd41ea86c9e8e17adfee66" + }, + { + "m_Id": "169c1f8986b040f1a2809136013f09b0" + }, + { + "m_Id": "c317135581b4440188048fb963399372" + }, + { + "m_Id": "67918591b6314c7ea37209bde6b19f42" + }, + { + "m_Id": "c955ebedab6b4f25b211e7dc4971400b" + }, + { + "m_Id": "88be5d15a3884c97965b13c8d3c2f86c" + }, + { + "m_Id": "0a5bc40644414c29bb180f16a5fa2a76" + }, + { + "m_Id": "47dcdf5e8c7e4579b545b7ee6f0bc6dc" + }, + { + "m_Id": "80daeea527384ab3bd4430902c160801" + }, + { + "m_Id": "18392fe3402440a09eddeda3d1930448" + }, + { + "m_Id": "fdb11d1eb0af4726a79c097c26ff4972" + }, + { + "m_Id": "7b3f4324877b4bc0be967684c47bb3e0" + } + ], + "m_GroupDatas": [], + "m_StickyNoteDatas": [], + "m_Edges": [ + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "0a5bc40644414c29bb180f16a5fa2a76" + }, + "m_SlotId": 3 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7b3f4324877b4bc0be967684c47bb3e0" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "169c1f8986b040f1a2809136013f09b0" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "c317135581b4440188048fb963399372" + }, + "m_SlotId": 0 + } + }, { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" + "m_OutputSlot": { + "m_Node": { + "m_Id": "18392fe3402440a09eddeda3d1930448" + }, + "m_SlotId": 0 }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"123589aa-c28c-44b6-89ae-b1d16933f7be\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"3645aff8-5a45-4516-8b45-2380b21d7ec5\"\n }\n}" + "m_InputSlot": { + "m_Node": { + "m_Id": "88be5d15a3884c97965b13c8d3c2f86c" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "47dcdf5e8c7e4579b545b7ee6f0bc6dc" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "0a5bc40644414c29bb180f16a5fa2a76" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "67918591b6314c7ea37209bde6b19f42" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "88be5d15a3884c97965b13c8d3c2f86c" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7b3f4324877b4bc0be967684c47bb3e0" + }, + "m_SlotId": 3 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "ad18f0efb4e146a9a6c459decbaf7710" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "80daeea527384ab3bd4430902c160801" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7b3f4324877b4bc0be967684c47bb3e0" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "88be5d15a3884c97965b13c8d3c2f86c" + }, + "m_SlotId": 3 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "0a5bc40644414c29bb180f16a5fa2a76" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "c317135581b4440188048fb963399372" + }, + "m_SlotId": 1 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "67918591b6314c7ea37209bde6b19f42" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "c317135581b4440188048fb963399372" + }, + "m_SlotId": 1 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "c955ebedab6b4f25b211e7dc4971400b" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "c317135581b4440188048fb963399372" + }, + "m_SlotId": 1 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "fdb11d1eb0af4726a79c097c26ff4972" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "c955ebedab6b4f25b211e7dc4971400b" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "0a5bc40644414c29bb180f16a5fa2a76" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "e9e1ac0424e54cea87d5d48125f2d7f1" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "88be5d15a3884c97965b13c8d3c2f86c" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "fdb11d1eb0af4726a79c097c26ff4972" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7b3f4324877b4bc0be967684c47bb3e0" + }, + "m_SlotId": 2 + } } ], + "m_VertexContext": { + "m_Position": { + "x": 503.0001220703125, + "y": 962.0 + }, + "m_Blocks": [ + { + "m_Id": "4c3abdc830fe4083bc26abfbd81fe1d6" + }, + { + "m_Id": "fabb954b7b8d4c808091abd0d2155936" + }, + { + "m_Id": "0d6d50a7de1c45af967403bdc5d9e7cb" + } + ] + }, + "m_FragmentContext": { + "m_Position": { + "x": 503.0001220703125, + "y": 1162.0 + }, + "m_Blocks": [ + { + "m_Id": "ad18f0efb4e146a9a6c459decbaf7710" + }, + { + "m_Id": "c3ae2931736d43c6b56dc3ad6d3c08cf" + }, + { + "m_Id": "cbacef4f67fd41ea86c9e8e17adfee66" + } + ] + }, "m_PreviewData": { "serializedMesh": { "m_SerializedMesh": "{\"mesh\":{\"instanceID\":0}}", @@ -32,5 +309,1611 @@ }, "m_Path": "Shader Graph Tests/Input/Basic", "m_ConcretePrecision": 0, - "m_ActiveOutputNodeGuidSerialized": "3645aff8-5a45-4516-8b45-2380b21d7ec5" -} \ No newline at end of file + "m_OutputNode": { + "m_Id": "" + }, + "m_ActiveTargets": [ + { + "m_Id": "eaa60fa73a174fedbd8e8d3a2f830205" + } + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "018c4429a0334eed96eae09a9546b003", + "m_Id": 0, + "m_DisplayName": "Edge", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Edge", + "m_StageCapability": 3, + "m_Value": { + "x": 0.20000000298023225, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "063e4268621e4816a2baf64072597020", + "m_Id": 2, + "m_DisplayName": "T", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "T", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PositionMaterialSlot", + "m_ObjectId": "0995773701c24445bba41160bca945f9", + "m_Id": 0, + "m_DisplayName": "Position", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Position", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.LerpNode", + "m_ObjectId": "0a5bc40644414c29bb180f16a5fa2a76", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Lerp", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -162.6041259765625, + "y": 749.564697265625, + "width": 208.00003051757813, + "height": 326.00006103515627 + } + }, + "m_Slots": [ + { + "m_Id": "caab508145714bd09febb9d7147864df" + }, + { + "m_Id": "fdcbb7d717ec40adbb56c094dc0634a7" + }, + { + "m_Id": "94cd3ea2857a4d709ff3c5280f0260cb" + }, + { + "m_Id": "fb8ffdfeba6147e2ae2465327051e8a7" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "0a778950400447809335961485546780", + "m_Id": 2, + "m_DisplayName": "T", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "T", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "0b6cfe0982fa4bdb907bc0a43a6b6f8d", + "m_Id": 3, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "0d6d50a7de1c45af967403bdc5d9e7cb", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Tangent", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "dc086dbb8c6f4e5da776741b8850e235" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Tangent" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "169c1f8986b040f1a2809136013f09b0", + "m_Group": { + "m_Id": "" + }, + "m_Name": "UV", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1297.004150390625, + "y": 469.9647216796875, + "width": 208.0, + "height": 312.79998779296877 + } + }, + "m_Slots": [ + { + "m_Id": "6a80a929e698467690908de868b5454b" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ColorNode", + "m_ObjectId": "18392fe3402440a09eddeda3d1930448", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Color", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -931.0, + "y": 335.9999694824219, + "width": 208.0, + "height": 127.0 + } + }, + "m_Slots": [ + { + "m_Id": "510e2646810d4d39b69ef07e305cef79" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Color": { + "color": { + "r": 14.226009368896485, + "g": 0.6439757943153381, + "b": 0.6439757943153381, + "a": 0.0 + }, + "mode": 1 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalUnlitSubTarget", + "m_ObjectId": "183c71ccf6594924b77b4ecc9129be29" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "258cd17f57a34e40aa02d64ab0f4f904", + "m_Id": 0, + "m_DisplayName": "ColorDep", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "268a5b5c7d874d97b0d3d709aa7b2794", + "m_Id": 0, + "m_DisplayName": "In", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "In", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "292319f4b2b54309a910a9d57417e23f", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "296fd70416074faf875470c0ebdf67b7", + "m_Id": 2, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "3aaf7afa840840dfb98a5241f2bac68d", + "m_Guid": { + "m_GuidSerialized": "e48795e6-ac92-4e73-b998-35775d1493bd" + }, + "m_Name": "Color", + "m_DefaultReferenceName": "Color_3aaf7afa840840dfb98a5241f2bac68d", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": true, + "m_Precision": 0, + "m_GPUInstanced": false, + "m_Hidden": false, + "m_Value": { + "r": 14.226009368896485, + "g": 0.6439757943153381, + "b": 0.6439757943153381, + "a": 0.0 + }, + "m_ColorMode": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ColorRGBMaterialSlot", + "m_ObjectId": "3ffef190d1af4bb395c8ad038c6bd16f", + "m_Id": 0, + "m_DisplayName": "Base Color", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "BaseColor", + "m_StageCapability": 2, + "m_Value": { + "x": 0.5, + "y": 0.5, + "z": 0.5 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_ColorMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "47dcdf5e8c7e4579b545b7ee6f0bc6dc", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -363.2000732421875, + "y": 791.5999755859375, + "width": 107.20001220703125, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "9dfa9ac840b147c0b9fae2b4066cf60a" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3aaf7afa840840dfb98a5241f2bac68d" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "4a7963109f1646399fb9e82679ffccf7", + "m_Id": 0, + "m_DisplayName": "Alpha Clip Threshold", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "AlphaClipThreshold", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.5, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "4c3abdc830fe4083bc26abfbd81fe1d6", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Position", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "0995773701c24445bba41160bca945f9" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Position" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "510e2646810d4d39b69ef07e305cef79", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "5ae86e840ab94cb6995bb776bef9aa6a", + "m_Id": 4, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "62631198aa444d6e8831cfef7436cb54", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "6325b20533a3410ba73af78a2dfc699d", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.StepNode", + "m_ObjectId": "67918591b6314c7ea37209bde6b19f42", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Step", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -869.8040771484375, + "y": 447.5646667480469, + "width": 208.00001525878907, + "height": 302.0 + } + }, + "m_Slots": [ + { + "m_Id": "c51e9ea874104af7909e83bf0ee20d3b" + }, + { + "m_Id": "d5b0f2e9853f4eb28193c66a3796373a" + }, + { + "m_Id": "fb6072c4223747d29244931d20d25f04" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "6a80a929e698467690908de868b5454b", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.LerpNode", + "m_ObjectId": "7b3f4324877b4bc0be967684c47bb3e0", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Lerp", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4.999949932098389, + "y": 1162.0001220703125, + "width": 208.0, + "height": 326.0 + } + }, + "m_Slots": [ + { + "m_Id": "da459989ad67461bad9ee1d5d58f61c7" + }, + { + "m_Id": "ce7409a571d94a5bbe6866b7d2e11e18" + }, + { + "m_Id": "0a778950400447809335961485546780" + }, + { + "m_Id": "d6b9d89639bb482cbf9c7f5e28794ecd" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "7c99f189214b4dc7b4a6f2988eec5219", + "m_Id": 1, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "80daeea527384ab3bd4430902c160801", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -363.0000305175781, + "y": 1145.0, + "width": 128.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "258cd17f57a34e40aa02d64ab0f4f904" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "9ca2003b25484d6aab715cc13565a6b3" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "81d4220e2c0d48bbb17dd0606c7b3260", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "82d2fe05ea294d68b216962316bf2795", + "m_Id": 1, + "m_DisplayName": "In", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "In", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.LerpNode", + "m_ObjectId": "88be5d15a3884c97965b13c8d3c2f86c", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Lerp", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -507.4040222167969, + "y": 423.56463623046877, + "width": 207.99998474121095, + "height": 326.0 + } + }, + "m_Slots": [ + { + "m_Id": "6325b20533a3410ba73af78a2dfc699d" + }, + { + "m_Id": "d35e11ddebf24d94925e7a77a9184c63" + }, + { + "m_Id": "063e4268621e4816a2baf64072597020" + }, + { + "m_Id": "a18ece47c2424dafa00ad16c2772f6df" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "94cd3ea2857a4d709ff3c5280f0260cb", + "m_Id": 2, + "m_DisplayName": "T", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "T", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "9c10b753f2b14d6889e0bbfdef79139e", + "m_Id": 1, + "m_DisplayName": "In", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "In", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "9ca2003b25484d6aab715cc13565a6b3", + "m_Guid": { + "m_GuidSerialized": "cdb94b35-e0c2-44f6-ac97-d4ad2add1fda" + }, + "m_Name": "ColorDep", + "m_DefaultReferenceName": "Color_9ca2003b25484d6aab715cc13565a6b3", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": true, + "m_Precision": 0, + "m_GPUInstanced": false, + "m_Hidden": false, + "m_Value": { + "r": 14.226009368896485, + "g": 0.6439757943153381, + "b": 0.6439757943153381, + "a": 0.0 + }, + "m_ColorMode": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "9dfa9ac840b147c0b9fae2b4066cf60a", + "m_Id": 0, + "m_DisplayName": "Color", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "a18ece47c2424dafa00ad16c2772f6df", + "m_Id": 3, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "ad18f0efb4e146a9a6c459decbaf7710", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.BaseColor", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "3ffef190d1af4bb395c8ad038c6bd16f" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.BaseColor" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "bd6aff06f3dc491ca0c84afb2f223698", + "m_Id": 0, + "m_DisplayName": "Edge", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Edge", + "m_StageCapability": 3, + "m_Value": { + "x": 0.30000001192092898, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "be0897d4b80743f993c7da1b24cf158c", + "m_Id": 0, + "m_DisplayName": "Alpha", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 2, + "m_Value": 1.0, + "m_DefaultValue": 1.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SplitNode", + "m_ObjectId": "c317135581b4440188048fb963399372", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Split", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1133.404052734375, + "y": 469.9647216796875, + "width": 118.79998779296875, + "height": 76.79998779296875 + } + }, + "m_Slots": [ + { + "m_Id": "268a5b5c7d874d97b0d3d709aa7b2794" + }, + { + "m_Id": "7c99f189214b4dc7b4a6f2988eec5219" + }, + { + "m_Id": "296fd70416074faf875470c0ebdf67b7" + }, + { + "m_Id": "0b6cfe0982fa4bdb907bc0a43a6b6f8d" + }, + { + "m_Id": "5ae86e840ab94cb6995bb776bef9aa6a" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "c3ae2931736d43c6b56dc3ad6d3c08cf", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.Alpha", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "be0897d4b80743f993c7da1b24cf158c" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Alpha" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "c51e9ea874104af7909e83bf0ee20d3b", + "m_Id": 0, + "m_DisplayName": "Edge", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Edge", + "m_StageCapability": 3, + "m_Value": { + "x": 0.10000000149011612, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.StepNode", + "m_ObjectId": "c955ebedab6b4f25b211e7dc4971400b", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Step", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -869.8040771484375, + "y": 791.9646606445313, + "width": 208.00001525878907, + "height": 301.99993896484377 + } + }, + "m_Slots": [ + { + "m_Id": "018c4429a0334eed96eae09a9546b003" + }, + { + "m_Id": "9c10b753f2b14d6889e0bbfdef79139e" + }, + { + "m_Id": "292319f4b2b54309a910a9d57417e23f" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "caab508145714bd09febb9d7147864df", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "cbacef4f67fd41ea86c9e8e17adfee66", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.AlphaClipThreshold", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "4a7963109f1646399fb9e82679ffccf7" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.AlphaClipThreshold" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "ce7409a571d94a5bbe6866b7d2e11e18", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "d35e11ddebf24d94925e7a77a9184c63", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "d5b0f2e9853f4eb28193c66a3796373a", + "m_Id": 1, + "m_DisplayName": "In", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "In", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "d6b9d89639bb482cbf9c7f5e28794ecd", + "m_Id": 3, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "da459989ad67461bad9ee1d5d58f61c7", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.TangentMaterialSlot", + "m_ObjectId": "dc086dbb8c6f4e5da776741b8850e235", + "m_Id": 0, + "m_DisplayName": "Tangent", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Tangent", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_Space": 0 +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.ColorNode", + "m_ObjectId": "e9e1ac0424e54cea87d5d48125f2d7f1", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Color", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -930.7999877929688, + "y": 169.2000274658203, + "width": 208.0, + "height": 126.79998779296875 + } + }, + "m_Slots": [ + { + "m_Id": "62631198aa444d6e8831cfef7436cb54" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Color": { + "color": { + "r": 14.226009368896485, + "g": 0.6439757943153381, + "b": 0.6439757943153381, + "a": 0.0 + }, + "mode": 1 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalTarget", + "m_ObjectId": "eaa60fa73a174fedbd8e8d3a2f830205", + "m_ActiveSubTarget": { + "m_Id": "183c71ccf6594924b77b4ecc9129be29" + }, + "m_SurfaceType": 0, + "m_AlphaMode": 0, + "m_TwoSided": false, + "m_AlphaClip": false, + "m_CustomEditorGUI": "" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalMaterialSlot", + "m_ObjectId": "f2c81ddfcd9a4a1293e2ce8e731057f6", + "m_Id": 0, + "m_DisplayName": "Normal", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Normal", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "fabb954b7b8d4c808091abd0d2155936", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Normal", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "f2c81ddfcd9a4a1293e2ce8e731057f6" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Normal" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "fb6072c4223747d29244931d20d25f04", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "fb8ffdfeba6147e2ae2465327051e8a7", + "m_Id": 3, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.StepNode", + "m_ObjectId": "fdb11d1eb0af4726a79c097c26ff4972", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Step", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -910.9392700195313, + "y": 1162.060791015625, + "width": 208.0, + "height": 302.0 + } + }, + "m_Slots": [ + { + "m_Id": "bd6aff06f3dc491ca0c84afb2f223698" + }, + { + "m_Id": "82d2fe05ea294d68b216962316bf2795" + }, + { + "m_Id": "81d4220e2c0d48bbb17dd0606c7b3260" + } + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "fdcbb7d717ec40adbb56c094dc0634a7", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Priority": 2147483647, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + diff --git a/com.unity.shadergraph/Documentation~/Color-Node.md b/com.unity.shadergraph/Documentation~/Color-Node.md index a5195dc01a7..5405913ea97 100644 --- a/com.unity.shadergraph/Documentation~/Color-Node.md +++ b/com.unity.shadergraph/Documentation~/Color-Node.md @@ -2,7 +2,9 @@ ## Description -Defines a constant **Vector 4** value in the shader using a **Color** field. Can be converted to a **Color** type [Property](Property-Types.md) via the [Node's](Node.md) context menu. The value of the **Mode** parameter will also respected when generating the [Property](Property-Types.md). +Defines a constant **Vector 4** value in the shader using a **Color** field. Can be converted to a **Color** [Property Type](Property-Types.md) via the [Node's](Node.md) context menu. The value of the **Mode** parameter will also respected when generating the [Property](Property-Types.md). + +NOTE: In versions prior to 10.0, Shader Graph assumed that HDR colors from the Color Node were in gamma space. Version 10.0 corrected this behavior, and Shader Graph now interprets HDR colors in linear space. HDR Color nodes that you created with older versions maintain the old behavior, but you can use the [Graph Inspector](Internal-Inspector.md) to upgrade them. To mimic the old behavior on a new HDR Color node, you can use a [Colorspace Conversion Node](Colorspace-Conversion-Node.md) to convert the HDR color from **RGB** to **Linear**. ## Ports @@ -23,4 +25,4 @@ The following example code represents one possible outcome of this node. ``` float4 _Color = IsGammaSpace() ? float4(1, 2, 3, 4) : float4(SRGBToLinear(float3(1, 2, 3)), 4); -``` \ No newline at end of file +``` diff --git a/com.unity.shadergraph/Documentation~/Property-Types.md b/com.unity.shadergraph/Documentation~/Property-Types.md index c7c77cde1d5..f4a378655ee 100644 --- a/com.unity.shadergraph/Documentation~/Property-Types.md +++ b/com.unity.shadergraph/Documentation~/Property-Types.md @@ -115,6 +115,8 @@ Displays an HDR color field in the material inspector. |:-------------|:------|:------------| | Default | Vector 4 | The default value of the [Property](https://docs.unity3d.com/Manual/SL-Properties.html). | +NOTE: In versions prior to 10.0, Shader Graph didn't correct HDR colors for the project colorspace. Version 10.0 corrected this behavior. HDR color properties that you created with older versions maintain the old behavior, but you can use the [Graph Inspector](Internal-Inspector.md) to upgrade them. To mimic the old behavior in a gamma space project, you can use the [Colorspace Conversion Node](Colorspace-Conversion-Node.md) to convert a new HDR **Color** property from **RGB** to **Linear** space. + ## Texture 2D Defines a [Texture 2D](https://docs.unity3d.com/Manual/class-TextureImporter.html) value. Displays an object field of type [Texture](https://docs.unity3d.com/Manual/class-TextureImporter.html) in the material inspector. diff --git a/com.unity.shadergraph/Documentation~/Shader-Graph-Preferences.md b/com.unity.shadergraph/Documentation~/Shader-Graph-Preferences.md index 88e54abe424..1d496f6d051 100644 --- a/com.unity.shadergraph/Documentation~/Shader-Graph-Preferences.md +++ b/com.unity.shadergraph/Documentation~/Shader-Graph-Preferences.md @@ -7,4 +7,5 @@ To access the Shader Graph Project-wide settings, click **Edit** > **Preferences | Name | Description | |:------- |:----------- | |Shader Variant Limit| Enter a value to set the maximum number of shader variants. If your graph exceeds this maximum value, Unity throws the following error: _Validation: Graph is generating too many variants. Either delete Keywords, reduce Keyword variants or increase the Shader Variant Limit in Preferences > Shader Graph._ For more information about shader variants, see [Making multiple shader program variants](https://docs.unity3d.com/Manual/SL-MultipleProgramVariants.html). | -| Automatically Add or Remove Block Nodes | Toggle either on or off. If this option is on, when changing Graph Settings any needed Block nodes will be added to the Master Stack. Any incompatible Block nodes that have no incoming connections will be removed from the Master Stack. If this option is off, no Block nodes will be added to or removed from the Master Stack. | \ No newline at end of file +| Automatically Add or Remove Block Nodes | Toggle either on or off. If this option is on, when changing Graph Settings any needed Block nodes will be added to the Master Stack. Any incompatible Block nodes that have no incoming connections will be removed from the Master Stack. If this option is off, no Block nodes will be added to or removed from the Master Stack. | +Enable Deprecated Nodes | Enable this setting to turn off warnings for deprecated nodes and properties, which also allows you to create older versions of nodes and properties. If you don't enable this setting, Shader Graph displays warnings for deprecated nodes and properties, and any new nodes and properties you create use the latest version. | diff --git a/com.unity.shadergraph/Documentation~/images/DeprecatedColorNode.png b/com.unity.shadergraph/Documentation~/images/DeprecatedColorNode.png new file mode 100644 index 00000000000..147dc5293a2 --- /dev/null +++ b/com.unity.shadergraph/Documentation~/images/DeprecatedColorNode.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9834cc8a8de80c7fab992862d54898b3cd1a76dafb360490332d7c8bbd743187 +size 21812 diff --git a/com.unity.shadergraph/Documentation~/images/DeprecatedColorProperty.png b/com.unity.shadergraph/Documentation~/images/DeprecatedColorProperty.png new file mode 100644 index 00000000000..d4896a1b637 --- /dev/null +++ b/com.unity.shadergraph/Documentation~/images/DeprecatedColorProperty.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd22355be95f26843a54ddc1a86beca0587b0a10af9eb5b55ae4e5718bcc44c5 +size 11696 diff --git a/com.unity.shadergraph/Documentation~/images/DeprecatedWarning.png b/com.unity.shadergraph/Documentation~/images/DeprecatedWarning.png new file mode 100644 index 00000000000..4f35d0fab8e --- /dev/null +++ b/com.unity.shadergraph/Documentation~/images/DeprecatedWarning.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d63aadb29209ac42046a77c72b9d50b3b2d30ae01bd7b30a11e005f5d6f6bed +size 32578 diff --git a/com.unity.shadergraph/Editor/Data/Graphs/AbstractShaderProperty.cs b/com.unity.shadergraph/Editor/Data/Graphs/AbstractShaderProperty.cs index 739ec000acb..c80cf52afc8 100644 --- a/com.unity.shadergraph/Editor/Data/Graphs/AbstractShaderProperty.cs +++ b/com.unity.shadergraph/Editor/Data/Graphs/AbstractShaderProperty.cs @@ -7,6 +7,7 @@ namespace UnityEditor.ShaderGraph.Internal [Serializable] public abstract class AbstractShaderProperty : ShaderInput { + public abstract PropertyType propertyType { get; } internal override ConcreteSlotValueType concreteShaderValueType => propertyType.ToConcreteShaderValueType(); @@ -108,6 +109,12 @@ internal virtual string GetPropertyAsArgumentString() internal abstract AbstractMaterialNode ToConcreteNode(); internal abstract PreviewProperty GetPreviewMaterialProperty(); internal virtual bool isGpuInstanceable => false; + + public virtual string GetPropertyTypeString() + { + string depString = $" (Deprecated{(ShaderGraphPreferences.allowDeprecatedBehaviors ? " V" + sgVersion : "" )})" ; + return propertyType.ToString() + (sgVersion < latestVersion ? depString : ""); + } } [Serializable] diff --git a/com.unity.shadergraph/Editor/Data/Graphs/ColorShaderProperty.cs b/com.unity.shadergraph/Editor/Data/Graphs/ColorShaderProperty.cs index 77532e9723a..dbcf6e7d263 100644 --- a/com.unity.shadergraph/Editor/Data/Graphs/ColorShaderProperty.cs +++ b/com.unity.shadergraph/Editor/Data/Graphs/ColorShaderProperty.cs @@ -9,10 +9,17 @@ namespace UnityEditor.ShaderGraph.Internal [FormerName("UnityEditor.ShaderGraph.ColorShaderProperty")] public sealed class ColorShaderProperty : AbstractShaderProperty { + public override int latestVersion => 1; + internal ColorShaderProperty() { displayName = "Color"; } + + internal ColorShaderProperty(int version) : this() + { + this.sgVersion = version; + } public override PropertyType propertyType => PropertyType.Color; @@ -41,7 +48,7 @@ public ColorMode colorMode get => m_ColorMode; set => m_ColorMode = value; } - + internal override AbstractMaterialNode ToConcreteNode() { return new ColorNode { color = new ColorNode.Color(value, colorMode) }; @@ -49,17 +56,31 @@ internal override AbstractMaterialNode ToConcreteNode() internal override PreviewProperty GetPreviewMaterialProperty() { - return new PreviewProperty(propertyType) + UnityEngine.Color propColor = value; + if (colorMode == ColorMode.Default) + { + if (PlayerSettings.colorSpace == ColorSpace.Linear) + propColor = propColor.linear; + } + else if (colorMode == ColorMode.HDR) + { + // conversion from linear to active color space is handled in the shader code (see PropertyNode.cs) + } + + // we use Vector4 type to avoid all of the automatic color conversions of PropertyType.Color + return new PreviewProperty(PropertyType.Vector4) { name = referenceName, - colorValue = value + vector4Value = propColor }; + } internal override ShaderInput Copy() { return new ColorShaderProperty() { + sgVersion = sgVersion, displayName = displayName, hidden = hidden, value = value, diff --git a/com.unity.shadergraph/Editor/Data/Graphs/GraphData.cs b/com.unity.shadergraph/Editor/Data/Graphs/GraphData.cs index 585ee2b3985..3cf16407b47 100644 --- a/com.unity.shadergraph/Editor/Data/Graphs/GraphData.cs +++ b/com.unity.shadergraph/Editor/Data/Graphs/GraphData.cs @@ -23,10 +23,8 @@ namespace UnityEditor.ShaderGraph [FormerName("UnityEditor.ShaderGraph.AbstractMaterialGraph")] sealed partial class GraphData : JsonObject { - const int k_CurrentVersion = 2; - [SerializeField] - int m_Version; + public override int latestVersion => 2; public GraphObject owner { get; set; } @@ -1630,7 +1628,7 @@ internal void PasteGraph(CopyPasteGraph graphToPaste, List public override void OnBeforeSerialize() { m_Edges.Sort(); - m_Version = k_CurrentVersion; + ChangeVersion(latestVersion); } static T DeserializeLegacy(string typeString, string json) where T : JsonObject @@ -1667,167 +1665,177 @@ static AbstractMaterialNode DeserializeLegacy(string typeString, string json) public override void OnAfterDeserialize(string json) { - if (m_Version == 0) + + if (sgVersion == 0) { var graphData0 = JsonUtility.FromJson(json); - - var nodeGuidMap = new Dictionary(); - var propertyGuidMap = new Dictionary(); - var keywordGuidMap = new Dictionary(); - var groupGuidMap = new Dictionary(); - var slotsField = typeof(AbstractMaterialNode).GetField("m_Slots", BindingFlags.Instance | BindingFlags.NonPublic); - var propertyField = typeof(PropertyNode).GetField("m_Property", BindingFlags.Instance | BindingFlags.NonPublic); - var keywordField = typeof(KeywordNode).GetField("m_Keyword", BindingFlags.Instance | BindingFlags.NonPublic); - var defaultReferenceNameField = typeof(ShaderInput).GetField("m_DefaultReferenceName", BindingFlags.Instance | BindingFlags.NonPublic); - - m_GroupDatas.Clear(); - m_StickyNoteDatas.Clear(); - - foreach (var group0 in graphData0.m_Groups) + //If a graph was previously updated to V2, since we had to rename m_Version to m_SGVersion to avoid collision with an upgrade system from + //HDRP, we have to handle the case that our version might not be correct - + if (graphData0.m_Version > 0) { - var group = new GroupData(group0.m_Title, group0.m_Position); - m_GroupDatas.Add(group); - if (!groupGuidMap.ContainsKey(group0.m_GuidSerialized)) - { - groupGuidMap.Add(group0.m_GuidSerialized, group); - } - else if (!groupGuidMap[group0.m_GuidSerialized].Equals(group.objectId)) - { - Debug.LogError("Group id mismatch"); - } + sgVersion = graphData0.m_Version; } - - foreach (var serializedProperty in graphData0.m_SerializedProperties) + else { - var property = DeserializeLegacy(serializedProperty.typeInfo.fullName, serializedProperty.JSONnodeData); - if (property == null) - { - continue; - } - m_Properties.Add(property); + var nodeGuidMap = new Dictionary(); + var propertyGuidMap = new Dictionary(); + var keywordGuidMap = new Dictionary(); + var groupGuidMap = new Dictionary(); + var slotsField = typeof(AbstractMaterialNode).GetField("m_Slots", BindingFlags.Instance | BindingFlags.NonPublic); + var propertyField = typeof(PropertyNode).GetField("m_Property", BindingFlags.Instance | BindingFlags.NonPublic); + var keywordField = typeof(KeywordNode).GetField("m_Keyword", BindingFlags.Instance | BindingFlags.NonPublic); + var defaultReferenceNameField = typeof(ShaderInput).GetField("m_DefaultReferenceName", BindingFlags.Instance | BindingFlags.NonPublic); - var input0 = JsonUtility.FromJson(serializedProperty.JSONnodeData); - propertyGuidMap[input0.m_Guid.m_GuidSerialized] = property; + m_GroupDatas.Clear(); + m_StickyNoteDatas.Clear(); - // Fix up missing reference names - // Properties on Sub Graphs in V0 never have reference names serialized - // To maintain Sub Graph node property mapping we force guid based reference names on upgrade - if (string.IsNullOrEmpty((string)defaultReferenceNameField.GetValue(property))) + foreach (var group0 in graphData0.m_Groups) { - // ColorShaderProperty is the only Property case where `GetDefaultReferenceName` was overriden - if (MultiJson.ParseType(serializedProperty.typeInfo.fullName) == typeof(ColorShaderProperty)) + var group = new GroupData(group0.m_Title, group0.m_Position); + m_GroupDatas.Add(group); + if (!groupGuidMap.ContainsKey(group0.m_GuidSerialized)) { - defaultReferenceNameField.SetValue(property, $"Color_{GuidEncoder.Encode(Guid.Parse(input0.m_Guid.m_GuidSerialized))}"); + groupGuidMap.Add(group0.m_GuidSerialized, group); } - else + else if (!groupGuidMap[group0.m_GuidSerialized].Equals(group.objectId)) { - defaultReferenceNameField.SetValue(property, $"{property.concreteShaderValueType}_{GuidEncoder.Encode(Guid.Parse(input0.m_Guid.m_GuidSerialized))}"); + Debug.LogError("Group id mismatch"); } } - } - foreach (var serializedKeyword in graphData0.m_SerializedKeywords) - { - var keyword = DeserializeLegacy(serializedKeyword.typeInfo.fullName, serializedKeyword.JSONnodeData); - if (keyword == null) + foreach (var serializedProperty in graphData0.m_SerializedProperties) { - continue; - } + var property = DeserializeLegacy(serializedProperty.typeInfo.fullName, serializedProperty.JSONnodeData); + if (property == null) + { + continue; + } - m_Keywords.Add(keyword); + m_Properties.Add(property); - var input0 = JsonUtility.FromJson(serializedKeyword.JSONnodeData); - keywordGuidMap[input0.m_Guid.m_GuidSerialized] = keyword; - } + var input0 = JsonUtility.FromJson(serializedProperty.JSONnodeData); + propertyGuidMap[input0.m_Guid.m_GuidSerialized] = property; - foreach (var serializedNode in graphData0.m_SerializableNodes) - { - var node0 = JsonUtility.FromJson(serializedNode.JSONnodeData); + // Fix up missing reference names + // Properties on Sub Graphs in V0 never have reference names serialized + // To maintain Sub Graph node property mapping we force guid based reference names on upgrade + if (string.IsNullOrEmpty((string)defaultReferenceNameField.GetValue(property))) + { + // ColorShaderProperty is the only Property case where `GetDefaultReferenceName` was overriden + if (MultiJson.ParseType(serializedProperty.typeInfo.fullName) == typeof(ColorShaderProperty)) + { + defaultReferenceNameField.SetValue(property, $"Color_{GuidEncoder.Encode(Guid.Parse(input0.m_Guid.m_GuidSerialized))}"); + } + else + { + defaultReferenceNameField.SetValue(property, $"{property.concreteShaderValueType}_{GuidEncoder.Encode(Guid.Parse(input0.m_Guid.m_GuidSerialized))}"); + } + } + } - var node = DeserializeLegacy(serializedNode.typeInfo.fullName, serializedNode.JSONnodeData); - if (node == null) + foreach (var serializedKeyword in graphData0.m_SerializedKeywords) { - continue; - } + var keyword = DeserializeLegacy(serializedKeyword.typeInfo.fullName, serializedKeyword.JSONnodeData); + if (keyword == null) + { + continue; + } - nodeGuidMap.Add(node0.m_GuidSerialized, node); - m_Nodes.Add(node); + m_Keywords.Add(keyword); - if (!string.IsNullOrEmpty(node0.m_PropertyGuidSerialized) && propertyGuidMap.TryGetValue(node0.m_PropertyGuidSerialized, out var property)) - { - propertyField.SetValue(node, (JsonRef)property); + var input0 = JsonUtility.FromJson(serializedKeyword.JSONnodeData); + keywordGuidMap[input0.m_Guid.m_GuidSerialized] = keyword; } - if (!string.IsNullOrEmpty(node0.m_KeywordGuidSerialized) && keywordGuidMap.TryGetValue(node0.m_KeywordGuidSerialized, out var keyword)) + foreach (var serializedNode in graphData0.m_SerializableNodes) { - keywordField.SetValue(node, (JsonRef)keyword); - } - - var slots = (List>)slotsField.GetValue(node); - slots.Clear(); + var node0 = JsonUtility.FromJson(serializedNode.JSONnodeData); - foreach (var serializedSlot in node0.m_SerializableSlots) - { - var slot = DeserializeLegacy(serializedSlot.typeInfo.fullName, serializedSlot.JSONnodeData); - if (slot == null) + var node = DeserializeLegacy(serializedNode.typeInfo.fullName, serializedNode.JSONnodeData); + if (node == null) { continue; } - slots.Add(slot); - } + nodeGuidMap.Add(node0.m_GuidSerialized, node); + m_Nodes.Add(node); - if(!String.IsNullOrEmpty(node0.m_GroupGuidSerialized)) - { - if(groupGuidMap.TryGetValue(node0.m_GroupGuidSerialized, out GroupData foundGroup)) + if (!string.IsNullOrEmpty(node0.m_PropertyGuidSerialized) && propertyGuidMap.TryGetValue(node0.m_PropertyGuidSerialized, out var property)) + { + propertyField.SetValue(node, (JsonRef)property); + } + + if (!string.IsNullOrEmpty(node0.m_KeywordGuidSerialized) && keywordGuidMap.TryGetValue(node0.m_KeywordGuidSerialized, out var keyword)) + { + keywordField.SetValue(node, (JsonRef)keyword); + } + + var slots = (List>)slotsField.GetValue(node); + slots.Clear(); + + foreach (var serializedSlot in node0.m_SerializableSlots) + { + var slot = DeserializeLegacy(serializedSlot.typeInfo.fullName, serializedSlot.JSONnodeData); + if (slot == null) + { + continue; + } + + slots.Add(slot); + } + + if (!String.IsNullOrEmpty(node0.m_GroupGuidSerialized)) { - node.group = foundGroup; + if (groupGuidMap.TryGetValue(node0.m_GroupGuidSerialized, out GroupData foundGroup)) + { + node.group = foundGroup; + } } } - } - foreach (var stickyNote0 in graphData0.m_StickyNotes) - { - var stickyNote = new StickyNoteData(stickyNote0.m_Title, stickyNote0.m_Content, stickyNote0.m_Position); - if(!String.IsNullOrEmpty(stickyNote0.m_GroupGuidSerialized)) + foreach (var stickyNote0 in graphData0.m_StickyNotes) { - if(groupGuidMap.TryGetValue(stickyNote0.m_GroupGuidSerialized, out GroupData foundGroup)) + var stickyNote = new StickyNoteData(stickyNote0.m_Title, stickyNote0.m_Content, stickyNote0.m_Position); + if (!String.IsNullOrEmpty(stickyNote0.m_GroupGuidSerialized)) { - stickyNote.group = foundGroup; + if (groupGuidMap.TryGetValue(stickyNote0.m_GroupGuidSerialized, out GroupData foundGroup)) + { + stickyNote.group = foundGroup; + } } + stickyNote.theme = stickyNote0.m_Theme; + stickyNote.textSize = stickyNote0.m_TextSize; + m_StickyNoteDatas.Add(stickyNote); } - stickyNote.theme = stickyNote0.m_Theme; - stickyNote.textSize = stickyNote0.m_TextSize; - m_StickyNoteDatas.Add(stickyNote); - } - var subgraphOuput = GetNodes(); - isSubGraph = subgraphOuput.Any(); + var subgraphOuput = GetNodes(); + isSubGraph = subgraphOuput.Any(); - if (isSubGraph) - { - m_OutputNode = subgraphOuput.FirstOrDefault(); - } - else if (!string.IsNullOrEmpty(graphData0.m_ActiveOutputNodeGuidSerialized)) - { - m_OutputNode = nodeGuidMap[graphData0.m_ActiveOutputNodeGuidSerialized]; - } - else - { - m_OutputNode = (AbstractMaterialNode)GetNodes().FirstOrDefault(); - } + if (isSubGraph) + { + m_OutputNode = subgraphOuput.FirstOrDefault(); + } + else if (!string.IsNullOrEmpty(graphData0.m_ActiveOutputNodeGuidSerialized)) + { + m_OutputNode = nodeGuidMap[graphData0.m_ActiveOutputNodeGuidSerialized]; + } + else + { + m_OutputNode = (AbstractMaterialNode)GetNodes().FirstOrDefault(); + } - foreach (var serializedElement in graphData0.m_SerializableEdges) - { - var edge0 = JsonUtility.FromJson(serializedElement.JSONnodeData); - m_Edges.Add(new Edge( - new SlotReference( - nodeGuidMap[edge0.m_OutputSlot.m_NodeGUIDSerialized], - edge0.m_OutputSlot.m_SlotId), - new SlotReference( - nodeGuidMap[edge0.m_InputSlot.m_NodeGUIDSerialized], - edge0.m_InputSlot.m_SlotId))); + foreach (var serializedElement in graphData0.m_SerializableEdges) + { + var edge0 = JsonUtility.FromJson(serializedElement.JSONnodeData); + m_Edges.Add(new Edge( + new SlotReference( + nodeGuidMap[edge0.m_OutputSlot.m_NodeGUIDSerialized], + edge0.m_OutputSlot.m_SlotId), + new SlotReference( + nodeGuidMap[edge0.m_InputSlot.m_NodeGUIDSerialized], + edge0.m_InputSlot.m_SlotId))); + } } } @@ -1835,19 +1843,19 @@ public override void OnAfterDeserialize(string json) // In V2 we need to defer version set to in OnAfterMultiDeserialize // This is because we need access to m_OutputNode to convert it to Targets and Stacks // The JsonObject will not be fully deserialized until OnAfterMultiDeserialize - bool deferredUpgrades = m_Version < 2; + bool deferredUpgrades = sgVersion < 2; if(!deferredUpgrades) { - m_Version = k_CurrentVersion; + ChangeVersion(latestVersion); } } public override void OnAfterMultiDeserialize(string json) { // Deferred upgrades - if(m_Version != k_CurrentVersion) + if(sgVersion != latestVersion) { - if(m_Version < 2) + if(sgVersion < 2) { var addedBlocks = ListPool.Get(); @@ -1964,7 +1972,7 @@ void UpgradeFromBlockMap(Dictionary blockMap) m_NodeEdges.Clear(); } - m_Version = k_CurrentVersion; + ChangeVersion(latestVersion); } PooledList<(LegacyUnknownTypeNode, AbstractMaterialNode)> updatedNodes = PooledList<(LegacyUnknownTypeNode,AbstractMaterialNode)>.Get(); diff --git a/com.unity.shadergraph/Editor/Data/Legacy/GraphData0.cs b/com.unity.shadergraph/Editor/Data/Legacy/GraphData0.cs index 9814fa95986..0179f8d5b35 100644 --- a/com.unity.shadergraph/Editor/Data/Legacy/GraphData0.cs +++ b/com.unity.shadergraph/Editor/Data/Legacy/GraphData0.cs @@ -20,5 +20,7 @@ class GraphData0 public List m_StickyNotes; public List m_Groups; + + public int m_Version = -1; } } diff --git a/com.unity.shadergraph/Editor/Data/Nodes/AbstractMaterialNode.cs b/com.unity.shadergraph/Editor/Data/Nodes/AbstractMaterialNode.cs index f8911144750..0fbd4443ecb 100644 --- a/com.unity.shadergraph/Editor/Data/Nodes/AbstractMaterialNode.cs +++ b/com.unity.shadergraph/Editor/Data/Nodes/AbstractMaterialNode.cs @@ -19,9 +19,6 @@ abstract class AbstractMaterialNode : JsonObject, IGroupItem [SerializeField] private string m_Name; - [SerializeField] - private int m_NodeVersion; - [SerializeField] private DrawState m_DrawState; @@ -309,8 +306,6 @@ public void SetColor(string provider, Color color) protected AbstractMaterialNode() { m_DrawState.expanded = true; - m_NodeVersion = GetCompiledNodeVersion(); - version = 0; } public void GetInputSlots(List foundSlots) where T : MaterialSlot @@ -675,10 +670,6 @@ public virtual void Concretize() owner?.ClearErrorsForNode(this); EvaluateConcretePrecision(); EvaluateDynamicMaterialSlots(); - if(!hasError) - { - ++version; - } } public virtual void ValidateNode() @@ -686,7 +677,6 @@ public virtual void ValidateNode() } - public int version { get; set; } public virtual bool canCutNode => true; public virtual bool canCopyNode => true; @@ -861,19 +851,6 @@ public virtual IEnumerable GetInputsWithNoConnection() return this.GetInputSlots().Where(x => !owner.GetEdges(GetSlotReference(x.id)).Any()); } - public override void OnAfterMultiDeserialize(string json) - { - if (m_NodeVersion != GetCompiledNodeVersion()) - { - UpgradeNodeWithVersion(m_NodeVersion, GetCompiledNodeVersion()); - m_NodeVersion = GetCompiledNodeVersion(); - } - - - - // UpdateNodeAfterDeserialization(); - } - public void SetupSlots() { foreach (var s in m_Slots.SelectValue()) @@ -883,11 +860,6 @@ public void SetupSlots() public virtual void UpdateNodeAfterDeserialization() {} - public virtual int GetCompiledNodeVersion() => 0; - - public virtual void UpgradeNodeWithVersion(int from, int to) - {} - public bool IsSlotConnected(int slotId) { var slot = FindSlot(slotId); diff --git a/com.unity.shadergraph/Editor/Data/Nodes/Input/Basic/ColorNode.cs b/com.unity.shadergraph/Editor/Data/Nodes/Input/Basic/ColorNode.cs index 7072d8b70f3..bd023c77f4c 100644 --- a/com.unity.shadergraph/Editor/Data/Nodes/Input/Basic/ColorNode.cs +++ b/com.unity.shadergraph/Editor/Data/Nodes/Input/Basic/ColorNode.cs @@ -22,6 +22,8 @@ class ColorNode : AbstractMaterialNode, IGeneratesBodyCode, IPropertyFromNode public const int OutputSlotId = 0; private const string kOutputSlotName = "Out"; + public override int latestVersion => 1; + public ColorNode() { name = "Color"; @@ -93,12 +95,38 @@ public void GenerateNodeCode(ShaderStringBuilder sb, GenerationMode generationMo if (generationMode.IsPreview()) return; - sb.AppendLine(@"$precision4 {0} = IsGammaSpace() ? $precision4({1}, {2}, {3}, {4}) : $precision4(SRGBToLinear($precision3({1}, {2}, {3})), {4});" - , GetVariableNameForNode() - , NodeUtils.FloatToShaderValue(color.color.r) - , NodeUtils.FloatToShaderValue(color.color.g) - , NodeUtils.FloatToShaderValue(color.color.b) - , NodeUtils.FloatToShaderValue(color.color.a)); + switch (sgVersion) + { + case 0: + sb.AppendLine(@"$precision4 {0} = IsGammaSpace() ? $precision4({1}, {2}, {3}, {4}) : $precision4(SRGBToLinear($precision3({1}, {2}, {3})), {4});" + , GetVariableNameForNode() + , NodeUtils.FloatToShaderValue(color.color.r) + , NodeUtils.FloatToShaderValue(color.color.g) + , NodeUtils.FloatToShaderValue(color.color.b) + , NodeUtils.FloatToShaderValue(color.color.a)); + break; + case 1: + //HDR color picker assumes Linear space, regular color picker assumes SRGB. Handle both cases + if(color.mode == ColorMode.Default) + { + sb.AppendLine(@"$precision4 {0} = IsGammaSpace() ? $precision4({1}, {2}, {3}, {4}) : $precision4(SRGBToLinear($precision3({1}, {2}, {3})), {4});" + , GetVariableNameForNode() + , NodeUtils.FloatToShaderValue(color.color.r) + , NodeUtils.FloatToShaderValue(color.color.g) + , NodeUtils.FloatToShaderValue(color.color.b) + , NodeUtils.FloatToShaderValue(color.color.a)); + } + else + { + sb.AppendLine(@"$precision4 {0} = IsGammaSpace() ? LinearToSRGB($precision4({1}, {2}, {3}, {4})) : $precision4({1}, {2}, {3}, {4});" + , GetVariableNameForNode() + , NodeUtils.FloatToShaderValue(color.color.r) + , NodeUtils.FloatToShaderValue(color.color.g) + , NodeUtils.FloatToShaderValue(color.color.b) + , NodeUtils.FloatToShaderValue(color.color.a)); + } + break; + } } public override string GetVariableNameForSlot(int slotId) @@ -108,16 +136,38 @@ public override string GetVariableNameForSlot(int slotId) public override void CollectPreviewMaterialProperties(List properties) { - properties.Add(new PreviewProperty(PropertyType.Color) + UnityEngine.Color propColor = color.color; + if (color.mode == ColorMode.Default) + { + if (PlayerSettings.colorSpace == ColorSpace.Linear) + propColor = propColor.linear; + } + if (color.mode == ColorMode.HDR) + { + switch (sgVersion) + { + case 0: + if(PlayerSettings.colorSpace == ColorSpace.Linear) + propColor = propColor.linear; + break; + case 1: + if (PlayerSettings.colorSpace == ColorSpace.Gamma) + propColor = propColor.gamma; + break; + } + } + + // we use Vector4 type to avoid all of the automatic color conversions of PropertyType.Color + properties.Add(new PreviewProperty(PropertyType.Vector4) { name = GetVariableNameForNode(), - colorValue = PlayerSettings.colorSpace == ColorSpace.Linear ? color.color.linear : color.color + vector4Value = propColor }); } public AbstractShaderProperty AsShaderProperty() { - return new ColorShaderProperty { value = color.color, colorMode = color.mode }; + return new ColorShaderProperty() { value = color.color, colorMode = color.mode }; } public int outputSlotId { get { return OutputSlotId; } } diff --git a/com.unity.shadergraph/Editor/Data/Nodes/Input/Geometry/PositionNode.cs b/com.unity.shadergraph/Editor/Data/Nodes/Input/Geometry/PositionNode.cs index ecf9e4b8fad..68f2f856ebb 100644 --- a/com.unity.shadergraph/Editor/Data/Nodes/Input/Geometry/PositionNode.cs +++ b/com.unity.shadergraph/Editor/Data/Nodes/Input/Geometry/PositionNode.cs @@ -13,6 +13,7 @@ namespace UnityEditor.ShaderGraph [Title("Input", "Geometry", "Position")] class PositionNode : GeometryNode, IMayRequirePosition { + public override int latestVersion => 1; private const int kOutputSlotId = 0; public const string kOutputSlotName = "Out"; public override List validSpaces => new List {CoordinateSpace.Object, CoordinateSpace.View, CoordinateSpace.World, CoordinateSpace.Tangent, CoordinateSpace.AbsoluteWorld}; @@ -22,6 +23,7 @@ public PositionNode() name = "Position"; precision = Precision.Float; UpdateNodeAfterDeserialization(); + onBeforeVersionChange += UpgradeNodeWithVersion; } @@ -36,11 +38,11 @@ public sealed override void UpdateNodeAfterDeserialization() RemoveSlotsNameNotMatching(new[] { kOutputSlotId }); } - public override int GetCompiledNodeVersion() => 1; - public override void UpgradeNodeWithVersion(int from, int to) + + public void UpgradeNodeWithVersion(int newVersion) { - if (from == 0 && to == 1 && space == CoordinateSpace.World) + if (sgVersion == 0 && newVersion > 0 && space == CoordinateSpace.World) { var names = validSpaces.Select(cs => cs.ToString().PascalToLabel()).ToArray(); spacePopup = new PopupList(names, (int)CoordinateSpace.AbsoluteWorld); diff --git a/com.unity.shadergraph/Editor/Data/Nodes/Input/PropertyNode.cs b/com.unity.shadergraph/Editor/Data/Nodes/Input/PropertyNode.cs index 9bdf9bba7a0..956f7c6cf5a 100644 --- a/com.unity.shadergraph/Editor/Data/Nodes/Input/PropertyNode.cs +++ b/com.unity.shadergraph/Editor/Data/Nodes/Input/PropertyNode.cs @@ -133,7 +133,7 @@ void AddOutputSlot() public void GenerateNodeCode(ShaderStringBuilder sb, GenerationMode generationMode) { - switch(property.propertyType) + switch (property.propertyType) { case PropertyType.Boolean: sb.AppendLine($"$precision {GetVariableNameForSlot(OutputSlotId)} = {property.referenceName};"); @@ -151,7 +151,26 @@ public void GenerateNodeCode(ShaderStringBuilder sb, GenerationMode generationMo sb.AppendLine($"$precision4 {GetVariableNameForSlot(OutputSlotId)} = {property.referenceName};"); break; case PropertyType.Color: - sb.AppendLine($"$precision4 {GetVariableNameForSlot(OutputSlotId)} = {property.referenceName};"); + switch (property.sgVersion) + { + case 0: + sb.AppendLine($"$precision4 {GetVariableNameForSlot(OutputSlotId)} = {property.referenceName};"); + break; + case 1: + //Exposed color properties get put into the correct space automagikally by Unity UNLESS tagged as HDR, then they just get passed in as is. + //for consistency with other places in the editor, we assume HDR colors are in linear space, and correct for gamma space here + if ((property as ColorShaderProperty).colorMode == ColorMode.HDR) + { + sb.AppendLine($"$precision4 {GetVariableNameForSlot(OutputSlotId)} = IsGammaSpace() ? LinearToSRGB({property.referenceName}) : {property.referenceName};"); + } + else + { + sb.AppendLine($"$precision4 {GetVariableNameForSlot(OutputSlotId)} = {property.referenceName};"); + } + break; + default: + throw new Exception($"Unknown Color Property Version on property {property.displayName}"); + } break; case PropertyType.Matrix2: sb.AppendLine($"$precision2x2 {GetVariableNameForSlot(OutputSlotId)} = {property.referenceName};"); diff --git a/com.unity.shadergraph/Editor/Drawing/Blackboard/BlackboardFieldView.cs b/com.unity.shadergraph/Editor/Drawing/Blackboard/BlackboardFieldView.cs index 451eae257b4..5bacdd55ab8 100644 --- a/com.unity.shadergraph/Editor/Drawing/Blackboard/BlackboardFieldView.cs +++ b/com.unity.shadergraph/Editor/Drawing/Blackboard/BlackboardFieldView.cs @@ -92,6 +92,14 @@ public void InspectorUpdateTrigger() m_inspectorUpdateTrigger(); } + private void UpdateTypeText() + { + if(shaderInput is AbstractShaderProperty asp) + { + typeText = asp.GetPropertyTypeString(); + } + } + public BlackboardFieldView(GraphData graph, ShaderInput input, BlackBoardCallback updateBlackboardView, Texture icon, string text, string typeText) : base(icon, text, typeText) { @@ -99,6 +107,12 @@ public BlackboardFieldView(GraphData graph, ShaderInput input, BlackBoardCallbac m_Graph = graph; m_Input = input; this.BlackBoardUpdateTrigger = updateBlackboardView; + ShaderGraphPreferences.onAllowDeprecatedChanged += UpdateTypeText; + } + + ~BlackboardFieldView() + { + ShaderGraphPreferences.onAllowDeprecatedChanged -= UpdateTypeText; } public object GetObjectToInspect() diff --git a/com.unity.shadergraph/Editor/Drawing/Blackboard/BlackboardProvider.cs b/com.unity.shadergraph/Editor/Drawing/Blackboard/BlackboardProvider.cs index 221e6d1147a..f4261809045 100644 --- a/com.unity.shadergraph/Editor/Drawing/Blackboard/BlackboardProvider.cs +++ b/com.unity.shadergraph/Editor/Drawing/Blackboard/BlackboardProvider.cs @@ -207,6 +207,10 @@ void AddPropertyItems(GenericMenu gm) gm.AddItem(new GUIContent($"Vector3"), false, () => AddInputRow(new Vector3ShaderProperty(), true)); gm.AddItem(new GUIContent($"Vector4"), false, () => AddInputRow(new Vector4ShaderProperty(), true)); gm.AddItem(new GUIContent($"Color"), false, () => AddInputRow(new ColorShaderProperty(), true)); + if(ShaderGraphPreferences.allowDeprecatedBehaviors) + { + gm.AddItem(new GUIContent($"Color (Deprecated)"), false, () => AddInputRow(new ColorShaderProperty(0), true)); + } gm.AddItem(new GUIContent($"Texture2D"), false, () => AddInputRow(new Texture2DShaderProperty(), true)); gm.AddItem(new GUIContent($"Texture2D Array"), false, () => AddInputRow(new Texture2DArrayShaderProperty(), true)); gm.AddItem(new GUIContent($"Texture3D"), false, () => AddInputRow(new Texture3DShaderProperty(), true)); @@ -278,8 +282,10 @@ void UpdateBlackboardView() public void HandleGraphChanges(bool wasUndoRedoPerformed) { var selection = new List(); - if(blackboard.selection != null) - selection.Concat(blackboard.selection); + if (blackboard.selection != null) + { + selection.AddRange(blackboard.selection); + } foreach (var inputGuid in m_Graph.removedInputs) { @@ -347,8 +353,15 @@ void AddInputRow(ShaderInput input, bool create = false, int index = -1) case AbstractShaderProperty property: { var icon = (m_Graph.isSubGraph || (property.isExposable && property.generatePropertyBlock)) ? exposedIcon : null; - field = new BlackboardFieldView(m_Graph, property, UpdateBlackboardView, icon, property.displayName, property.propertyType.ToString()) { userData = property }; + field = new BlackboardFieldView(m_Graph, property, UpdateBlackboardView, icon, property.displayName, property.GetPropertyTypeString()) { userData = property }; field.RegisterCallback(UpdateSelectionAfterUndoRedo); + property.onBeforeVersionChange += (_) => m_Graph.owner.RegisterCompleteObjectUndo($"Change {property.displayName} Version"); + void UpdateField() + { + field.typeText = property.GetPropertyTypeString(); + field.InspectorUpdateTrigger(); + } + property.onAfterVersionChange += UpdateField; row = new BlackboardRow(field, null); if (index < 0 || index > m_InputRows.Count) diff --git a/com.unity.shadergraph/Editor/Drawing/Inspector/PropertyDrawers/AbstractMaterialNodePropertyDrawer.cs b/com.unity.shadergraph/Editor/Drawing/Inspector/PropertyDrawers/AbstractMaterialNodePropertyDrawer.cs index 14b5de40fd3..112148e0b06 100644 --- a/com.unity.shadergraph/Editor/Drawing/Inspector/PropertyDrawers/AbstractMaterialNodePropertyDrawer.cs +++ b/com.unity.shadergraph/Editor/Drawing/Inspector/PropertyDrawers/AbstractMaterialNodePropertyDrawer.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Reflection; using Data.Interfaces; using UnityEditor.Graphing; @@ -32,6 +32,23 @@ VisualElement CreateGUI(AbstractMaterialNode node, InspectableAttribute attribut VisualElement nodeSettings = new VisualElement(); var nameLabel = PropertyDrawerUtils.CreateLabel($"{node.name} Node", 0, FontStyle.Bold); nodeSettings.Add(nameLabel); + if (node.sgVersion < node.latestVersion) + { + var help = HelpBoxRow.TryGetDeprecatedHelpBoxRow($"{node.name} Node", () => + { + m_setNodesAsDirtyCallback?.Invoke(); + node.owner.owner.RegisterCompleteObjectUndo($"Update {node.name} Node"); + node.ChangeVersion(node.latestVersion); + inspectorUpdateDelegate?.Invoke(); + m_updateNodeViewsCallback?.Invoke(); + node.Dirty(ModificationScope.Graph); + }); + + if (help != null) + { + nodeSettings.Insert(0, help); + } + } EnumField precisionField = null; if(node.canSetPrecision) { diff --git a/com.unity.shadergraph/Editor/Drawing/Inspector/PropertyDrawers/ShaderInputPropertyDrawer.cs b/com.unity.shadergraph/Editor/Drawing/Inspector/PropertyDrawers/ShaderInputPropertyDrawer.cs index 03100995106..3aa05d21644 100644 --- a/com.unity.shadergraph/Editor/Drawing/Inspector/PropertyDrawers/ShaderInputPropertyDrawer.cs +++ b/com.unity.shadergraph/Editor/Drawing/Inspector/PropertyDrawers/ShaderInputPropertyDrawer.cs @@ -214,7 +214,17 @@ void BuildPropertyFields(PropertySheet propertySheet) if(property == null) return; - switch(property) + if (property.sgVersion < property.latestVersion) + { + var typeString = property.propertyType.ToString(); + var help = HelpBoxRow.TryGetDeprecatedHelpBoxRow($"{typeString} Property", () => property.ChangeVersion(property.latestVersion)); + if (help != null) + { + propertySheet.Insert(0, help); + } + } + + switch (property) { case Vector1ShaderProperty vector1Property: HandleVector1ShaderProperty(propertySheet, vector1Property); @@ -482,6 +492,7 @@ void HandleColorProperty(PropertySheet propertySheet, ColorShaderProperty colorP ColorMode.Default, out var colorModeField)); } + } void HandleTexture2DProperty(PropertySheet propertySheet, Texture2DShaderProperty texture2DProperty) diff --git a/com.unity.shadergraph/Editor/Drawing/SearchWindowProvider.cs b/com.unity.shadergraph/Editor/Drawing/SearchWindowProvider.cs index cd4994faf7e..f7bfcd1c61d 100644 --- a/com.unity.shadergraph/Editor/Drawing/SearchWindowProvider.cs +++ b/com.unity.shadergraph/Editor/Drawing/SearchWindowProvider.cs @@ -108,7 +108,19 @@ public void GenerateNodeEntries() if (type.GetCustomAttributes(typeof(TitleAttribute), false) is TitleAttribute[] attrs && attrs.Length > 0) { var node = (AbstractMaterialNode) Activator.CreateInstance(type); - AddEntries(node, attrs[0].title, nodeEntries); + if(ShaderGraphPreferences.allowDeprecatedBehaviors && node.latestVersion > 0) + { + for(int i = 0; i <= node.latestVersion; ++i) + { + var depNode = (AbstractMaterialNode)Activator.CreateInstance(type); + depNode.ChangeVersion(i); + AddEntries(depNode, attrs[0].title.Append($"V{i}").ToArray(), nodeEntries); + } + } + else + { + AddEntries(node, attrs[0].title, nodeEntries); + } } } @@ -348,6 +360,10 @@ public bool OnSearcherSelectEntry(SearcherItem entry, Vector2 screenMousePositio public AbstractMaterialNode CopyNodeForGraph(AbstractMaterialNode oldNode) { var newNode = (AbstractMaterialNode)Activator.CreateInstance(oldNode.GetType()); + if (ShaderGraphPreferences.allowDeprecatedBehaviors && oldNode.sgVersion != newNode.sgVersion) + { + newNode.ChangeVersion(oldNode.sgVersion); + } if (newNode is SubGraphNode subgraphNode) { subgraphNode.asset = ((SubGraphNode)oldNode).asset; diff --git a/com.unity.shadergraph/Editor/Drawing/Views/HelpBoxRow.cs b/com.unity.shadergraph/Editor/Drawing/Views/HelpBoxRow.cs index 321f897a082..1effa1aa9cf 100644 --- a/com.unity.shadergraph/Editor/Drawing/Views/HelpBoxRow.cs +++ b/com.unity.shadergraph/Editor/Drawing/Views/HelpBoxRow.cs @@ -1,3 +1,4 @@ +using System; using System.Linq; using UnityEngine; using UnityEngine.UIElements; @@ -45,5 +46,28 @@ public HelpBoxRow(MessageType type) hierarchy.Add(container); } + + public static VisualElement TryGetDeprecatedHelpBoxRow(string deprecatedTypeName, Action upgradeAction) + { + string depString = $"The {deprecatedTypeName} has new updates. This version maintains the old behavior. " + + $"If you update a {deprecatedTypeName}, you can use Undo to change it back. See the {deprecatedTypeName} " + + $"documentation for more information."; + Button upgradeButton = new Button(upgradeAction) { text = "Update" , tooltip = depString}; + if (!ShaderGraphPreferences.allowDeprecatedBehaviors) + { + HelpBoxRow help = new HelpBoxRow(MessageType.Warning); + var label = new Label("DEPRECATED: Hover for info") + { + tooltip = depString + }; + help.Add(label); + help.contentContainer.Add(upgradeButton); + return help; + } + else + { + return upgradeButton; + } + } } } diff --git a/com.unity.shadergraph/Editor/Drawing/Views/MaterialNodeView.cs b/com.unity.shadergraph/Editor/Drawing/Views/MaterialNodeView.cs index a2c016d79a3..7fcfde79ef0 100644 --- a/com.unity.shadergraph/Editor/Drawing/Views/MaterialNodeView.cs +++ b/com.unity.shadergraph/Editor/Drawing/Views/MaterialNodeView.cs @@ -162,6 +162,8 @@ public void Initialize(AbstractMaterialNode inNode, PreviewManager previewManage // Register OnMouseHover callbacks for node highlighting RegisterCallback(OnMouseHover); RegisterCallback(OnMouseHover); + + ShaderGraphPreferences.onAllowDeprecatedChanged += UpdateTitle; } public void AttachMessage(string errString, ShaderCompilerMessageSeverity severity) @@ -445,7 +447,23 @@ void UpdateTitle() if (node is SubGraphNode subGraphNode && subGraphNode.asset != null) title = subGraphNode.asset.name; else - title = node.name; + { + if (node.sgVersion < node.latestVersion) + { + if (ShaderGraphPreferences.allowDeprecatedBehaviors) + { + title = node.name + $" (Deprecated V{node.sgVersion})"; + } + else + { + title = node.name + $" (Deprecated)"; + } + } + else + { + title = node.name; + } + } } public void OnModified(ModificationScope scope) @@ -725,6 +743,7 @@ public void Dispose() m_PreviewRenderData.onPreviewChanged -= UpdatePreviewTexture; m_PreviewRenderData = null; } + ShaderGraphPreferences.onAllowDeprecatedChanged -= UpdateTitle; } } } diff --git a/com.unity.shadergraph/Editor/Serialization/JsonObject.cs b/com.unity.shadergraph/Editor/Serialization/JsonObject.cs index ff67e4dc607..6714363de4c 100644 --- a/com.unity.shadergraph/Editor/Serialization/JsonObject.cs +++ b/com.unity.shadergraph/Editor/Serialization/JsonObject.cs @@ -6,6 +6,45 @@ namespace UnityEditor.ShaderGraph.Serialization [Serializable] public class JsonObject : ISerializationCallbackReceiver { + + + public virtual int latestVersion { get; } = 0; + + [SerializeField] + protected int m_SGVersion = 0; + public virtual int sgVersion { get => m_SGVersion; protected set => m_SGVersion = value; } + + internal protected delegate void VersionChange(int newVersion); + internal protected VersionChange onBeforeVersionChange; + internal protected Action onAfterVersionChange; + + internal void ChangeVersion(int newVersion) + { + if (newVersion == sgVersion) + { + return; + } + if (newVersion < 0) + { + Debug.LogError("Cant downgrade past version 0"); + return; + } + if (newVersion > latestVersion) + { + Debug.LogError("Cant upgrade to a version >= the current latest version"); + return; + } + + onBeforeVersionChange?.Invoke(newVersion); + sgVersion = newVersion; + onAfterVersionChange?.Invoke(); + } + + public JsonObject() + { + sgVersion = latestVersion; + } + public static readonly string emptyObjectId = Guid.Empty.ToString("N"); [SerializeField] diff --git a/com.unity.shadergraph/Editor/Serialization/MultiJsonInternal.cs b/com.unity.shadergraph/Editor/Serialization/MultiJsonInternal.cs index 204407c4f31..6c2613ec4c1 100644 --- a/com.unity.shadergraph/Editor/Serialization/MultiJsonInternal.cs +++ b/com.unity.shadergraph/Editor/Serialization/MultiJsonInternal.cs @@ -361,7 +361,16 @@ public static JsonObject CreateInstance(string typeString) { return new UnknownJsonObject(typeString); } - return (JsonObject)Activator.CreateInstance(type, true); + var output = (JsonObject)Activator.CreateInstance(type, true); + //This CreateInstance function is supposed to esentially create a blank copy of whatever class we end up deserializing into. + //when we typically create new JsonObjects in all other cases, we want that object to be assumed to be the latest version. + //This doesnt work if any json object was serialized before we had the idea of version, as the blank copy would have the + //latest version on creation and since the serialized version wouldnt have a version member, it would not get overwritten + //and we would automatically upgrade all previously serialized json objects incorrectly and without user action. To avoid this, + //we default jsonObject version to 0, and if the serialized value has a different saved version it gets changed and if the serialized + //version does not have a different saved value it remains 0 (earliest version) + output.ChangeVersion(0); + return output; } private static FieldInfo s_ObjectIdField = @@ -378,6 +387,7 @@ public static void Deserialize(JsonObject root, List entries, bo { isDeserializing = true; currentRoot = root; + root.ChangeVersion(0); //Same issue as described in CreateInstance for (var index = 0; index < entries.Count; index++) { var entry = entries[index]; diff --git a/com.unity.shadergraph/Editor/ShaderGraphPreferences.cs b/com.unity.shadergraph/Editor/ShaderGraphPreferences.cs index 13a3f9c5719..1f8dbd081bf 100644 --- a/com.unity.shadergraph/Editor/ShaderGraphPreferences.cs +++ b/com.unity.shadergraph/Editor/ShaderGraphPreferences.cs @@ -1,4 +1,4 @@ -using UnityEngine; +using UnityEngine; namespace UnityEditor.ShaderGraph { @@ -8,6 +8,7 @@ static class Keys { internal const string variantLimit = "UnityEditor.ShaderGraph.VariantLimit"; internal const string autoAddRemoveBlocks = "UnityEditor.ShaderGraph.AutoAddRemoveBlocks"; + internal const string allowDeprecatedBehaviors = "UnityEditor.ShaderGraph.AllowDeprecatedBehaviors"; } static bool m_Loaded = false; @@ -15,6 +16,8 @@ static class Keys internal static PreferenceChangedDelegate onVariantLimitChanged; static int m_VariantLimit = 128; + + internal static PreferenceChangedDelegate onAllowDeprecatedChanged; internal static int variantLimit { get { return m_VariantLimit; } @@ -33,6 +36,20 @@ internal static bool autoAddRemoveBlocks set => TrySave(ref m_AutoAddRemoveBlocks, value, Keys.autoAddRemoveBlocks); } + static bool m_AllowDeprecatedBehaviors = false; + internal static bool allowDeprecatedBehaviors + { + get => m_AllowDeprecatedBehaviors; + set + { + TrySave(ref m_AllowDeprecatedBehaviors, value, Keys.allowDeprecatedBehaviors); + if(onAllowDeprecatedChanged != null) + { + onAllowDeprecatedChanged(); + } + } + } + static ShaderGraphPreferences() { Load(); @@ -71,6 +88,13 @@ static void OpenGUI() autoAddRemoveBlocks = autoAddRemoveBlocksValue; } + EditorGUI.BeginChangeCheck(); + var allowDeprecatedBehaviorsValue = EditorGUILayout.Toggle("Enable Deprecated Nodes", allowDeprecatedBehaviors); + if(EditorGUI.EndChangeCheck()) + { + allowDeprecatedBehaviors = allowDeprecatedBehaviorsValue; + } + EditorGUIUtility.labelWidth = previousLabelWidth; } @@ -78,6 +102,7 @@ static void Load() { m_VariantLimit = EditorPrefs.GetInt(Keys.variantLimit, 128); m_AutoAddRemoveBlocks = EditorPrefs.GetBool(Keys.autoAddRemoveBlocks, true); + m_AllowDeprecatedBehaviors = EditorPrefs.GetBool(Keys.allowDeprecatedBehaviors, false); m_Loaded = true; } From e8f6bb25bfe1dacf390151dcd899177e2782ea1a Mon Sep 17 00:00:00 2001 From: elizabeth-legros <59933602+elizabeth-legros@users.noreply.github.com> Date: Wed, 7 Oct 2020 16:50:43 -0500 Subject: [PATCH 2/4] Update Color-Node.md --- com.unity.shadergraph/Documentation~/Color-Node.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/com.unity.shadergraph/Documentation~/Color-Node.md b/com.unity.shadergraph/Documentation~/Color-Node.md index 5405913ea97..7aaf484cfb9 100644 --- a/com.unity.shadergraph/Documentation~/Color-Node.md +++ b/com.unity.shadergraph/Documentation~/Color-Node.md @@ -4,7 +4,7 @@ Defines a constant **Vector 4** value in the shader using a **Color** field. Can be converted to a **Color** [Property Type](Property-Types.md) via the [Node's](Node.md) context menu. The value of the **Mode** parameter will also respected when generating the [Property](Property-Types.md). -NOTE: In versions prior to 10.0, Shader Graph assumed that HDR colors from the Color Node were in gamma space. Version 10.0 corrected this behavior, and Shader Graph now interprets HDR colors in linear space. HDR Color nodes that you created with older versions maintain the old behavior, but you can use the [Graph Inspector](Internal-Inspector.md) to upgrade them. To mimic the old behavior on a new HDR Color node, you can use a [Colorspace Conversion Node](Colorspace-Conversion-Node.md) to convert the HDR color from **RGB** to **Linear**. +NOTE: In versions prior to 9.0, Shader Graph assumed that HDR colors from the Color Node were in gamma space. Version 9.0 corrected this behavior, and Shader Graph now interprets HDR colors in linear space. HDR Color nodes that you created with older versions maintain the old behavior, but you can use the [Graph Inspector](Internal-Inspector.md) to upgrade them. To mimic the old behavior on a new HDR Color node, you can use a [Colorspace Conversion Node](Colorspace-Conversion-Node.md) to convert the HDR color from **RGB** to **Linear**. ## Ports From 9af1999b7d7710a8dbe0283ac455e28cfd17d4d3 Mon Sep 17 00:00:00 2001 From: elizabeth-legros <59933602+elizabeth-legros@users.noreply.github.com> Date: Wed, 7 Oct 2020 16:53:36 -0500 Subject: [PATCH 3/4] Update Property-Types.md --- com.unity.shadergraph/Documentation~/Property-Types.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/com.unity.shadergraph/Documentation~/Property-Types.md b/com.unity.shadergraph/Documentation~/Property-Types.md index f4a378655ee..cb0dba81da9 100644 --- a/com.unity.shadergraph/Documentation~/Property-Types.md +++ b/com.unity.shadergraph/Documentation~/Property-Types.md @@ -115,7 +115,7 @@ Displays an HDR color field in the material inspector. |:-------------|:------|:------------| | Default | Vector 4 | The default value of the [Property](https://docs.unity3d.com/Manual/SL-Properties.html). | -NOTE: In versions prior to 10.0, Shader Graph didn't correct HDR colors for the project colorspace. Version 10.0 corrected this behavior. HDR color properties that you created with older versions maintain the old behavior, but you can use the [Graph Inspector](Internal-Inspector.md) to upgrade them. To mimic the old behavior in a gamma space project, you can use the [Colorspace Conversion Node](Colorspace-Conversion-Node.md) to convert a new HDR **Color** property from **RGB** to **Linear** space. +NOTE: In versions prior to 9.0, Shader Graph didn't correct HDR colors for the project colorspace. Version 9.0 corrected this behavior. HDR color properties that you created with older versions maintain the old behavior, but you can use the [Graph Inspector](Internal-Inspector.md) to upgrade them. To mimic the old behavior in a gamma space project, you can use the [Colorspace Conversion Node](Colorspace-Conversion-Node.md) to convert a new HDR **Color** property from **RGB** to **Linear** space. ## Texture 2D @@ -187,4 +187,4 @@ Defines a **Boolean** value. Displays a **ToggleUI** field in the material inspe | Field | Type | Description | |:-------------|:------|:------------| -| Default | Boolean | The default value of the [Property](https://docs.unity3d.com/Manual/SL-Properties.html). | \ No newline at end of file +| Default | Boolean | The default value of the [Property](https://docs.unity3d.com/Manual/SL-Properties.html). | From 82b4e3ad609e0494c3f0358b600017450f75b37b Mon Sep 17 00:00:00 2001 From: elizabeth-legros <59933602+elizabeth-legros@users.noreply.github.com> Date: Fri, 16 Oct 2020 11:42:10 -0500 Subject: [PATCH 4/4] Update CHANGELOG.md --- com.unity.shadergraph/CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/com.unity.shadergraph/CHANGELOG.md b/com.unity.shadergraph/CHANGELOG.md index 7b99c289b4c..0bde6fde82d 100644 --- a/com.unity.shadergraph/CHANGELOG.md +++ b/com.unity.shadergraph/CHANGELOG.md @@ -30,6 +30,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. - Added `Compute Deformation` Node to read deformed vertex data from Dots Deformations. - Added new graph nodes that allow sampling Virtual Textures - Shader Graph now uses a new file format that is much friendlier towards version control systems and humans. Existing Shader Graphs and will use the new format next time they are saved. +- Added ability for Shader Graph to change node behavior without impacting existing graphs via the “Allow Deprecated Nodes” ### Changed - Changed the `Branch` node so that it uses a ternary operator (`Out = bool ? a : B`) instead of a linear interpolate function. @@ -139,6 +140,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. - Fixed a bug where the SampleVirtualTexture node would delete slots when changing its LOD mode [1268483] - Fixed an issue where building a context menu on a dragging block node would leave it floating and undo/redo would result in a soft-lock - Fixed an issue with the SampleVirtualTexture node in ShaderGraph, where toggling Automatic Streaming would cause the node to incorrectly display four output slots [1271618] +- Fixed some bugs with Color Nodes and properties that would cause incorrect collorspace conversions ## [7.1.1] - 2019-09-05 ### Added