From fa0dd43dd2db7d71ac2298134a077c5265705be3 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Thu, 30 Jan 2025 16:49:24 +0000 Subject: [PATCH 01/41] [Port] [2022.3] [UUM-84459] Add a condition to the Receiver Motion Rejection function to ensure that the pixel has actually moved. --- .../Raytracing/Shaders/Denoising/TemporalFilter.compute | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/Denoising/TemporalFilter.compute b/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/Denoising/TemporalFilter.compute index c33a16e5461..b80bb53606c 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/Denoising/TemporalFilter.compute +++ b/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/Denoising/TemporalFilter.compute @@ -138,7 +138,7 @@ void ValidateHistory(uint3 dispatchThreadId : SV_DispatchThreadID, uint2 groupTh // Was the object of this pixel moving? uint stencilValue = GetStencilValue(LOAD_TEXTURE2D_X(_StencilTexture, centerCoord)); - if ((stencilValue & _ObjectMotionStencilBit) != 0) + if ((stencilValue & _ObjectMotionStencilBit) != 0 && any(abs(velocity) > 0)) historyRejectionResult = historyRejectionResult | HISTORYREJECTIONFLAGS_MOTION; // If none of the previous conditions have failed, the the history is valid From e965355f6665b00678c3732e89971d604fca1000 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Fri, 31 Jan 2025 11:06:51 +0000 Subject: [PATCH 02/41] [Port] [2022.3] Fix issue where padding was different between tabs in Lighting window --- .../Sky/HDLightingWindowEnvironmentSection.cs | 47 +++++-------------- 1 file changed, 13 insertions(+), 34 deletions(-) diff --git a/Packages/com.unity.render-pipelines.high-definition/Editor/Sky/HDLightingWindowEnvironmentSection.cs b/Packages/com.unity.render-pipelines.high-definition/Editor/Sky/HDLightingWindowEnvironmentSection.cs index 7bdc8a38f69..44b4057edfd 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Editor/Sky/HDLightingWindowEnvironmentSection.cs +++ b/Packages/com.unity.render-pipelines.high-definition/Editor/Sky/HDLightingWindowEnvironmentSection.cs @@ -8,6 +8,7 @@ using System; using System.Collections.Generic; using System.Linq; +using System.Reflection; namespace UnityEditor.Rendering.HighDefinition { @@ -16,16 +17,7 @@ class HDLightingWindowEnvironmentSectionEditor : LightingWindowEnvironmentSectio { class Styles { - public static GUIStyle headerStyle; - static Styles() - { - headerStyle = new GUIStyle(EditorStyles.foldoutHeader); - headerStyle.fontStyle = FontStyle.Bold; - headerStyle.fontSize = 12; - headerStyle.margin = new RectOffset(17, 0, 0, 0); - headerStyle.padding = new RectOffset(16, 1, 0, 0); - headerStyle.fixedHeight = 21; - } + public static readonly GUIStyle inspectorTitle = "IN Title"; } class SerializedStaticLightingSky @@ -78,6 +70,8 @@ bool toggleValue } } + static MethodInfo k_FoldoutTitlebar; + public override void OnEnable() { m_SerializedActiveSceneLightingSky = new SerializedStaticLightingSky(GetStaticLightingSkyForScene(EditorSceneManager.GetActiveScene())); @@ -149,35 +143,20 @@ public override void OnInspectorGUI() void DrawGUI() { - Rect mainSeparator = EditorGUILayout.GetControlRect(GUILayout.Height(1)); - mainSeparator.xMin -= 3; - mainSeparator.xMax += 4; - EditorGUI.DrawRect(mainSeparator, EditorGUIUtility.isProSkin - ? new Color32(26, 26, 26, 255) - : new Color32(127, 127, 127, 255)); - - Rect line = EditorGUILayout.GetControlRect(); - line.xMin -= 3; - line.xMax += 4; - line.y -= 2; - line.yMax += 4; + if (k_FoldoutTitlebar == null) + { + var flags = BindingFlags.NonPublic | BindingFlags.Static; + Type[] args = new Type[] { typeof(Rect), typeof(GUIContent), typeof(bool), typeof(bool) }; + k_FoldoutTitlebar = typeof(EditorGUI).GetMethod("FoldoutTitlebar", flags, null, args, null); + } - toggleValue = EditorGUI.Foldout(line, toggleValue, EditorGUIUtility.TrTextContent("Environment (HDRP)", "Sky lighting environment for active Scene"), Styles.headerStyle); + var labelRect = GUILayoutUtility.GetRect(GUIContent.none, Styles.inspectorTitle, GUILayout.ExpandWidth(true)); + var label = EditorGUIUtility.TrTextContent("Environment (HDRP)", "Sky lighting environment for active Scene"); - EditorGUI.DrawRect(line, EditorGUIUtility.isProSkin - ? new Color(1f, 1f, 1f, 0.03f) - : new Color(1f, 1f, 1f, 0.2f)); + toggleValue = (bool)k_FoldoutTitlebar.Invoke(null, new object[] { labelRect, label, toggleValue, true }); if (m_ToggleValue) { - Rect separator = EditorGUILayout.GetControlRect(GUILayout.Height(1)); - separator.xMin -= 3; - separator.xMax += 4; - separator.y -= 1; - EditorGUI.DrawRect(separator, EditorGUIUtility.isProSkin - ? new Color32(48, 48, 48, 255) - : new Color32(186, 186, 186, 255)); - ++EditorGUI.indentLevel; //cannot use SerializeProperty due to logic in the property From a84cfcef284c0b353c63a0d2e482f70b221806ad Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Mon, 3 Feb 2025 11:52:07 +0000 Subject: [PATCH 03/41] [Port] [2022.3] UUM-92512: Light Cookie Atlas is leaking --- .../Runtime/ForwardLights.cs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/ForwardLights.cs b/Packages/com.unity.render-pipelines.universal/Runtime/ForwardLights.cs index 21840f5443d..bbfccb0673b 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/ForwardLights.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/ForwardLights.cs @@ -448,6 +448,8 @@ internal void Cleanup() m_TileMasksBuffer = null; m_ReflectionProbeManager.Dispose(); } + m_LightCookieManager?.Dispose(); + m_LightCookieManager = null; } void InitializeLightConstants(NativeArray lights, int lightIndex, out Vector4 lightPos, out Vector4 lightColor, out Vector4 lightAttenuation, out Vector4 lightSpotDir, out Vector4 lightOcclusionProbeChannel, out uint lightLayerMask, out bool isSubtractive) From d18c85f986d205967906181c05a35b0ac2f3d1c5 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Fri, 7 Feb 2025 12:28:25 +0000 Subject: [PATCH 04/41] =?UTF-8?q?[Port]=20[2022.3]=20Fix=20NullReferenceEx?= =?UTF-8?q?ception=20thrown=20when=20updating=20a=20legacy=20node=20for=20?= =?UTF-8?q?sec=E2=80=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Drawing/Blackboard/SGBlackboardField.cs | 2 +- .../Editor/Drawing/Inspector/InspectorView.cs | 27 +++++++++++++++++++ .../Editor/Drawing/MaterialGraphEditWindow.cs | 5 ++++ .../Editor/Drawing/Views/GraphEditorView.cs | 5 ++++ .../Editor/Drawing/Views/PropertyNodeView.cs | 8 ++++++ 5 files changed, 46 insertions(+), 1 deletion(-) diff --git a/Packages/com.unity.shadergraph/Editor/Drawing/Blackboard/SGBlackboardField.cs b/Packages/com.unity.shadergraph/Editor/Drawing/Blackboard/SGBlackboardField.cs index ec7e87d8cb9..f45a63d7c83 100644 --- a/Packages/com.unity.shadergraph/Editor/Drawing/Blackboard/SGBlackboardField.cs +++ b/Packages/com.unity.shadergraph/Editor/Drawing/Blackboard/SGBlackboardField.cs @@ -99,7 +99,7 @@ internal SGBlackboardField(ShaderInputViewModel viewModel) property.onAfterVersionChange += () => { this.typeText = property.GetPropertyTypeString(); - this.m_InspectorUpdateDelegate(); + this.m_InspectorUpdateDelegate?.Invoke(); }; } diff --git a/Packages/com.unity.shadergraph/Editor/Drawing/Inspector/InspectorView.cs b/Packages/com.unity.shadergraph/Editor/Drawing/Inspector/InspectorView.cs index 37be3b316fb..a4c30239d36 100644 --- a/Packages/com.unity.shadergraph/Editor/Drawing/Inspector/InspectorView.cs +++ b/Packages/com.unity.shadergraph/Editor/Drawing/Inspector/InspectorView.cs @@ -192,6 +192,33 @@ public void Update() m_NodeSettingsContainer.MarkDirtyRepaint(); } + public void RefreshInspectables() + { + // Set callbacks to newly created Inspectables + VisualElement temp = new VisualElement(); + var inspectables = new List(); + FindChildrenRecursive(ParentView, inspectables); + foreach (IInspectable inspectable in inspectables) + { + DrawInspectable(temp, inspectable, null); + } + + // And redraw the inspector + doesInspectorNeedUpdate = true; + Update(); + } + + private static void FindChildrenRecursive(VisualElement element, List results) + { + foreach (var child in element.Children()) + { + if (child is T tChild) + results.Add(tChild); + + FindChildrenRecursive(child, results); + } + } + void DrawInspectable( VisualElement outputVisualElement, IInspectable inspectable, diff --git a/Packages/com.unity.shadergraph/Editor/Drawing/MaterialGraphEditWindow.cs b/Packages/com.unity.shadergraph/Editor/Drawing/MaterialGraphEditWindow.cs index b1274e22ac5..2aa8aad3588 100644 --- a/Packages/com.unity.shadergraph/Editor/Drawing/MaterialGraphEditWindow.cs +++ b/Packages/com.unity.shadergraph/Editor/Drawing/MaterialGraphEditWindow.cs @@ -373,6 +373,11 @@ void Update() graphEditorView.HandleGraphChanges(wasUndoRedoPerformed); graphObject.graph.ClearChanges(); + if (wasUndoRedoPerformed) + { + graphEditorView.inspectorView.RefreshInspectables(); + } + if (updateTitle) UpdateTitle(); } diff --git a/Packages/com.unity.shadergraph/Editor/Drawing/Views/GraphEditorView.cs b/Packages/com.unity.shadergraph/Editor/Drawing/Views/GraphEditorView.cs index 0f4a7589b47..eaad09f4cf8 100644 --- a/Packages/com.unity.shadergraph/Editor/Drawing/Views/GraphEditorView.cs +++ b/Packages/com.unity.shadergraph/Editor/Drawing/Views/GraphEditorView.cs @@ -97,6 +97,11 @@ public MaterialGraphView graphView get { return m_GraphView; } } + public InspectorView inspectorView + { + get { return m_InspectorView; } + } + internal PreviewManager previewManager { get { return m_PreviewManager; } diff --git a/Packages/com.unity.shadergraph/Editor/Drawing/Views/PropertyNodeView.cs b/Packages/com.unity.shadergraph/Editor/Drawing/Views/PropertyNodeView.cs index f160f9d003b..ed1d3c2df2d 100644 --- a/Packages/com.unity.shadergraph/Editor/Drawing/Views/PropertyNodeView.cs +++ b/Packages/com.unity.shadergraph/Editor/Drawing/Views/PropertyNodeView.cs @@ -56,6 +56,14 @@ public PropertyNodeView(PropertyNode node, EdgeConnectorListener edgeConnectorLi // add the right click context menu IManipulator contextMenuManipulator = new ContextualMenuManipulator(AddContextMenuOptions); this.AddManipulator(contextMenuManipulator); + + if (property != null) + { + property.onAfterVersionChange += () => + { + m_TriggerInspectorUpdate?.Invoke(); + }; + } } // Updating the text label of the output slot From 4d11665bf06199ad538265124823cc4feac77c3b Mon Sep 17 00:00:00 2001 From: Rose Hirigoyen Date: Fri, 7 Feb 2025 21:37:03 +0000 Subject: [PATCH 05/41] UUM-84784 Warnings in DownsampleDepth.shader --- .../Runtime/ShaderLibrary/DownsampleDepth.shader | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/DownsampleDepth.shader b/Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/DownsampleDepth.shader index 157bfa0717d..9cf26939d35 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/DownsampleDepth.shader +++ b/Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/DownsampleDepth.shader @@ -74,10 +74,10 @@ Shader "Hidden/HDRP/DownsampleDepth" #else uint2 fullResUpperCorner = uint2((((float2)input.positionCS.xy - 0.5f) * 2.0) + 0.5f); float4 depths; - depths.x = LOAD_TEXTURE2D_X_LOD(_SourceDownsampleDepth, fullResUpperCorner, 0); - depths.y = LOAD_TEXTURE2D_X_LOD(_SourceDownsampleDepth, fullResUpperCorner + uint2(0, 1), 0); - depths.z = LOAD_TEXTURE2D_X_LOD(_SourceDownsampleDepth, fullResUpperCorner + uint2(1, 0), 0); - depths.w = LOAD_TEXTURE2D_X_LOD(_SourceDownsampleDepth, fullResUpperCorner + uint2(1, 1), 0); + depths.x = LOAD_TEXTURE2D_X_LOD(_SourceDownsampleDepth, fullResUpperCorner, 0).r; + depths.y = LOAD_TEXTURE2D_X_LOD(_SourceDownsampleDepth, fullResUpperCorner + uint2(0, 1), 0).r; + depths.z = LOAD_TEXTURE2D_X_LOD(_SourceDownsampleDepth, fullResUpperCorner + uint2(1, 0), 0).r; + depths.w = LOAD_TEXTURE2D_X_LOD(_SourceDownsampleDepth, fullResUpperCorner + uint2(1, 1), 0).r; float minDepth = MinDepth(depths); #if MIN_DOWNSAMPLE From b6976533544c97bf3feb6dc2b8eb4cdfbc01220e Mon Sep 17 00:00:00 2001 From: Ludovic Theobald Date: Mon, 10 Feb 2025 10:53:21 +0000 Subject: [PATCH 06/41] [2022.3][VFX][Fix] Avoid trying to access context's data when it doesn't have one. --- .../Editor/Inspector/VFXAssetEditor.cs | 3 ++- .../Contexts/Implementations/VFXAbstractParticleOutput.cs | 7 ++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/Packages/com.unity.visualeffectgraph/Editor/Inspector/VFXAssetEditor.cs b/Packages/com.unity.visualeffectgraph/Editor/Inspector/VFXAssetEditor.cs index 17ddbd45200..f8f7d308fdd 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/Inspector/VFXAssetEditor.cs +++ b/Packages/com.unity.visualeffectgraph/Editor/Inspector/VFXAssetEditor.cs @@ -183,7 +183,8 @@ private void DrawOutputContextItem(Rect rect, int index, bool isActive, bool isF { var context = m_OutputContexts[index] as VFXContext; - var systemName = context.GetGraph().systemNames.GetUniqueSystemName(context.GetData()); + var contextData = context.GetData(); + var systemName = contextData ? context.GetGraph().systemNames.GetUniqueSystemName(contextData) : string.Empty; var contextLetter = context.letter; var contextName = string.IsNullOrEmpty(context.label) ? context.libraryName : context.label; var fullName = string.Format("{0}{1}/{2}", systemName, contextLetter != '\0' ? "/" + contextLetter : string.Empty, contextName.Replace('\n', ' ')); diff --git a/Packages/com.unity.visualeffectgraph/Editor/Models/Contexts/Implementations/VFXAbstractParticleOutput.cs b/Packages/com.unity.visualeffectgraph/Editor/Models/Contexts/Implementations/VFXAbstractParticleOutput.cs index ca591c76250..9d985a5c1a0 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/Models/Contexts/Implementations/VFXAbstractParticleOutput.cs +++ b/Packages/com.unity.visualeffectgraph/Editor/Models/Contexts/Implementations/VFXAbstractParticleOutput.cs @@ -154,7 +154,12 @@ int IVFXSubRenderer.vfxSystemSortPriority } public bool NeedsDeadListCount() { return HasIndirectDraw() && !HasStrips(true) && (taskType == VFXTaskType.ParticleQuadOutput || taskType == VFXTaskType.ParticleHexahedronOutput); } // Should take the capacity into account to avoid false positive - public bool HasStrips(bool data = false) { return (data ? GetData().type : ownedType) == VFXDataType.ParticleStrip; } + public bool HasStrips(bool data = false) + { + if (GetData() == null) + return false; + return (data ? GetData().type : ownedType) == VFXDataType.ParticleStrip; + } public bool HasStripsData() { return GetData().type == VFXDataType.ParticleStrip; } protected VFXAbstractParticleOutput(bool strip = false) : base(strip ? VFXDataType.ParticleStrip : VFXDataType.Particle) { } From 5c4d652077f2bf393acea22fae800861a41940f6 Mon Sep 17 00:00:00 2001 From: Benjamin Slapcoff Date: Mon, 10 Feb 2025 10:53:22 +0000 Subject: [PATCH 07/41] [UUM-96388] Fix for 2022.3.X: Terrain Detail objects are not rendered in the build when the Terrain is generated at runtime --- .../Data/UniversalRenderPipelineAsset.cs | 74 ++++++++++++------- .../UniversalRenderPipelineEditorResources.cs | 18 ----- .../Runtime/UniversalRendererData.cs | 20 ++++- 3 files changed, 68 insertions(+), 44 deletions(-) diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Data/UniversalRenderPipelineAsset.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Data/UniversalRenderPipelineAsset.cs index 7ed5103ddd4..2d5aee7df2d 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Data/UniversalRenderPipelineAsset.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Data/UniversalRenderPipelineAsset.cs @@ -1472,7 +1472,7 @@ public bool useFastSRGBLinearConversion { get { return m_UseFastSRGBLinearConversion; } } - + /// /// Returns true if Data Driven Lens Flare are supported by this asset, false otherwise. /// @@ -1664,53 +1664,77 @@ public override Shader autodeskInteractiveMaskedShader } /// - /// Returns the terrain detail lit shader that this asset uses. + /// Returns the default SpeedTree7 shader that this asset uses. /// - /// Returns the terrain detail lit shader that this asset uses. - public override Shader terrainDetailLitShader + /// Returns the default SpeedTree7 shader that this asset uses. + public override Shader defaultSpeedTree7Shader { - get { return editorResources?.shaders.terrainDetailLitPS; } + get { return editorResources?.shaders.defaultSpeedTree7PS; } } /// - /// Returns the terrain detail grass shader that this asset uses. + /// Returns the default SpeedTree8 shader that this asset uses. /// - /// Returns the terrain detail grass shader that this asset uses. - public override Shader terrainDetailGrassShader + /// Returns the default SpeedTree8 shader that this asset uses. + public override Shader defaultSpeedTree8Shader { - get { return editorResources?.shaders.terrainDetailGrassPS; } + get { return editorResources?.shaders.defaultSpeedTree8PS; } } + /// + public override string renderPipelineShaderTag => UniversalRenderPipeline.k_ShaderTagName; +#endif + /// - /// Returns the terrain detail grass billboard shader that this asset uses. + /// Returns the terrain detail lit shader that this asset uses. /// - /// Returns the terrain detail grass billboard shader that this asset uses. - public override Shader terrainDetailGrassBillboardShader + public override Shader terrainDetailLitShader { - get { return editorResources?.shaders.terrainDetailGrassBillboardPS; } + get + { + foreach (var data in m_RendererDataList) + { + if (data is UniversalRendererData universalData) + return universalData.shaders.terrainDetailLitPS; + } + + return null; + } } /// - /// Returns the default SpeedTree7 shader that this asset uses. + /// Returns the terrain detail grass shader that this asset uses. /// - /// Returns the default SpeedTree7 shader that this asset uses. - public override Shader defaultSpeedTree7Shader + public override Shader terrainDetailGrassShader { - get { return editorResources?.shaders.defaultSpeedTree7PS; } + get + { + foreach (var data in m_RendererDataList) + { + if (data is UniversalRendererData universalData) + return universalData.shaders.terrainDetailGrassPS; + } + + return null; + } } /// - /// Returns the default SpeedTree8 shader that this asset uses. + /// Returns the terrain detail grass billboard shader that this asset uses. /// - /// Returns the default SpeedTree8 shader that this asset uses. - public override Shader defaultSpeedTree8Shader + public override Shader terrainDetailGrassBillboardShader { - get { return editorResources?.shaders.defaultSpeedTree8PS; } - } + get + { + foreach (var data in m_RendererDataList) + { + if (data is UniversalRendererData universalData) + return universalData.shaders.terrainDetailGrassBillboardPS; + } - /// - public override string renderPipelineShaderTag => UniversalRenderPipeline.k_ShaderTagName; -#endif + return null; + } + } /// Names used for display of rendering layer masks. public override string[] renderingLayerMaskNames => UniversalRenderPipelineGlobalSettings.instance.renderingLayerMaskNames; diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Data/UniversalRenderPipelineEditorResources.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Data/UniversalRenderPipelineEditorResources.cs index b076cce9237..2a2df3ab714 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Data/UniversalRenderPipelineEditorResources.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Data/UniversalRenderPipelineEditorResources.cs @@ -33,24 +33,6 @@ public sealed class ShaderResources [Reload("Shaders/AutodeskInteractive/AutodeskInteractiveMasked.shadergraph")] public Shader autodeskInteractiveMaskedPS; - /// - /// Terrain Detail Lit shader. - /// - [Reload("Shaders/Terrain/TerrainDetailLit.shader")] - public Shader terrainDetailLitPS; - - /// - /// Terrain Detail Grass shader. - /// - [Reload("Shaders/Terrain/WavingGrass.shader")] - public Shader terrainDetailGrassPS; - - /// - /// Waving Grass Billboard shader. - /// - [Reload("Shaders/Terrain/WavingGrassBillboard.shader")] - public Shader terrainDetailGrassBillboardPS; - /// /// SpeedTree7 shader. /// diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/UniversalRendererData.cs b/Packages/com.unity.render-pipelines.universal/Runtime/UniversalRendererData.cs index 2ca0a3abb84..e67d81acc14 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/UniversalRendererData.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/UniversalRendererData.cs @@ -127,12 +127,30 @@ public sealed class ShaderResources /// [Reload("Shaders/ObjectMotionVectors.shader")] public Shader objectMotionVector; - + /// /// Data Driven Lens Flare shader. /// [Reload("Shaders/PostProcessing/LensFlareDataDriven.shader")] public Shader dataDrivenLensFlare; + + /// + /// Terrain Detail Lit shader. + /// + [Reload("Shaders/Terrain/TerrainDetailLit.shader")] + public Shader terrainDetailLitPS; + + /// + /// Terrain Detail Grass shader. + /// + [Reload("Shaders/Terrain/WavingGrass.shader")] + public Shader terrainDetailGrassPS; + + /// + /// Waving Grass Billboard shader. + /// + [Reload("Shaders/Terrain/WavingGrassBillboard.shader")] + public Shader terrainDetailGrassBillboardPS; } /// From 4c2fb9d96f0be54d3edec7fde324cf9994646c46 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Antoine=20Leli=C3=A8vre?= Date: Wed, 12 Feb 2025 15:11:04 +0000 Subject: [PATCH 08/41] Backport of 45293 and 55256 --- .../Runtime/Material/Lit/Lit.hlsl | 4 +- .../HDRenderPipeline.RenderGraph.cs | 6 + .../RenderPipeline/HDRenderPipeline.cs | 2 + .../RenderPipeline/HDStringConstants.cs | 1 - .../ShaderLibrary/ShaderVariables.hlsl | 2 +- .../ShaderLibrary/ShaderVariablesGlobal.cs | 2 +- .../ShaderVariablesGlobal.cs.hlsl | 1 + .../HDRP_Test_Fwd_DRS_Distortion.asset | 565 ++++++++++++++++++ .../HDRP_Test_Fwd_DRS_Distortion.asset.meta | 8 + 9 files changed, 586 insertions(+), 5 deletions(-) create mode 100644 Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Fwd_DRS_Distortion.asset create mode 100644 Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Fwd_DRS_Distortion.asset.meta diff --git a/Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/Lit.hlsl b/Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/Lit.hlsl index b366fe5e4df..345b3701736 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/Lit.hlsl +++ b/Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/Lit.hlsl @@ -1948,9 +1948,9 @@ IndirectLighting EvaluateBSDF_ScreenspaceRefraction(LightLoopContext lightLoopCo float mipLevel = preLightData.transparentSSMipLevel; // Clamp to avoid potential leaks around the edges when the dynamic resolution is set to low and the smoothness too. - float2 diffLimit = _ColorPyramidUvScaleAndLimitPrevFrame.xy - _ColorPyramidUvScaleAndLimitPrevFrame.zw; + float2 diffLimit = _ColorPyramidUvScaleAndLimitCurrentFrame.xy - _ColorPyramidUvScaleAndLimitCurrentFrame.zw; float2 diffLimitMipAdjusted = diffLimit * pow(2.0,2.0 + ceil(abs(mipLevel))); - float2 limit = _ColorPyramidUvScaleAndLimitPrevFrame.xy - diffLimitMipAdjusted; + float2 limit = _ColorPyramidUvScaleAndLimitCurrentFrame.xy - diffLimitMipAdjusted; samplingUV.xy = min(samplingUV.xy, limit); diff --git a/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDRenderPipeline.RenderGraph.cs b/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDRenderPipeline.RenderGraph.cs index f61a0cb89b0..10e52cc567b 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDRenderPipeline.RenderGraph.cs +++ b/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDRenderPipeline.RenderGraph.cs @@ -262,6 +262,12 @@ void RecordRenderGraph(RenderRequest renderRequest, }); GenerateColorPyramid(m_RenderGraph, hdCamera, colorBuffer, distortionColorPyramid, FullScreenDebugMode.PreRefractionColorPyramid, distortionRendererList); currentColorPyramid = distortionColorPyramid; + + + // The color pyramid for distortion is not an history, so it need to be sampled appropriate RT handle scale. Thus we need to update it + var newScale = new Vector4(RTHandles.rtHandleProperties.rtHandleScale.x, RTHandles.rtHandleProperties.rtHandleScale.y, 0, 0); + m_ShaderVariablesGlobalCB._ColorPyramidUvScaleAndLimitCurrentFrame = newScale; + PushGlobalCameraParams(m_RenderGraph, hdCamera); } using (new RenderGraphProfilingScope(m_RenderGraph, ProfilingSampler.Get(HDProfileId.Distortion))) diff --git a/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDRenderPipeline.cs b/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDRenderPipeline.cs index 6655623b629..eb9b24f555c 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDRenderPipeline.cs +++ b/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDRenderPipeline.cs @@ -1134,6 +1134,8 @@ void UpdateShaderVariablesGlobalCB(HDCamera hdCamera, CommandBuffer cmd) m_ShaderVariablesGlobalCB._EnableRecursiveRayTracing = 0; m_ShaderVariablesGlobalCB._SpecularOcclusionBlend = 1.0f; } + + m_ShaderVariablesGlobalCB._ColorPyramidUvScaleAndLimitCurrentFrame = HDUtils.ComputeViewportScaleAndLimit(hdCamera.historyRTHandleProperties.currentViewportSize, hdCamera.historyRTHandleProperties.currentRenderTargetSize); m_ShaderVariablesGlobalCB._ColorPyramidUvScaleAndLimitPrevFrame = HDUtils.ComputeViewportScaleAndLimit(hdCamera.historyRTHandleProperties.previousViewportSize, hdCamera.historyRTHandleProperties.previousRenderTargetSize); ConstantBuffer.PushGlobal(cmd, m_ShaderVariablesGlobalCB, HDShaderIDs._ShaderVariablesGlobal); diff --git a/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDStringConstants.cs b/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDStringConstants.cs index bd20de56c75..6b330bf5183 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDStringConstants.cs +++ b/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDStringConstants.cs @@ -437,7 +437,6 @@ static class HDShaderIDs public static readonly int _LightLayersTexture = Shader.PropertyToID("_LightLayersTexture"); public static readonly int _DistortionTexture = Shader.PropertyToID("_DistortionTexture"); public static readonly int _ColorPyramidTexture = Shader.PropertyToID("_ColorPyramidTexture"); - public static readonly int _ColorPyramidUvScaleAndLimitPrevFrame = Shader.PropertyToID("_ColorPyramidUvScaleAndLimitPrevFrame"); public static readonly int _RoughDistortion = Shader.PropertyToID("_RoughDistortion"); public static readonly int _DebugColorPickerTexture = Shader.PropertyToID("_DebugColorPickerTexture"); diff --git a/Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariables.hlsl b/Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariables.hlsl index 90d89962b0f..b653a13824e 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariables.hlsl +++ b/Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariables.hlsl @@ -264,7 +264,7 @@ float3 LoadCameraColor(uint2 pixelCoords, uint lod) float3 SampleCameraColor(float2 uv, float lod) { - return SAMPLE_TEXTURE2D_X_LOD(_ColorPyramidTexture, s_trilinear_clamp_sampler, uv * _RTHandleScaleHistory.xy, lod).rgb; + return SAMPLE_TEXTURE2D_X_LOD(_ColorPyramidTexture, s_trilinear_clamp_sampler, uv * _ColorPyramidUvScaleAndLimitCurrentFrame.xy, lod).rgb; } float3 LoadCameraColor(uint2 pixelCoords) diff --git a/Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariablesGlobal.cs b/Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariablesGlobal.cs index dfe633a5a4f..8fc43a421c1 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariablesGlobal.cs +++ b/Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariablesGlobal.cs @@ -265,7 +265,7 @@ unsafe struct ShaderVariablesGlobal // See ScreenCoordOverride.hlsl for details. public Vector4 _ScreenSizeOverride; public Vector4 _ScreenCoordScaleBias; - + public Vector4 _ColorPyramidUvScaleAndLimitCurrentFrame; public Vector4 _ColorPyramidUvScaleAndLimitPrevFrame; } } diff --git a/Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariablesGlobal.cs.hlsl b/Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariablesGlobal.cs.hlsl index 1cb63e17226..501cb83407b 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariablesGlobal.cs.hlsl +++ b/Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariablesGlobal.cs.hlsl @@ -154,6 +154,7 @@ GLOBAL_CBUFFER_START(ShaderVariablesGlobal, b0) float _DeExposureMultiplier; float4 _ScreenSizeOverride; float4 _ScreenCoordScaleBias; + float4 _ColorPyramidUvScaleAndLimitCurrentFrame; float4 _ColorPyramidUvScaleAndLimitPrevFrame; CBUFFER_END diff --git a/Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Fwd_DRS_Distortion.asset b/Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Fwd_DRS_Distortion.asset new file mode 100644 index 00000000000..b9f8753ba82 --- /dev/null +++ b/Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Fwd_DRS_Distortion.asset @@ -0,0 +1,565 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cf1dab834d4ec34195b920ea7bbf9ec, type: 3} + m_Name: HDRP_Test_Fwd_DRS_Distortion + m_EditorClassIdentifier: + m_RenderPipelineSettings: + supportShadowMask: 1 + supportSSR: 1 + supportSSRTransparent: 1 + supportSSAO: 1 + supportSSGI: 0 + supportSubsurfaceScattering: 1 + sssSampleBudget: + m_Values: 140000002800000050000000 + m_SchemaId: + m_Id: With3Levels + sssDownsampleSteps: + m_Values: 000000000000000000000000 + m_SchemaId: + m_Id: With3Levels + supportVolumetrics: 1 + supportVolumetricClouds: 0 + supportLightLayers: 1 + renderingLayerMaskBuffer: 0 + supportWater: 0 + waterSimulationResolution: 128 + supportWaterExclusion: 0 + supportWaterDecals: 1 + waterDecalAtlasSize: 1024 + maximumWaterDecalCount: 48 + waterScriptInteractionsMode: 0 + waterFullCPUSimulation: 0 + supportComputeThickness: 0 + computeThicknessResolution: 1 + computeThicknessLayerMask: + serializedVersion: 2 + m_Bits: 0 + supportDistortion: 1 + supportTransparentBackface: 1 + supportTransparentDepthPrepass: 1 + supportTransparentDepthPostpass: 1 + colorBufferFormat: 74 + supportCustomPass: 1 + customBufferFormat: 74 + supportedLitShaderMode: 1 + planarReflectionResolution: + m_Values: 000100000004000000080000 + m_SchemaId: + m_Id: With3Levels + cubeReflectionResolution: + m_Values: 800000000001000000020000 + m_SchemaId: + m_Id: With3Levels + supportDecals: 1 + supportDecalLayers: 0 + supportSurfaceGradient: 0 + decalNormalBufferHP: 0 + supportHighQualityLineRendering: 0 + highQualityLineRenderingMemoryBudget: 128 + msaaSampleCount: 1 + supportMotionVectors: 1 + supportScreenSpaceLensFlare: 1 + supportDataDrivenLensFlare: 1 + supportDitheringCrossFade: 0 + supportRuntimeAOVAPI: 0 + supportTerrainHole: 1 + lightProbeSystem: 0 + oldLightProbeSystem: 0 + probeVolumeMemoryBudget: 1024 + supportProbeVolumeGPUStreaming: 0 + supportProbeVolumeDiskStreaming: 0 + probeVolumeSHBands: 1 + supportProbeVolumeScenarios: 0 + supportProbeVolumeScenarioBlending: 1 + probeVolumeBlendingMemoryBudget: 128 + supportRayTracing: 0 + supportVFXRayTracing: 0 + supportedRayTracingMode: 3 + lightLoopSettings: + cookieAtlasSize: 512 + cookieFormat: 74 + cookieAtlasLastValidMip: 0 + cookieTexArraySize: 16 + planarReflectionAtlasSize: 2048 + reflectionProbeCacheSize: 128 + reflectionCubemapSize: 128 + maxEnvLightsOnScreen: 64 + reflectionCacheCompressed: 0 + reflectionProbeFormat: 74 + reflectionProbeTexCacheSize: 4096 + reflectionProbeTexLastValidCubeMip: 3 + reflectionProbeTexLastValidPlanarMip: 0 + reflectionProbeDecreaseResToFit: 1 + skyReflectionSize: 256 + skyLightingOverrideLayerMask: + serializedVersion: 2 + m_Bits: 0 + supportFabricConvolution: 0 + maxDirectionalLightsOnScreen: 16 + maxPunctualLightsOnScreen: 512 + maxAreaLightsOnScreen: 64 + maxCubeReflectionOnScreen: 48 + maxPlanarReflectionOnScreen: 16 + maxDecalsOnScreen: 512 + maxLightsPerClusterCell: 8 + maxLocalVolumetricFogSize: 32 + maxLocalVolumetricFogOnScreen: 64 + hdShadowInitParams: + maxShadowRequests: 128 + directionalShadowsDepthBits: 32 + punctualShadowFilteringQuality: 0 + directionalShadowFilteringQuality: 0 + areaShadowFilteringQuality: 0 + punctualLightShadowAtlas: + shadowAtlasResolution: 4096 + shadowAtlasDepthBits: 32 + useDynamicViewportRescale: 0 + areaLightShadowAtlas: + shadowAtlasResolution: 4096 + shadowAtlasDepthBits: 32 + useDynamicViewportRescale: 0 + cachedPunctualLightShadowAtlas: 2048 + cachedAreaLightShadowAtlas: 1024 + allowDirectionalMixedCachedShadows: 0 + shadowResolutionDirectional: + m_Values: 00010000000200000004000000000000 + m_SchemaId: + m_Id: With4Levels + shadowResolutionPunctual: + m_Values: 00010000000200000004000000000000 + m_SchemaId: + m_Id: With4Levels + shadowResolutionArea: + m_Values: 00010000000200000004000000000000 + m_SchemaId: + m_Id: With4Levels + maxDirectionalShadowMapResolution: 2048 + maxPunctualShadowMapResolution: 2048 + maxAreaShadowMapResolution: 2048 + supportScreenSpaceShadows: 0 + maxScreenSpaceShadowSlots: 4 + screenSpaceShadowBufferFormat: 48 + decalSettings: + drawDistance: 1000 + atlasWidth: 2048 + atlasHeight: 1024 + transparentTextureResolution: + m_Values: 000100000002000000040000 + m_SchemaId: + m_Id: With3Levels + perChannelMask: 1 + postProcessSettings: + m_LutSize: 32 + lutFormat: 48 + bufferFormat: 74 + dynamicResolutionSettings: + enabled: 1 + useMipBias: 0 + advancedUpscalersByPriority: + DLSSPerfQualitySetting: 0 + DLSSInjectionPoint: 0 + TAAUInjectionPoint: 0 + STPInjectionPoint: 0 + defaultInjectionPoint: 2 + DLSSUseOptimalSettings: 1 + DLSSSharpness: 0.5 + FSR2EnableSharpness: 0 + FSR2Sharpness: 0 + FSR2UseOptimalSettings: 0 + FSR2QualitySetting: 0 + FSR2InjectionPoint: 0 + fsrOverrideSharpness: 0 + fsrSharpness: 0.92 + maxPercentage: 100 + minPercentage: 100 + dynResType: 0 + upsampleFilter: 1 + forceResolution: 1 + forcedPercentage: 50 + lowResTransparencyMinimumThreshold: 0 + rayTracingHalfResThreshold: 50 + lowResSSGIMinimumThreshold: 0 + lowResVolumetricCloudsMinimumThreshold: 50 + enableDLSS: 0 + lowresTransparentSettings: + enabled: 1 + checkerboardDepthBuffer: 1 + upsampleType: 1 + xrSettings: + singlePass: 1 + occlusionMesh: 1 + cameraJitter: 0 + allowMotionBlur: 0 + postProcessQualitySettings: + NearBlurSampleCount: 030000000500000008000000 + NearBlurMaxRadius: + - 2 + - 4 + - 7 + FarBlurSampleCount: 04000000070000000e000000 + FarBlurMaxRadius: + - 5 + - 8 + - 13 + DoFResolution: 040000000200000001000000 + DoFHighQualityFiltering: 000101 + DoFPhysicallyBased: 000000 + AdaptiveSamplingWeight: + - 0.5 + - 0.75 + - 2 + LimitManualRangeNearBlur: 000000 + MotionBlurSampleCount: 04000000080000000c000000 + BloomRes: 040000000200000002000000 + BloomHighQualityFiltering: 000101 + BloomHighQualityPrefiltering: 000001 + ChromaticAberrationMaxSamples: 03000000060000000c000000 + lightSettings: + useContactShadow: + m_Values: 000000 + m_SchemaId: + m_Id: + maximumLODLevel: + m_Values: 000000000000000000000000 + m_SchemaId: + m_Id: With3Levels + lodBias: + m_Values: + - 1 + - 1 + - 1 + m_SchemaId: + m_Id: With3Levels + lightingQualitySettings: + AOStepCount: 040000000600000010000000 + AOFullRes: 000001 + AOMaximumRadiusPixels: 200000002800000050000000 + AOBilateralUpsample: 000101 + AODirectionCount: 010000000200000004000000 + ContactShadowSampleCount: 060000000a00000010000000 + SSRMaxRaySteps: 100000002000000040000000 + SSGIRaySteps: 200000004000000080000000 + SSGIDenoise: 010101 + SSGIHalfResDenoise: 010000 + SSGIDenoiserRadius: + - 0.75 + - 0.5 + - 0.5 + SSGISecondDenoise: 010101 + RTAORayLength: + - 0.5 + - 3 + - 20 + RTAOSampleCount: 010000000200000008000000 + RTAODenoise: 010101 + RTAODenoiserRadius: + - 0.25 + - 0.5 + - 0.65 + RTGIRayLength: + - 50 + - 50 + - 50 + RTGIFullResolution: 000001 + RTGIRaySteps: 200000003000000040000000 + RTGIDenoise: 010101 + RTGIHalfResDenoise: 010000 + RTGIDenoiserRadius: + - 0.75 + - 0.5 + - 0.25 + RTGISecondDenoise: 010101 + RTRMinSmoothness: + - 0.6 + - 0.4 + - 0 + RTRSmoothnessFadeStart: + - 0.7 + - 0.5 + - 0 + RTRRayLength: + - 50 + - 50 + - 50 + RTRFullResolution: 000001 + RTRRayMaxIterations: 200000003000000040000000 + RTRDenoise: 010101 + RTRDenoiserRadiusDimmer: + - 0.75 + - 0.75 + - 1 + RTRDenoiserAntiFlicker: + - 1 + - 1 + - 1 + Fog_ControlMode: 000000000000000000000000 + Fog_Budget: + - 0.166 + - 0.33 + - 0.666 + Fog_DepthRatio: + - 0.666 + - 0.666 + - 0.5 + gpuResidentDrawerSettings: + mode: 0 + smallMeshScreenPercentage: 0 + enableOcclusionCullingInCameras: 0 + useDepthPrepassForOccluders: 1 + m_ObsoleteLightLayerName0: Light Layer default + m_ObsoleteLightLayerName1: Light Layer 1 + m_ObsoleteLightLayerName2: Light Layer 2 + m_ObsoleteLightLayerName3: Light Layer 3 + m_ObsoleteLightLayerName4: Light Layer 4 + m_ObsoleteLightLayerName5: Light Layer 5 + m_ObsoleteLightLayerName6: Light Layer 6 + m_ObsoleteLightLayerName7: Light Layer 7 + m_ObsoleteDecalLayerName0: + m_ObsoleteDecalLayerName1: + m_ObsoleteDecalLayerName2: + m_ObsoleteDecalLayerName3: + m_ObsoleteDecalLayerName4: + m_ObsoleteDecalLayerName5: + m_ObsoleteDecalLayerName6: + m_ObsoleteDecalLayerName7: + m_ObsoleteSupportRuntimeDebugDisplay: 0 + allowShaderVariantStripping: 1 + enableSRPBatcher: 1 + availableMaterialQualityLevels: -1 + m_DefaultMaterialQualityLevel: 4 + diffusionProfileSettings: {fileID: 11400000, guid: 802c802428a2d9640a87e821dfcdd9e8, + type: 2} + m_VolumeProfile: {fileID: 0} + virtualTexturingSettings: + streamingCpuCacheSizeInMegaBytes: 80 + streamingMipPreloadTexturesPerFrame: 0 + streamingPreloadMipCount: 1 + streamingGpuCacheSettings: + - format: 0 + sizeInMegaBytes: 32 + m_UseRenderGraph: 1 + m_CompositorCustomVolumeComponentsList: + m_InjectionPoint: 1 + m_CustomPostProcessTypesAsString: [] + m_Version: 25 + m_ObsoleteFrameSettings: + overrides: 0 + enableShadow: 0 + enableContactShadows: 0 + enableShadowMask: 0 + enableSSR: 0 + enableSSAO: 0 + enableSubsurfaceScattering: 0 + enableTransmission: 0 + enableAtmosphericScattering: 0 + enableVolumetrics: 0 + enableReprojectionForVolumetrics: 0 + enableLightLayers: 0 + enableExposureControl: 1 + diffuseGlobalDimmer: 0 + specularGlobalDimmer: 0 + shaderLitMode: 0 + enableDepthPrepassWithDeferredRendering: 0 + enableTransparentPrepass: 0 + enableMotionVectors: 0 + enableObjectMotionVectors: 0 + enableDecals: 0 + enableRoughRefraction: 0 + enableTransparentPostpass: 0 + enableDistortion: 0 + enablePostprocess: 0 + enableOpaqueObjects: 0 + enableTransparentObjects: 0 + enableRealtimePlanarReflection: 0 + enableMSAA: 0 + enableAsyncCompute: 0 + runLightListAsync: 0 + runSSRAsync: 0 + runSSAOAsync: 0 + runContactShadowsAsync: 0 + runVolumeVoxelizationAsync: 0 + lightLoopSettings: + overrides: 0 + enableDeferredTileAndCluster: 0 + enableComputeLightEvaluation: 0 + enableComputeLightVariants: 0 + enableComputeMaterialVariants: 0 + enableFptlForForwardOpaque: 0 + enableBigTilePrepass: 0 + isFptlEnabled: 0 + m_ObsoleteBakedOrCustomReflectionFrameSettings: + overrides: 0 + enableShadow: 0 + enableContactShadows: 0 + enableShadowMask: 0 + enableSSR: 0 + enableSSAO: 0 + enableSubsurfaceScattering: 0 + enableTransmission: 0 + enableAtmosphericScattering: 0 + enableVolumetrics: 0 + enableReprojectionForVolumetrics: 0 + enableLightLayers: 0 + enableExposureControl: 1 + diffuseGlobalDimmer: 0 + specularGlobalDimmer: 0 + shaderLitMode: 0 + enableDepthPrepassWithDeferredRendering: 0 + enableTransparentPrepass: 0 + enableMotionVectors: 0 + enableObjectMotionVectors: 0 + enableDecals: 0 + enableRoughRefraction: 0 + enableTransparentPostpass: 0 + enableDistortion: 0 + enablePostprocess: 0 + enableOpaqueObjects: 0 + enableTransparentObjects: 0 + enableRealtimePlanarReflection: 0 + enableMSAA: 0 + enableAsyncCompute: 0 + runLightListAsync: 0 + runSSRAsync: 0 + runSSAOAsync: 0 + runContactShadowsAsync: 0 + runVolumeVoxelizationAsync: 0 + lightLoopSettings: + overrides: 0 + enableDeferredTileAndCluster: 0 + enableComputeLightEvaluation: 0 + enableComputeLightVariants: 0 + enableComputeMaterialVariants: 0 + enableFptlForForwardOpaque: 0 + enableBigTilePrepass: 0 + isFptlEnabled: 0 + m_ObsoleteRealtimeReflectionFrameSettings: + overrides: 0 + enableShadow: 0 + enableContactShadows: 0 + enableShadowMask: 0 + enableSSR: 0 + enableSSAO: 0 + enableSubsurfaceScattering: 0 + enableTransmission: 0 + enableAtmosphericScattering: 0 + enableVolumetrics: 0 + enableReprojectionForVolumetrics: 0 + enableLightLayers: 0 + enableExposureControl: 1 + diffuseGlobalDimmer: 0 + specularGlobalDimmer: 0 + shaderLitMode: 0 + enableDepthPrepassWithDeferredRendering: 0 + enableTransparentPrepass: 0 + enableMotionVectors: 0 + enableObjectMotionVectors: 0 + enableDecals: 0 + enableRoughRefraction: 0 + enableTransparentPostpass: 0 + enableDistortion: 0 + enablePostprocess: 0 + enableOpaqueObjects: 0 + enableTransparentObjects: 0 + enableRealtimePlanarReflection: 0 + enableMSAA: 0 + enableAsyncCompute: 0 + runLightListAsync: 0 + runSSRAsync: 0 + runSSAOAsync: 0 + runContactShadowsAsync: 0 + runVolumeVoxelizationAsync: 0 + lightLoopSettings: + overrides: 0 + enableDeferredTileAndCluster: 0 + enableComputeLightEvaluation: 0 + enableComputeLightVariants: 0 + enableComputeMaterialVariants: 0 + enableFptlForForwardOpaque: 0 + enableBigTilePrepass: 0 + isFptlEnabled: 0 + m_ObsoleteDefaultVolumeProfile: {fileID: 0} + m_ObsoleteDefaultLookDevProfile: {fileID: 0} + m_ObsoleteFrameSettingsMovedToDefaultSettings: + bitDatas: + data1: 139549392502621 + data2: 4539628426536878104 + lodBias: 1 + lodBiasMode: 0 + lodBiasQualityLevel: 0 + maximumLODLevel: 0 + maximumLODLevelMode: 0 + maximumLODLevelQualityLevel: 0 + sssQualityMode: 0 + sssQualityLevel: 0 + sssCustomSampleBudget: 20 + sssCustomDownsampleSteps: 0 + msaaMode: 0 + materialQuality: 0 + m_ObsoleteBakedOrCustomReflectionFrameSettingsMovedToDefaultSettings: + bitDatas: + data1: 139713129348893 + data2: 4539628424389459992 + lodBias: 1 + lodBiasMode: 0 + lodBiasQualityLevel: 0 + maximumLODLevel: 0 + maximumLODLevelMode: 0 + maximumLODLevelQualityLevel: 0 + sssQualityMode: 0 + sssQualityLevel: 0 + sssCustomSampleBudget: 20 + sssCustomDownsampleSteps: 0 + msaaMode: 0 + materialQuality: 0 + m_ObsoleteRealtimeReflectionFrameSettingsMovedToDefaultSettings: + bitDatas: + data1: 140065316601629 + data2: 4539628424389459992 + lodBias: 1 + lodBiasMode: 0 + lodBiasQualityLevel: 0 + maximumLODLevel: 0 + maximumLODLevelMode: 0 + maximumLODLevelQualityLevel: 0 + sssQualityMode: 0 + sssQualityLevel: 0 + sssCustomSampleBudget: 20 + sssCustomDownsampleSteps: 0 + msaaMode: 0 + materialQuality: 0 + m_ObsoleteBeforeTransparentCustomPostProcesses: + - GreenPP, Assembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + m_ObsoleteBeforePostProcessCustomPostProcesses: + - RedPP, Assembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + m_ObsoleteAfterPostProcessCustomPostProcesses: + - BluePP, Assembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + m_ObsoleteBeforeTAACustomPostProcesses: [] + m_ObsoleteShaderVariantLogLevel: 1 + m_ObsoleteLensAttenuation: 0 + m_ObsoleteDiffusionProfileSettingsList: + - {fileID: 11400000, guid: 802c802428a2d9640a87e821dfcdd9e8, type: 2} + - {fileID: 11400000, guid: 09c63d8f96a14884e8efd2f01004f491, type: 2} + - {fileID: 11400000, guid: 8471a5bfcdb8fff4f9406cd8079b8554, type: 2} + - {fileID: 11400000, guid: 968a3176000311d42af174756ece7f4d, type: 2} + - {fileID: 11400000, guid: 768484f758b6f7b4daf53a7d9949f5af, type: 2} + - {fileID: 11400000, guid: fcb8f92518ca5d14bbd7e6751b28cd24, type: 2} + - {fileID: 11400000, guid: 64ca25f51b132ea4093511f7456ea220, type: 2} + - {fileID: 11400000, guid: fd29a6d903d5eae4d94833c2048bfd9d, type: 2} + - {fileID: 11400000, guid: 76f34276e6d50dc4bb0762b87af8931e, type: 2} + - {fileID: 11400000, guid: cd1cd5a7c0527844dbca2b7d562b9049, type: 2} + - {fileID: 11400000, guid: 385fff18b5c61754188b49a485ecb84a, type: 2} + - {fileID: 11400000, guid: d3dd41407c183554ca54bded902d4b7b, type: 2} + - {fileID: 11400000, guid: 86c1c808ebce1cc4992b9b0fd197a0b3, type: 2} + - {fileID: 11400000, guid: 3506ae472b257f042af66a183fbaac6a, type: 2} + - {fileID: 11400000, guid: 6be2047feaba36945b8fd12f29e3a7b5, type: 2} + m_PrefilterUseLegacyLightmaps: 0 diff --git a/Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Fwd_DRS_Distortion.asset.meta b/Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Fwd_DRS_Distortion.asset.meta new file mode 100644 index 00000000000..fb6726f280e --- /dev/null +++ b/Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Fwd_DRS_Distortion.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: daa881680c85008409a3008620b45791 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: From af755f776859ebf669423a1af226cbf9af6bb9d0 Mon Sep 17 00:00:00 2001 From: Venkatesh Subramania Pillai Date: Wed, 12 Feb 2025 15:11:19 +0000 Subject: [PATCH 09/41] [Port] [2022.3] [2d] Fix (Case UUM-71736) Texture is lost when reconnecting SpriteColor Node in Fragment --- .../Editor/2D/ShaderGraph/Targets/SpriteSubTargetUtility.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/SpriteSubTargetUtility.cs b/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/SpriteSubTargetUtility.cs index e47b25a42da..0bc3f321c90 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/SpriteSubTargetUtility.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/SpriteSubTargetUtility.cs @@ -11,7 +11,7 @@ public static void AddDefaultFields(ref TargetFieldContext context, UniversalTar { // Only support SpriteColor legacy block if BaseColor/Alpha are not active var descs = context.blocks.Select(x => x.descriptor); - bool useLegacyBlocks = !descs.Contains(BlockFields.SurfaceDescription.BaseColor) && !descs.Contains(BlockFields.SurfaceDescription.Alpha); + bool useLegacyBlocks = descs.Contains(BlockFields.SurfaceDescriptionLegacy.SpriteColor); context.AddField(CoreFields.UseLegacySpriteBlocks, useLegacyBlocks); // Surface Type @@ -39,7 +39,7 @@ public static void AddDefaultFields(ref TargetFieldContext context, UniversalTar public static void GetDefaultActiveBlocks(ref TargetActiveBlockContext context, UniversalTarget target) { // Only support SpriteColor legacy block if BaseColor/Alpha are not active - bool useLegacyBlocks = !context.currentBlocks.Contains(BlockFields.SurfaceDescription.BaseColor) && !context.currentBlocks.Contains(BlockFields.SurfaceDescription.Alpha); + bool useLegacyBlocks = context.currentBlocks.Contains(BlockFields.SurfaceDescriptionLegacy.SpriteColor); context.AddBlock(BlockFields.SurfaceDescriptionLegacy.SpriteColor, useLegacyBlocks); context.AddBlock(BlockFields.SurfaceDescription.Alpha); From 72f1c74051240c8f29c1d2484929ceeaf1052557 Mon Sep 17 00:00:00 2001 From: Mark Green Date: Wed, 12 Feb 2025 22:14:54 +0000 Subject: [PATCH 10/41] [Port] [2022.3] Graphics docs feedback fixes February 2025 --- .../Documentation~/post-processing-bloom.md | 8 ++++---- .../post-processing-custom-effect-low-code.md | 4 ++++ 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/Packages/com.unity.render-pipelines.universal/Documentation~/post-processing-bloom.md b/Packages/com.unity.render-pipelines.universal/Documentation~/post-processing-bloom.md index af3344c8141..4a4ab3283ef 100644 --- a/Packages/com.unity.render-pipelines.universal/Documentation~/post-processing-bloom.md +++ b/Packages/com.unity.render-pipelines.universal/Documentation~/post-processing-bloom.md @@ -31,10 +31,10 @@ To add **Bloom** to a Volume: | **Intensity** | Set the strength of the Bloom filter, in a range from 0 to 1. The default is 0, which means that the Bloom effect is disabled. | | **Scatter** | Set the radius of the bloom effect in a range from 0 to 1. Higher values give a larger radius. The default value is 0.7. | | **Tint** | Use the color picker to select a color for the Bloom effect to tint to. | -| **Clamp** | Set the maximum intensity that Unity uses to calculate Bloom. If pixels in your Scene are more intense than this, URP renders them at their current intensity, but uses this intensity value for the purposes of Bloom calculations. The default value is 65472. | -| **High Quality Filtering** | Enable this to use high quality sampling. This reduces flickering and improves the overall smoothness, but is more resource-intensive and can affect performance. | -| **Downscale** | Set the initial resolution scale for the effect. The lower this value is, the fewer system resources the initial blur effect consumes. -| **Max Iterations** | The size of the rendered image determines the number of iterations. Use this setting to define the maximum number of iterations. Decreasing this value reduces processing load and increases performance, especially on mobile devices with high DPI screens. The default value is 6. | +| **Clamp** | Set the maximum intensity that Unity uses to calculate Bloom. If pixels in your scene are more intense than this, URP renders them at their current intensity, but uses this intensity value for the purposes of Bloom calculations. The default value is 65472. | +| **High Quality Filtering** | Enable this to use high quality sampling and bilinear filtering instead of bicubic filtering. This reduces flickering and improves the overall smoothness but is more resource-intensive and can affect performance.

If you experience performance issues with Bloom, disable this property to greatly improve performance, especially on lower-end hardware and platforms. | +| **Downscale** | Set the initial resolution scale for the effect. The lower this value is, the fewer system resources the initial blur effect consumes.

For best performance, set this value to **Quarter** to significantly reducde the initial resource cost of Bloom.

This property is available only if you open the **More** (**⋮**) menu and select **Show Additional Properties**.| +| **Max Iterations** | The size of the rendered image determines the number of iterations. Use this setting to define the maximum number of iterations. Decreasing this value reduces processing load and increases performance, especially on mobile devices with high DPI screens. The default value is 6.

This property is available only if you open the **More** (**⋮**) menu and select **Show Additional Properties**. | ### Lens Dirt diff --git a/Packages/com.unity.render-pipelines.universal/Documentation~/post-processing/post-processing-custom-effect-low-code.md b/Packages/com.unity.render-pipelines.universal/Documentation~/post-processing/post-processing-custom-effect-low-code.md index 7ac65468bd6..49bec023863 100644 --- a/Packages/com.unity.render-pipelines.universal/Documentation~/post-processing/post-processing-custom-effect-low-code.md +++ b/Packages/com.unity.render-pipelines.universal/Documentation~/post-processing/post-processing-custom-effect-low-code.md @@ -59,3 +59,7 @@ Once you've created a compatible Shader Graph and Material, you can use the Mate You should now notice the effect in both Scene view and Game view. ![Example scene with a grayscale custom post-processing effect.](../Images/post-proc/custom-effect/grayscale-custom-effect.png) + +## Additional resources + +- [Custom rendering and post-processing in URP](../customizing-urp) From f82e3bdfc343fa9a5c4f28781f04854ac8ffe6f7 Mon Sep 17 00:00:00 2001 From: Kenny Tan Date: Tue, 18 Feb 2025 15:37:20 +0000 Subject: [PATCH 11/41] [Backport 2022.3][UUM-87636] Fix sprite instancing with 2d shaders --- .../ShaderGraph/Includes/SpriteLitPass.hlsl | 13 +- .../Includes/SpriteNormalPass.hlsl | 11 + .../ShaderGraph/Includes/SpriteUnlitPass.hlsl | 13 +- .../UniversalSpriteCustomLitSubTarget.cs | 12 +- .../Targets/UniversalSpriteLitSubTarget.cs | 12 +- .../Targets/UniversalSpriteUnlitSubTarget.cs | 11 +- .../Editor/ShaderGUI/ShadergraphSpriteGUI.cs | 30 + .../ShaderGUI/ShadergraphSpriteGUI.cs.meta | 11 + .../ShaderGraph/Targets/UniversalTarget.cs | 1 + .../Shaders/2D/Include/Core2D.hlsl | 21 + .../Shaders/2D/Include/Core2D.hlsl.meta | 7 + .../Shaders/2D/Sprite-Lit-Default.shader | 29 + .../Shaders/2D/Sprite-Unlit-Default.shader | 20 +- .../Assets/Scenes/083_GPU_Instancing.meta | 8 + .../Assets/Scenes/083_GPU_Instancing.unity | 2315 +++++++++++++++++ .../Scenes/083_GPU_Instancing.unity.meta | 7 + .../083_GPU_Instancing/DisableSRPBatching.cs | 11 + .../DisableSRPBatching.cs.meta | 2 + .../SpriteCustomLit_Instance_ShaderGraph.mat | 60 + ...iteCustomLit_Instance_ShaderGraph.mat.meta | 8 + ...CustomLit_Instance_ShaderGraph.shadergraph | 874 +++++++ ...mLit_Instance_ShaderGraph.shadergraph.meta | 10 + .../083_GPU_Instancing/SpriteLit_Instance.mat | 50 + .../SpriteLit_Instance.mat.meta | 8 + .../SpriteLit_Instance_ShaderGraph.mat | 60 + .../SpriteLit_Instance_ShaderGraph.mat.meta | 8 + ...SpriteLit_Instance_ShaderGraph.shadergraph | 874 +++++++ ...eLit_Instance_ShaderGraph.shadergraph.meta | 10 + .../SpriteUnit_Instance_ShaderGraph.mat | 60 + .../SpriteUnit_Instance_ShaderGraph.mat.meta | 8 + ...priteUnit_Instance_ShaderGraph.shadergraph | 745 ++++++ ...Unit_Instance_ShaderGraph.shadergraph.meta | 10 + .../SpriteUnlit_Instance.mat | 51 + .../SpriteUnlit_Instance.mat.meta | 8 + .../ProjectSettings/EditorBuildSettings.asset | 3 + 35 files changed, 5363 insertions(+), 18 deletions(-) create mode 100644 Packages/com.unity.render-pipelines.universal/Editor/ShaderGUI/ShadergraphSpriteGUI.cs create mode 100644 Packages/com.unity.render-pipelines.universal/Editor/ShaderGUI/ShadergraphSpriteGUI.cs.meta create mode 100644 Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/Core2D.hlsl create mode 100644 Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/Core2D.hlsl.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing.unity create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing.unity.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/DisableSRPBatching.cs create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/DisableSRPBatching.cs.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteCustomLit_Instance_ShaderGraph.mat create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteCustomLit_Instance_ShaderGraph.mat.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteCustomLit_Instance_ShaderGraph.shadergraph create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteCustomLit_Instance_ShaderGraph.shadergraph.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteLit_Instance.mat create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteLit_Instance.mat.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteLit_Instance_ShaderGraph.mat create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteLit_Instance_ShaderGraph.mat.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteLit_Instance_ShaderGraph.shadergraph create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteLit_Instance_ShaderGraph.shadergraph.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteUnit_Instance_ShaderGraph.mat create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteUnit_Instance_ShaderGraph.mat.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteUnit_Instance_ShaderGraph.shadergraph create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteUnit_Instance_ShaderGraph.shadergraph.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteUnlit_Instance.mat create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteUnlit_Instance.mat.meta diff --git a/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Includes/SpriteLitPass.hlsl b/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Includes/SpriteLitPass.hlsl index 8640747f014..06971e0ee32 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Includes/SpriteLitPass.hlsl +++ b/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Includes/SpriteLitPass.hlsl @@ -1,4 +1,4 @@ - +#include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/Core2D.hlsl" #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/SurfaceData2D.hlsl" #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Debug/Debugging2D.hlsl" @@ -25,8 +25,19 @@ half4 _RendererColor; PackedVaryings vert(Attributes input) { Varyings output = (Varyings)0; + UNITY_SETUP_INSTANCE_ID(input); + +#ifdef UNITY_INSTANCING_ENABLED + input.positionOS = UnityFlipSprite(input.positionOS, unity_SpriteFlip); +#endif + output = BuildVaryings(input); output.color *= _RendererColor; + +#ifdef UNITY_INSTANCING_ENABLED + output.color *= unity_SpriteColor; +#endif + PackedVaryings packedOutput = PackVaryings(output); return packedOutput; } diff --git a/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Includes/SpriteNormalPass.hlsl b/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Includes/SpriteNormalPass.hlsl index b0e141c0593..a8c7b930e21 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Includes/SpriteNormalPass.hlsl +++ b/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Includes/SpriteNormalPass.hlsl @@ -1,8 +1,19 @@ PackedVaryings vert(Attributes input) { Varyings output = (Varyings)0; + UNITY_SETUP_INSTANCE_ID(input); + +#ifdef UNITY_INSTANCING_ENABLED + input.positionOS = UnityFlipSprite(input.positionOS, unity_SpriteFlip); +#endif + output = BuildVaryings(input); output.normalWS = -GetViewForwardDir(); + +#ifdef UNITY_INSTANCING_ENABLED + output.color *= unity_SpriteColor; +#endif + PackedVaryings packedOutput = PackVaryings(output); return packedOutput; } diff --git a/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Includes/SpriteUnlitPass.hlsl b/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Includes/SpriteUnlitPass.hlsl index c21b796a91b..e9241faddaa 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Includes/SpriteUnlitPass.hlsl +++ b/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Includes/SpriteUnlitPass.hlsl @@ -1,4 +1,4 @@ - +#include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/Core2D.hlsl" #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/SurfaceData2D.hlsl" #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Debug/Debugging2D.hlsl" @@ -7,8 +7,19 @@ half4 _RendererColor; PackedVaryings vert(Attributes input) { Varyings output = (Varyings)0; + UNITY_SETUP_INSTANCE_ID(input); + +#ifdef UNITY_INSTANCING_ENABLED + input.positionOS = UnityFlipSprite(input.positionOS, unity_SpriteFlip); +#endif + output = BuildVaryings(input); output.color *= _RendererColor; + +#ifdef UNITY_INSTANCING_ENABLED + output.color *= unity_SpriteColor; +#endif + PackedVaryings packedOutput = PackVaryings(output); return packedOutput; } diff --git a/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/UniversalSpriteCustomLitSubTarget.cs b/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/UniversalSpriteCustomLitSubTarget.cs index b1be0d8cbcc..f2e8ff752bc 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/UniversalSpriteCustomLitSubTarget.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/UniversalSpriteCustomLitSubTarget.cs @@ -23,13 +23,14 @@ public override void Setup(ref TargetSetupContext context) { base.Setup(ref context); context.AddAssetDependency(kSourceCodeGuid, AssetCollection.Flags.SourceDependency); -#if HAS_VFX_GRAPH + var universalRPType = typeof(UnityEngine.Rendering.Universal.UniversalRenderPipelineAsset); - if (TargetsVFX() && !context.HasCustomEditorForRenderPipeline(universalRPType)) - { - context.AddCustomEditorForRenderPipeline(typeof(VFXGenericShaderGraphMaterialGUI).FullName, universalRPType); - } + var gui = typeof(ShaderGraphSpriteGUI); +#if HAS_VFX_GRAPH + if (TargetsVFX()) + gui = typeof(VFXGenericShaderGraphMaterialGUI); #endif + context.AddCustomEditorForRenderPipeline(gui.FullName, universalRPType); context.AddSubShader(PostProcessSubShader(SubShaders.SpriteLit(target))); } @@ -230,6 +231,7 @@ static class SpriteLitRequiredFields public static FieldCollection Normal = new FieldCollection() { + StructFields.Varyings.color, StructFields.Varyings.normalWS, StructFields.Varyings.tangentWS, }; diff --git a/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/UniversalSpriteLitSubTarget.cs b/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/UniversalSpriteLitSubTarget.cs index 0c122b6d52d..c453ad3325f 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/UniversalSpriteLitSubTarget.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/UniversalSpriteLitSubTarget.cs @@ -25,13 +25,14 @@ public override void Setup(ref TargetSetupContext context) { base.Setup(ref context); context.AddAssetDependency(kSourceCodeGuid, AssetCollection.Flags.SourceDependency); -#if HAS_VFX_GRAPH + var universalRPType = typeof(UnityEngine.Rendering.Universal.UniversalRenderPipelineAsset); - if (TargetsVFX() && !context.HasCustomEditorForRenderPipeline(universalRPType)) - { - context.AddCustomEditorForRenderPipeline(typeof(VFXGenericShaderGraphMaterialGUI).FullName, universalRPType); - } + var gui = typeof(ShaderGraphSpriteGUI); +#if HAS_VFX_GRAPH + if (TargetsVFX()) + gui = typeof(VFXGenericShaderGraphMaterialGUI); #endif + context.AddCustomEditorForRenderPipeline(gui.FullName, universalRPType); context.AddSubShader(PostProcessSubShader(SubShaders.SpriteLit(target))); } @@ -253,6 +254,7 @@ static class SpriteLitRequiredFields public static FieldCollection Normal = new FieldCollection() { + StructFields.Varyings.color, StructFields.Varyings.normalWS, StructFields.Varyings.tangentWS, }; diff --git a/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/UniversalSpriteUnlitSubTarget.cs b/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/UniversalSpriteUnlitSubTarget.cs index 6a264a96a33..bf7239a23f2 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/UniversalSpriteUnlitSubTarget.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/UniversalSpriteUnlitSubTarget.cs @@ -25,13 +25,14 @@ public override void Setup(ref TargetSetupContext context) { base.Setup(ref context); context.AddAssetDependency(kSourceCodeGuid, AssetCollection.Flags.SourceDependency); -#if HAS_VFX_GRAPH + var universalRPType = typeof(UnityEngine.Rendering.Universal.UniversalRenderPipelineAsset); - if (TargetsVFX() && !context.HasCustomEditorForRenderPipeline(universalRPType)) - { - context.AddCustomEditorForRenderPipeline(typeof(VFXGenericShaderGraphMaterialGUI).FullName, universalRPType); - } + var gui = typeof(ShaderGraphSpriteGUI); +#if HAS_VFX_GRAPH + if (TargetsVFX()) + gui = typeof(VFXGenericShaderGraphMaterialGUI); #endif + context.AddCustomEditorForRenderPipeline(gui.FullName, universalRPType); context.AddSubShader(PostProcessSubShader(SubShaders.SpriteUnlit(target))); } diff --git a/Packages/com.unity.render-pipelines.universal/Editor/ShaderGUI/ShadergraphSpriteGUI.cs b/Packages/com.unity.render-pipelines.universal/Editor/ShaderGUI/ShadergraphSpriteGUI.cs new file mode 100644 index 00000000000..0384ff111b0 --- /dev/null +++ b/Packages/com.unity.render-pipelines.universal/Editor/ShaderGUI/ShadergraphSpriteGUI.cs @@ -0,0 +1,30 @@ +using UnityEngine; + +namespace UnityEditor +{ + // Used for ShaderGraph Sprite shaders + class ShaderGraphSpriteGUI : BaseShaderGUI + { + protected override uint materialFilter => uint.MaxValue & ~(uint)Expandable.SurfaceOptions; + + MaterialProperty[] properties; + + // collect properties from the material properties + public override void FindProperties(MaterialProperty[] properties) + { + // save off the list of all properties for shadergraph + this.properties = properties; + + var material = materialEditor?.target as Material; + if (material == null) + return; + + base.FindProperties(properties); + } + + public override void DrawSurfaceInputs(Material material) + { + DrawShaderGraphProperties(material, properties); + } + } +} diff --git a/Packages/com.unity.render-pipelines.universal/Editor/ShaderGUI/ShadergraphSpriteGUI.cs.meta b/Packages/com.unity.render-pipelines.universal/Editor/ShaderGUI/ShadergraphSpriteGUI.cs.meta new file mode 100644 index 00000000000..23195832dd5 --- /dev/null +++ b/Packages/com.unity.render-pipelines.universal/Editor/ShaderGUI/ShadergraphSpriteGUI.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 478c8ec8473e14f4597a729050dc56f3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Targets/UniversalTarget.cs b/Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Targets/UniversalTarget.cs index ea1b54d4069..14086022193 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Targets/UniversalTarget.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Targets/UniversalTarget.cs @@ -1507,6 +1507,7 @@ static class CorePragmas { { Pragma.Target(ShaderModel.Target20) }, { Pragma.ExcludeRenderers(new[] { Platform.D3D9 }) }, + { Pragma.MultiCompileInstancing }, { Pragma.Vertex("vert") }, { Pragma.Fragment("frag") }, }; diff --git a/Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/Core2D.hlsl b/Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/Core2D.hlsl new file mode 100644 index 00000000000..8e74198f155 --- /dev/null +++ b/Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/Core2D.hlsl @@ -0,0 +1,21 @@ +#ifndef INPUT_CORE_2D_INCLUDED +#define INPUT_CORE_2D_INCLUDED + +float3 UnityFlipSprite( in float3 pos, in float2 flip ) +{ + return float3(pos.xy * flip, pos.z); +} + +#ifdef UNITY_INSTANCING_ENABLED + UNITY_INSTANCING_BUFFER_START(PerDrawSprite) + // SpriteRenderer.Color while Non-Batched/Instanced. + UNITY_DEFINE_INSTANCED_PROP(float4, unity_SpriteRendererColorArray) + // this could be smaller but that's how bit each entry is regardless of type + UNITY_DEFINE_INSTANCED_PROP(float2, unity_SpriteFlipArray) + UNITY_INSTANCING_BUFFER_END(PerDrawSprite) + + #define unity_SpriteColor UNITY_ACCESS_INSTANCED_PROP(PerDrawSprite, unity_SpriteRendererColorArray) + #define unity_SpriteFlip UNITY_ACCESS_INSTANCED_PROP(PerDrawSprite, unity_SpriteFlipArray) +#endif // instancing + +#endif diff --git a/Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/Core2D.hlsl.meta b/Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/Core2D.hlsl.meta new file mode 100644 index 00000000000..c76a36e0dfc --- /dev/null +++ b/Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/Core2D.hlsl.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: b1ab2a3655b2e554794f4f6338212e57 +ShaderIncludeImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/com.unity.render-pipelines.universal/Shaders/2D/Sprite-Lit-Default.shader b/Packages/com.unity.render-pipelines.universal/Shaders/2D/Sprite-Lit-Default.shader index 66d9ba81523..505d7376d3a 100644 --- a/Packages/com.unity.render-pipelines.universal/Shaders/2D/Sprite-Lit-Default.shader +++ b/Packages/com.unity.render-pipelines.universal/Shaders/2D/Sprite-Lit-Default.shader @@ -28,10 +28,13 @@ Shader "Universal Render Pipeline/2D/Sprite-Lit-Default" HLSLPROGRAM #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl" + #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/Core2D.hlsl" #pragma vertex CombinedShapeLightVertex #pragma fragment CombinedShapeLightFragment + // GPU Instancing + #pragma multi_compile_instancing #pragma multi_compile USE_SHAPE_LIGHT_TYPE_0 __ #pragma multi_compile USE_SHAPE_LIGHT_TYPE_1 __ #pragma multi_compile USE_SHAPE_LIGHT_TYPE_2 __ @@ -90,6 +93,9 @@ Shader "Universal Render Pipeline/2D/Sprite-Lit-Default" UNITY_SETUP_INSTANCE_ID(v); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); +#ifdef UNITY_INSTANCING_ENABLED + v.positionOS = UnityFlipSprite(v.positionOS, unity_SpriteFlip); +#endif o.positionCS = TransformObjectToHClip(v.positionOS); #if defined(DEBUG_DISPLAY) o.positionWS = TransformObjectToWorld(v.positionOS); @@ -98,6 +104,9 @@ Shader "Universal Render Pipeline/2D/Sprite-Lit-Default" o.lightingUV = half2(ComputeScreenPos(o.positionCS / o.positionCS.w).xy); o.color = v.color * _Color * _RendererColor; +#ifdef UNITY_INSTANCING_ENABLED + o.color *= unity_SpriteColor; +#endif return o; } @@ -124,10 +133,14 @@ Shader "Universal Render Pipeline/2D/Sprite-Lit-Default" HLSLPROGRAM #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl" + #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/Core2D.hlsl" #pragma vertex NormalsRenderingVertex #pragma fragment NormalsRenderingFragment + // GPU Instancing + #pragma multi_compile_instancing + struct Attributes { float3 positionOS : POSITION; @@ -160,12 +173,18 @@ Shader "Universal Render Pipeline/2D/Sprite-Lit-Default" UNITY_SETUP_INSTANCE_ID(attributes); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); +#ifdef UNITY_INSTANCING_ENABLED + attributes.positionOS = UnityFlipSprite(attributes.positionOS, unity_SpriteFlip); +#endif o.positionCS = TransformObjectToHClip(attributes.positionOS); o.uv = TRANSFORM_TEX(attributes.uv, _NormalMap); o.color = attributes.color; o.normalWS = -GetViewForwardDir(); o.tangentWS = TransformObjectToWorldDir(attributes.tangent.xyz); o.bitangentWS = cross(o.normalWS, o.tangentWS) * attributes.tangent.w; +#ifdef UNITY_INSTANCING_ENABLED + o.color *= unity_SpriteColor; +#endif return o; } @@ -187,10 +206,14 @@ Shader "Universal Render Pipeline/2D/Sprite-Lit-Default" HLSLPROGRAM #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl" + #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/Core2D.hlsl" #pragma vertex UnlitVertex #pragma fragment UnlitFragment + // GPU Instancing + #pragma multi_compile_instancing + struct Attributes { float3 positionOS : POSITION; @@ -222,12 +245,18 @@ Shader "Universal Render Pipeline/2D/Sprite-Lit-Default" UNITY_SETUP_INSTANCE_ID(attributes); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); +#ifdef UNITY_INSTANCING_ENABLED + attributes.positionOS = UnityFlipSprite(attributes.positionOS, unity_SpriteFlip); +#endif o.positionCS = TransformObjectToHClip(attributes.positionOS); #if defined(DEBUG_DISPLAY) o.positionWS = TransformObjectToWorld(v.positionOS); #endif o.uv = TRANSFORM_TEX(attributes.uv, _MainTex); o.color = attributes.color * _Color * _RendererColor; +#ifdef UNITY_INSTANCING_ENABLED + o.color *= unity_SpriteColor; +#endif return o; } diff --git a/Packages/com.unity.render-pipelines.universal/Shaders/2D/Sprite-Unlit-Default.shader b/Packages/com.unity.render-pipelines.universal/Shaders/2D/Sprite-Unlit-Default.shader index 72514a9ad3b..36671121765 100644 --- a/Packages/com.unity.render-pipelines.universal/Shaders/2D/Sprite-Unlit-Default.shader +++ b/Packages/com.unity.render-pipelines.universal/Shaders/2D/Sprite-Unlit-Default.shader @@ -17,7 +17,7 @@ Shader "Universal Render Pipeline/2D/Sprite-Unlit-Default" { Tags {"Queue" = "Transparent" "RenderType" = "Transparent" "RenderPipeline" = "UniversalPipeline" } - Blend SrcAlpha OneMinusSrcAlpha + Blend SrcAlpha OneMinusSrcAlpha, One OneMinusSrcAlpha Cull Off ZWrite Off @@ -27,6 +27,7 @@ Shader "Universal Render Pipeline/2D/Sprite-Unlit-Default" HLSLPROGRAM #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl" + #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/Core2D.hlsl" #if defined(DEBUG_DISPLAY) #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/InputData2D.hlsl" #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/SurfaceData2D.hlsl" @@ -36,6 +37,8 @@ Shader "Universal Render Pipeline/2D/Sprite-Unlit-Default" #pragma vertex UnlitVertex #pragma fragment UnlitFragment + // GPU Instancing + #pragma multi_compile_instancing #pragma multi_compile _ DEBUG_DISPLAY struct Attributes @@ -69,12 +72,18 @@ Shader "Universal Render Pipeline/2D/Sprite-Unlit-Default" UNITY_SETUP_INSTANCE_ID(v); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); +#ifdef UNITY_INSTANCING_ENABLED + v.positionOS = UnityFlipSprite(v.positionOS, unity_SpriteFlip); +#endif o.positionCS = TransformObjectToHClip(v.positionOS); #if defined(DEBUG_DISPLAY) o.positionWS = TransformObjectToWorld(v.positionOS); #endif o.uv = TRANSFORM_TEX(v.uv, _MainTex); o.color = v.color * _Color * _RendererColor; +#ifdef UNITY_INSTANCING_ENABLED + o.color *= unity_SpriteColor; +#endif return o; } @@ -108,6 +117,7 @@ Shader "Universal Render Pipeline/2D/Sprite-Unlit-Default" HLSLPROGRAM #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl" + #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/Core2D.hlsl" #if defined(DEBUG_DISPLAY) #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/InputData2D.hlsl" #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/SurfaceData2D.hlsl" @@ -117,6 +127,8 @@ Shader "Universal Render Pipeline/2D/Sprite-Unlit-Default" #pragma vertex UnlitVertex #pragma fragment UnlitFragment + // GPU Instancing + #pragma multi_compile_instancing #pragma multi_compile_fragment _ DEBUG_DISPLAY struct Attributes @@ -150,12 +162,18 @@ Shader "Universal Render Pipeline/2D/Sprite-Unlit-Default" UNITY_SETUP_INSTANCE_ID(attributes); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); +#ifdef UNITY_INSTANCING_ENABLED + attributes.positionOS = UnityFlipSprite(attributes.positionOS, unity_SpriteFlip); +#endif o.positionCS = TransformObjectToHClip(attributes.positionOS); #if defined(DEBUG_DISPLAY) o.positionWS = TransformObjectToWorld(attributes.positionOS); #endif o.uv = TRANSFORM_TEX(attributes.uv, _MainTex); o.color = attributes.color * _Color * _RendererColor; +#ifdef UNITY_INSTANCING_ENABLED + o.color *= unity_SpriteColor; +#endif return o; } diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing.meta new file mode 100644 index 00000000000..ff9ded3e035 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2d5c9b4bb39375d4d99538070f9869d6 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing.unity b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing.unity new file mode 100644 index 00000000000..ca39747bf35 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing.unity @@ -0,0 +1,2315 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 10 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 3 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 13 + m_BakeOnSceneLoad: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 0 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 1 + m_PVRFilteringGaussRadiusAO: 1 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 20201, guid: 0000000000000000f000000000000000, type: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &75676365 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 75676366} + m_Layer: 0 + m_Name: Sprite-Unlit-Shadergraph + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &75676366 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 75676365} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: -2, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1315649601} + - {fileID: 1596896699} + - {fileID: 1880632342} + - {fileID: 274931737} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &123189903 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 123189905} + - component: {fileID: 123189904} + m_Layer: 0 + m_Name: BirdEnemyFlapSprite 4 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!212 &123189904 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 123189903} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 54c508a8fa8a70943bba0ba97baa4f27, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 86ce912717672b8429c58e6960c12e25, type: 3} + m_Color: {r: 0, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1.28, y: 1.28} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &123189905 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 123189903} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 3, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1191293558} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &236320669 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 236320671} + - component: {fileID: 236320670} + m_Layer: 0 + m_Name: BirdEnemyFlapSprite 3 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!212 &236320670 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 236320669} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 54c508a8fa8a70943bba0ba97baa4f27, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 86ce912717672b8429c58e6960c12e25, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 1 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1.28, y: 1.28} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &236320671 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 236320669} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 1, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1191293558} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &274931736 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 274931737} + - component: {fileID: 274931738} + m_Layer: 0 + m_Name: BirdEnemyFlapSprite 4 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &274931737 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 274931736} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 3, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 75676366} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!212 &274931738 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 274931736} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 60737a90dff96a544ac8a87fe697150c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 86ce912717672b8429c58e6960c12e25, type: 3} + m_Color: {r: 0, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1.28, y: 1.28} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!1 &327740586 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 327740588} + - component: {fileID: 327740587} + m_Layer: 0 + m_Name: Light 2D + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &327740587 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 327740586} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 073797afb82c5a1438f328866b10b3f0, type: 3} + m_Name: + m_EditorClassIdentifier: + m_ComponentVersion: 2 + m_LightType: 4 + m_BlendStyleIndex: 0 + m_FalloffIntensity: 0.5 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 1 + m_LightVolumeIntensity: 1 + m_LightVolumeEnabled: 0 + m_ApplyToSortingLayers: eb0feddf00000000e980ef06 + m_LightCookieSprite: {fileID: 0} + m_DeprecatedPointLightCookieSprite: {fileID: 0} + m_LightOrder: 0 + m_AlphaBlendOnOverlap: 0 + m_OverlapOperation: 0 + m_NormalMapDistance: 3 + m_NormalMapQuality: 2 + m_UseNormalMap: 0 + m_ShadowsEnabled: 1 + m_ShadowIntensity: 0.75 + m_ShadowSoftness: 0.3 + m_ShadowSoftnessFalloffIntensity: 0.5 + m_ShadowVolumeIntensityEnabled: 0 + m_ShadowVolumeIntensity: 0.75 + m_LocalBounds: + m_Center: {x: 0, y: -0.00000011920929, z: 0} + m_Extent: {x: 0.9985302, y: 0.99853027, z: 0} + m_PointLightInnerAngle: 360 + m_PointLightOuterAngle: 360 + m_PointLightInnerRadius: 0.5316736 + m_PointLightOuterRadius: 3.8789914 + m_ShapeLightParametricSides: 5 + m_ShapeLightParametricAngleOffset: 0 + m_ShapeLightParametricRadius: 1 + m_ShapeLightFalloffSize: 0.5 + m_ShapeLightFalloffOffset: {x: 0, y: 0} + m_ShapePath: + - {x: -0.5, y: -0.5, z: 0} + - {x: 0.5, y: -0.5, z: 0} + - {x: 0.5, y: 0.5, z: 0} + - {x: -0.5, y: 0.5, z: 0} +--- !u!4 &327740588 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 327740586} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &506165350 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 506165354} + - component: {fileID: 506165353} + - component: {fileID: 506165352} + - component: {fileID: 506165351} + - component: {fileID: 506165355} + - component: {fileID: 506165356} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &506165351 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 506165350} + 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_VolumeFrameworkUpdateModeOption: 2 + m_RenderPostProcessing: 0 + m_Antialiasing: 0 + m_AntialiasingQuality: 2 + m_StopNaN: 0 + m_Dithering: 0 + m_ClearDepth: 1 + m_AllowXRRendering: 1 + m_AllowHDROutput: 1 + m_UseScreenCoordOverride: 0 + m_ScreenSizeOverride: {x: 0, y: 0, z: 0, w: 0} + m_ScreenCoordScaleBias: {x: 0, y: 0, z: 0, w: 0} + m_RequiresDepthTexture: 0 + m_RequiresColorTexture: 0 + m_Version: 2 + m_TaaSettings: + m_Quality: 3 + m_FrameInfluence: 0.1 + m_JitterScale: 1 + m_MipBias: 0 + m_VarianceClampScale: 0.9 + m_ContrastAdaptiveSharpening: 0 +--- !u!81 &506165352 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 506165350} + m_Enabled: 1 +--- !u!20 &506165353 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 506165350} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 2 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 1} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 1 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &506165354 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 506165350} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &506165355 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 506165350} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8c967615a7994bc49a3a77f079e6a859, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &506165356 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 506165350} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 73231aa468d81ea49bc3d914080de185, type: 3} + m_Name: + m_EditorClassIdentifier: + ImageComparisonSettings: + TargetWidth: 512 + TargetHeight: 512 + TargetMSAASamples: 1 + PerPixelCorrectnessThreshold: 0.001 + PerPixelGammaThreshold: 0.003921569 + PerPixelAlphaThreshold: 0.003921569 + RMSEThreshold: 0 + AverageCorrectnessThreshold: 0.005 + IncorrectPixelsThreshold: 0.0000038146973 + UseHDR: 0 + UseBackBuffer: 0 + ImageResolution: 0 + ActiveImageTests: 1 + ActivePixelTests: 7 + WaitFrames: 0 + XRCompatible: 0 + gpuDrivenCompatible: 1 + CheckMemoryAllocation: 1 + renderBackendCompatibility: 2 + SetBackBufferResolution: 0 +--- !u!1 &510396077 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 510396079} + - component: {fileID: 510396078} + m_Layer: 0 + m_Name: BirdEnemyFlapSprite 4 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!212 &510396078 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 510396077} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 64b37b5f46246d84b9b80e34f8f9aa14, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 86ce912717672b8429c58e6960c12e25, type: 3} + m_Color: {r: 0, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1.28, y: 1.28} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &510396079 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 510396077} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 3, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1984448005} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &600191481 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 600191482} + m_Layer: 0 + m_Name: Sprite-CustomLit-Shadergraph + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &600191482 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 600191481} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: -4, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1273794227} + - {fileID: 1496790421} + - {fileID: 1963736875} + - {fileID: 1615199375} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &861940630 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 861940632} + - component: {fileID: 861940631} + m_Layer: 0 + m_Name: BirdEnemyFlapSprite 4 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!212 &861940631 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 861940630} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 26387240445e60a439a867c45582e036, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 86ce912717672b8429c58e6960c12e25, type: 3} + m_Color: {r: 0, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1.28, y: 1.28} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &861940632 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 861940630} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 3, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1558294035} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1007469336 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1007469338} + - component: {fileID: 1007469337} + m_Layer: 0 + m_Name: BirdEnemyFlapSprite 2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!212 &1007469337 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1007469336} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 64b37b5f46246d84b9b80e34f8f9aa14, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 86ce912717672b8429c58e6960c12e25, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 1 + m_DrawMode: 0 + m_Size: {x: 1.28, y: 1.28} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &1007469338 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1007469336} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -1, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1984448005} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1115111063 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1115111065} + - component: {fileID: 1115111064} + m_Layer: 0 + m_Name: BirdEnemyFlapSprite 3 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!212 &1115111064 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1115111063} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 26387240445e60a439a867c45582e036, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 86ce912717672b8429c58e6960c12e25, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 1 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1.28, y: 1.28} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &1115111065 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1115111063} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 1, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1558294035} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1191293557 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1191293558} + m_Layer: 0 + m_Name: Sprite-Lit-Shadergraph + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1191293558 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1191293557} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1765849714} + - {fileID: 1768863408} + - {fileID: 236320671} + - {fileID: 123189905} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1222769616 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1222769618} + - component: {fileID: 1222769617} + m_Layer: 0 + m_Name: BirdEnemyFlapSprite 3 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!212 &1222769617 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1222769616} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 64b37b5f46246d84b9b80e34f8f9aa14, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 86ce912717672b8429c58e6960c12e25, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 1 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1.28, y: 1.28} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &1222769618 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1222769616} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 1, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1984448005} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1273794226 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1273794227} + - component: {fileID: 1273794228} + m_Layer: 0 + m_Name: BirdEnemyFlapSprite 1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1273794227 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1273794226} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -1, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 600191482} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!212 &1273794228 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1273794226} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: ac030f93a35cd0b428141a13774161c9, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 86ce912717672b8429c58e6960c12e25, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 1 + m_DrawMode: 0 + m_Size: {x: 1.28, y: 1.28} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!1 &1289862862 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1289862864} + - component: {fileID: 1289862863} + m_Layer: 0 + m_Name: BirdEnemyFlapSprite 1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!212 &1289862863 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1289862862} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 64b37b5f46246d84b9b80e34f8f9aa14, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 86ce912717672b8429c58e6960c12e25, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1.28, y: 1.28} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &1289862864 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1289862862} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -3, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1984448005} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1315649600 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1315649601} + - component: {fileID: 1315649602} + m_Layer: 0 + m_Name: BirdEnemyFlapSprite 1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1315649601 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1315649600} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -1, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 75676366} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!212 &1315649602 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1315649600} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 60737a90dff96a544ac8a87fe697150c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 86ce912717672b8429c58e6960c12e25, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 1 + m_DrawMode: 0 + m_Size: {x: 1.28, y: 1.28} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!1 &1496790420 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1496790421} + - component: {fileID: 1496790422} + m_Layer: 0 + m_Name: BirdEnemyFlapSprite 2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1496790421 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1496790420} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -3, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 600191482} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!212 &1496790422 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1496790420} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: ac030f93a35cd0b428141a13774161c9, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 86ce912717672b8429c58e6960c12e25, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1.28, y: 1.28} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!1 &1558294034 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1558294035} + m_Layer: 0 + m_Name: Sprite-Lit-Default + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1558294035 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1558294034} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 4, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1682605768} + - {fileID: 2117563998} + - {fileID: 1115111065} + - {fileID: 861940632} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1596896698 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1596896699} + - component: {fileID: 1596896700} + m_Layer: 0 + m_Name: BirdEnemyFlapSprite 2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1596896699 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1596896698} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -3, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 75676366} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!212 &1596896700 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1596896698} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 60737a90dff96a544ac8a87fe697150c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 86ce912717672b8429c58e6960c12e25, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1.28, y: 1.28} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!1 &1615199374 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1615199375} + - component: {fileID: 1615199376} + m_Layer: 0 + m_Name: BirdEnemyFlapSprite 4 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1615199375 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1615199374} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 3, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 600191482} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!212 &1615199376 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1615199374} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: ac030f93a35cd0b428141a13774161c9, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 86ce912717672b8429c58e6960c12e25, type: 3} + m_Color: {r: 0, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1.28, y: 1.28} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!1 &1682605766 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1682605768} + - component: {fileID: 1682605767} + m_Layer: 0 + m_Name: BirdEnemyFlapSprite 1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!212 &1682605767 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1682605766} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 26387240445e60a439a867c45582e036, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 86ce912717672b8429c58e6960c12e25, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1.28, y: 1.28} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &1682605768 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1682605766} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -3, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1558294035} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1765849712 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1765849714} + - component: {fileID: 1765849713} + m_Layer: 0 + m_Name: BirdEnemyFlapSprite 1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!212 &1765849713 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1765849712} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 54c508a8fa8a70943bba0ba97baa4f27, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 86ce912717672b8429c58e6960c12e25, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 1 + m_DrawMode: 0 + m_Size: {x: 1.28, y: 1.28} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &1765849714 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1765849712} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -1, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1191293558} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1768863406 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1768863408} + - component: {fileID: 1768863407} + m_Layer: 0 + m_Name: BirdEnemyFlapSprite 2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!212 &1768863407 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1768863406} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 54c508a8fa8a70943bba0ba97baa4f27, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 86ce912717672b8429c58e6960c12e25, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1.28, y: 1.28} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &1768863408 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1768863406} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -3, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1191293558} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1880632341 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1880632342} + - component: {fileID: 1880632343} + m_Layer: 0 + m_Name: BirdEnemyFlapSprite 3 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1880632342 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1880632341} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 1, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 75676366} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!212 &1880632343 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1880632341} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 60737a90dff96a544ac8a87fe697150c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 86ce912717672b8429c58e6960c12e25, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 1 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1.28, y: 1.28} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!1 &1963736874 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1963736875} + - component: {fileID: 1963736876} + m_Layer: 0 + m_Name: BirdEnemyFlapSprite 3 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1963736875 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1963736874} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 1, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 600191482} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!212 &1963736876 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1963736874} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: ac030f93a35cd0b428141a13774161c9, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 86ce912717672b8429c58e6960c12e25, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 1 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1.28, y: 1.28} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!1 &1984448004 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1984448005} + m_Layer: 0 + m_Name: Sprite-Unlit-Default + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1984448005 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1984448004} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 2, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1289862864} + - {fileID: 1007469338} + - {fileID: 1222769618} + - {fileID: 510396079} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &2117563996 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2117563998} + - component: {fileID: 2117563997} + m_Layer: 0 + m_Name: BirdEnemyFlapSprite 2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!212 &2117563997 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2117563996} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 26387240445e60a439a867c45582e036, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 86ce912717672b8429c58e6960c12e25, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 1 + m_DrawMode: 0 + m_Size: {x: 1.28, y: 1.28} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &2117563998 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2117563996} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -1, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1558294035} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 506165354} + - {fileID: 327740588} + - {fileID: 1558294035} + - {fileID: 1984448005} + - {fileID: 1191293558} + - {fileID: 75676366} + - {fileID: 600191482} diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing.unity.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing.unity.meta new file mode 100644 index 00000000000..ae452e97b4b --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 67d46509b9dfceb43bf64d2d1ae052f5 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/DisableSRPBatching.cs b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/DisableSRPBatching.cs new file mode 100644 index 00000000000..ad57744dcb0 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/DisableSRPBatching.cs @@ -0,0 +1,11 @@ +using UnityEditor; +using UnityEngine; +using UnityEngine.Rendering; + +public class DisableSRPBatching : MonoBehaviour +{ + private void Update() + { + GraphicsSettings.useScriptableRenderPipelineBatching = false; + } +} diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/DisableSRPBatching.cs.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/DisableSRPBatching.cs.meta new file mode 100644 index 00000000000..a3cbb85010d --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/DisableSRPBatching.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 8c967615a7994bc49a3a77f079e6a859 \ No newline at end of file diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteCustomLit_Instance_ShaderGraph.mat b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteCustomLit_Instance_ShaderGraph.mat new file mode 100644 index 00000000000..ccf761d399f --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteCustomLit_Instance_ShaderGraph.mat @@ -0,0 +1,60 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &-3707954424825515761 +MonoBehaviour: + m_ObjectHideFlags: 11 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} + m_Name: + m_EditorClassIdentifier: + version: 9 +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: SpriteCustomLit_Instance_ShaderGraph + m_Shader: {fileID: -6465566751694194690, guid: 6012e2c35ee3afc43b8c187cff7676b9, + type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 1 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_Lightmaps: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_LightmapsInd: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_ShadowMasks: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: [] + m_Colors: [] + m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteCustomLit_Instance_ShaderGraph.mat.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteCustomLit_Instance_ShaderGraph.mat.meta new file mode 100644 index 00000000000..f67770d71df --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteCustomLit_Instance_ShaderGraph.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ac030f93a35cd0b428141a13774161c9 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteCustomLit_Instance_ShaderGraph.shadergraph b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteCustomLit_Instance_ShaderGraph.shadergraph new file mode 100644 index 00000000000..2946bdbdf33 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteCustomLit_Instance_ShaderGraph.shadergraph @@ -0,0 +1,874 @@ +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.GraphData", + "m_ObjectId": "edca098336694f4e8e5d79ee981d550c", + "m_Properties": [ + { + "m_Id": "4feb15a3b4b84a47819f4c5ec3e71395" + } + ], + "m_Keywords": [], + "m_Dropdowns": [], + "m_CategoryData": [ + { + "m_Id": "e8cefefb20b44dd1a646e5cd2e99daa4" + } + ], + "m_Nodes": [ + { + "m_Id": "e5bf6f84ada84277a64b01061aa89c06" + }, + { + "m_Id": "b21e55d0094f49b1801195231ca066fd" + }, + { + "m_Id": "d76874d1b73d41ac884d9bbcd7a2f933" + }, + { + "m_Id": "89b9521b5c6d479a945fd6354ed91d99" + }, + { + "m_Id": "a0bfa02417034081be0f05a329b21d8d" + }, + { + "m_Id": "227e016c330f43ee9eed0921d8d719fc" + }, + { + "m_Id": "aa5378b33e0f4c3fbaddea8a56cf1abd" + }, + { + "m_Id": "20499785980549ba8420783e238e015a" + }, + { + "m_Id": "4b4015a4164144d7aacb7fd10d46770f" + } + ], + "m_GroupDatas": [], + "m_StickyNoteDatas": [], + "m_Edges": [ + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "20499785980549ba8420783e238e015a" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "4b4015a4164144d7aacb7fd10d46770f" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4b4015a4164144d7aacb7fd10d46770f" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "89b9521b5c6d479a945fd6354ed91d99" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4b4015a4164144d7aacb7fd10d46770f" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "aa5378b33e0f4c3fbaddea8a56cf1abd" + }, + "m_SlotId": 0 + } + } + ], + "m_VertexContext": { + "m_Position": { + "x": 0.0, + "y": 0.0 + }, + "m_Blocks": [ + { + "m_Id": "e5bf6f84ada84277a64b01061aa89c06" + }, + { + "m_Id": "b21e55d0094f49b1801195231ca066fd" + }, + { + "m_Id": "d76874d1b73d41ac884d9bbcd7a2f933" + } + ] + }, + "m_FragmentContext": { + "m_Position": { + "x": 0.0, + "y": 200.0 + }, + "m_Blocks": [ + { + "m_Id": "89b9521b5c6d479a945fd6354ed91d99" + }, + { + "m_Id": "a0bfa02417034081be0f05a329b21d8d" + }, + { + "m_Id": "227e016c330f43ee9eed0921d8d719fc" + }, + { + "m_Id": "aa5378b33e0f4c3fbaddea8a56cf1abd" + } + ] + }, + "m_PreviewData": { + "serializedMesh": { + "m_SerializedMesh": "{\"mesh\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "preventRotation": false + }, + "m_Path": "Shader Graphs", + "m_GraphPrecision": 1, + "m_PreviewMode": 2, + "m_OutputNode": { + "m_Id": "" + }, + "m_SubDatas": [], + "m_ActiveTargets": [ + { + "m_Id": "179b3d236eeb4157ab1354ad1a35e33a" + } + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalSpriteCustomLitSubTarget", + "m_ObjectId": "0f5fc0248cac4a8d99ab1b26574cbc03" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "11245995f44e4584aa3f7731b8e897a8", + "m_Id": 0, + "m_DisplayName": "MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ColorRGBMaterialSlot", + "m_ObjectId": "13ba63987dc3432d93907976ebb0604c", + "m_Id": 0, + "m_DisplayName": "Base Color", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "BaseColor", + "m_StageCapability": 2, + "m_Value": { + "x": 0.5, + "y": 0.5, + "z": 0.5 + }, + "m_DefaultValue": { + "x": 0.5, + "y": 0.5, + "z": 0.5 + }, + "m_Labels": [], + "m_ColorMode": 0, + "m_DefaultColor": { + "r": 0.5, + "g": 0.5, + "b": 0.5, + "a": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalMaterialSlot", + "m_ObjectId": "148a977f0f74470186002631eab29f23", + "m_Id": 0, + "m_DisplayName": "Normal", + "m_SlotType": 0, + "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": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalTarget", + "m_ObjectId": "179b3d236eeb4157ab1354ad1a35e33a", + "m_Datas": [], + "m_ActiveSubTarget": { + "m_Id": "0f5fc0248cac4a8d99ab1b26574cbc03" + }, + "m_AllowMaterialOverride": false, + "m_SurfaceType": 0, + "m_ZTestMode": 4, + "m_ZWriteControl": 0, + "m_AlphaMode": 0, + "m_RenderFace": 2, + "m_AlphaClip": false, + "m_CastShadows": true, + "m_ReceiveShadows": true, + "m_DisableTint": false, + "m_AdditionalMotionVectorMode": 0, + "m_AlembicMotionVectors": false, + "m_SupportsLODCrossFade": false, + "m_CustomEditorGUI": "", + "m_SupportVFX": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "20499785980549ba8420783e238e015a", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -507.0, + "y": 276.0, + "width": 129.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "11245995f44e4584aa3f7731b8e897a8" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "4feb15a3b4b84a47819f4c5ec3e71395" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "227e016c330f43ee9eed0921d8d719fc", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.NormalTS", + "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": "ce5ac5a11c2e4bfbbcdab6763f229cd1" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.NormalTS" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "30b63c8f540343b585e6473d3d0d98eb", + "m_Id": 0, + "m_DisplayName": "Alpha", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 2, + "m_Value": 1.0, + "m_DefaultValue": 1.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "3338abaacaab44dc8a5a665345615379", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "402e4b9015d64ac1a636a8f953924c41", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PositionMaterialSlot", + "m_ObjectId": "46f828400eed4803bdfc53bc413a45a6", + "m_Id": 0, + "m_DisplayName": "Position", + "m_SlotType": 0, + "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": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "4b4015a4164144d7aacb7fd10d46770f", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -304.0, + "y": 241.0, + "width": 208.0, + "height": 435.0 + } + }, + "m_Slots": [ + { + "m_Id": "d42b12d6adc7463da9bd25e61d1323ce" + }, + { + "m_Id": "6d17b051780e464299fda84ff6456631" + }, + { + "m_Id": "ba912fc08d834cfa82ec8cc05b145aa4" + }, + { + "m_Id": "9a309dc4d7054691affe5a416dfbcec1" + }, + { + "m_Id": "402e4b9015d64ac1a636a8f953924c41" + }, + { + "m_Id": "8a7625f64e1648d7b3ccccf35cf5d1fb" + }, + { + "m_Id": "3338abaacaab44dc8a5a665345615379" + }, + { + "m_Id": "fccc92d348e94401b8b537cea68d385d" + } + ], + "synonyms": [ + "tex2d" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.Texture2DShaderProperty", + "m_ObjectId": "4feb15a3b4b84a47819f4c5ec3e71395", + "m_Guid": { + "m_GuidSerialized": "b69033c1-cac6-419e-9661-fa56cd9d5744" + }, + "m_Name": "MainTex", + "m_DefaultRefNameVersion": 1, + "m_RefNameGeneratedByDisplayName": "MainTex", + "m_DefaultReferenceName": "_MainTex", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "m_SerializedTexture": "", + "m_Guid": "" + }, + "isMainTexture": false, + "useTilingAndOffset": false, + "useTexelSize": true, + "m_Modifiable": true, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "6d17b051780e464299fda84ff6456631", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "89b9521b5c6d479a945fd6354ed91d99", + "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": "13ba63987dc3432d93907976ebb0604c" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.BaseColor" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "8a7625f64e1648d7b3ccccf35cf5d1fb", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "9a309dc4d7054691affe5a416dfbcec1", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "a0bfa02417034081be0f05a329b21d8d", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.SpriteMask", + "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": "fc6ef53240774b07ae0ff9e06a417fdd" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.SpriteMask" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.TangentMaterialSlot", + "m_ObjectId": "a94fd9d382854c5b9d51a612e73dcf9a", + "m_Id": 0, + "m_DisplayName": "Tangent", + "m_SlotType": 0, + "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": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "aa5378b33e0f4c3fbaddea8a56cf1abd", + "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": "30b63c8f540343b585e6473d3d0d98eb" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Alpha" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "b21e55d0094f49b1801195231ca066fd", + "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": "148a977f0f74470186002631eab29f23" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Normal" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "ba912fc08d834cfa82ec8cc05b145aa4", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalMaterialSlot", + "m_ObjectId": "ce5ac5a11c2e4bfbbcdab6763f229cd1", + "m_Id": 0, + "m_DisplayName": "Normal (Tangent Space)", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "NormalTS", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_Space": 3 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "d42b12d6adc7463da9bd25e61d1323ce", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "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.BlockNode", + "m_ObjectId": "d76874d1b73d41ac884d9bbcd7a2f933", + "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": "a94fd9d382854c5b9d51a612e73dcf9a" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Tangent" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "e5bf6f84ada84277a64b01061aa89c06", + "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": "46f828400eed4803bdfc53bc413a45a6" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Position" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.CategoryData", + "m_ObjectId": "e8cefefb20b44dd1a646e5cd2e99daa4", + "m_Name": "", + "m_ChildObjectList": [ + { + "m_Id": "4feb15a3b4b84a47819f4c5ec3e71395" + } + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ColorRGBAMaterialSlot", + "m_ObjectId": "fc6ef53240774b07ae0ff9e06a417fdd", + "m_Id": 0, + "m_DisplayName": "Sprite Mask", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SpriteMask", + "m_StageCapability": 2, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "fccc92d348e94401b8b537cea68d385d", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteCustomLit_Instance_ShaderGraph.shadergraph.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteCustomLit_Instance_ShaderGraph.shadergraph.meta new file mode 100644 index 00000000000..a071d15759c --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteCustomLit_Instance_ShaderGraph.shadergraph.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 6012e2c35ee3afc43b8c187cff7676b9 +ScriptedImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 2 + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 11500000, guid: 625f186215c104763be7675aa2d941aa, type: 3} diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteLit_Instance.mat b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteLit_Instance.mat new file mode 100644 index 00000000000..81ecbb9e8ef --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteLit_Instance.mat @@ -0,0 +1,50 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: SpriteLit_Instance + m_Shader: {fileID: 4800000, guid: e260cfa7296ee7642b167f1eb5be5023, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 1 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _AlphaTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MaskTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _NormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _EnableExternalAlpha: 0 + - _ZWrite: 0 + m_Colors: + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _RendererColor: {r: 1, g: 1, b: 1, a: 1} + m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteLit_Instance.mat.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteLit_Instance.mat.meta new file mode 100644 index 00000000000..65b3c93c2d5 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteLit_Instance.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 26387240445e60a439a867c45582e036 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteLit_Instance_ShaderGraph.mat b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteLit_Instance_ShaderGraph.mat new file mode 100644 index 00000000000..de7346c302a --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteLit_Instance_ShaderGraph.mat @@ -0,0 +1,60 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &-132126536344340573 +MonoBehaviour: + m_ObjectHideFlags: 11 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} + m_Name: + m_EditorClassIdentifier: + version: 9 +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: SpriteLit_Instance_ShaderGraph + m_Shader: {fileID: -6465566751694194690, guid: 3639fa68d35226a4ea18a43192e5311e, + type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 1 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_Lightmaps: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_LightmapsInd: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_ShadowMasks: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: [] + m_Colors: [] + m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteLit_Instance_ShaderGraph.mat.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteLit_Instance_ShaderGraph.mat.meta new file mode 100644 index 00000000000..b63cb097cfa --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteLit_Instance_ShaderGraph.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 54c508a8fa8a70943bba0ba97baa4f27 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteLit_Instance_ShaderGraph.shadergraph b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteLit_Instance_ShaderGraph.shadergraph new file mode 100644 index 00000000000..201951db378 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteLit_Instance_ShaderGraph.shadergraph @@ -0,0 +1,874 @@ +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.GraphData", + "m_ObjectId": "edca098336694f4e8e5d79ee981d550c", + "m_Properties": [ + { + "m_Id": "4feb15a3b4b84a47819f4c5ec3e71395" + } + ], + "m_Keywords": [], + "m_Dropdowns": [], + "m_CategoryData": [ + { + "m_Id": "e8cefefb20b44dd1a646e5cd2e99daa4" + } + ], + "m_Nodes": [ + { + "m_Id": "e5bf6f84ada84277a64b01061aa89c06" + }, + { + "m_Id": "b21e55d0094f49b1801195231ca066fd" + }, + { + "m_Id": "d76874d1b73d41ac884d9bbcd7a2f933" + }, + { + "m_Id": "89b9521b5c6d479a945fd6354ed91d99" + }, + { + "m_Id": "a0bfa02417034081be0f05a329b21d8d" + }, + { + "m_Id": "227e016c330f43ee9eed0921d8d719fc" + }, + { + "m_Id": "aa5378b33e0f4c3fbaddea8a56cf1abd" + }, + { + "m_Id": "20499785980549ba8420783e238e015a" + }, + { + "m_Id": "4b4015a4164144d7aacb7fd10d46770f" + } + ], + "m_GroupDatas": [], + "m_StickyNoteDatas": [], + "m_Edges": [ + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "20499785980549ba8420783e238e015a" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "4b4015a4164144d7aacb7fd10d46770f" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4b4015a4164144d7aacb7fd10d46770f" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "89b9521b5c6d479a945fd6354ed91d99" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4b4015a4164144d7aacb7fd10d46770f" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "aa5378b33e0f4c3fbaddea8a56cf1abd" + }, + "m_SlotId": 0 + } + } + ], + "m_VertexContext": { + "m_Position": { + "x": 0.0, + "y": 0.0 + }, + "m_Blocks": [ + { + "m_Id": "e5bf6f84ada84277a64b01061aa89c06" + }, + { + "m_Id": "b21e55d0094f49b1801195231ca066fd" + }, + { + "m_Id": "d76874d1b73d41ac884d9bbcd7a2f933" + } + ] + }, + "m_FragmentContext": { + "m_Position": { + "x": 0.0, + "y": 200.0 + }, + "m_Blocks": [ + { + "m_Id": "89b9521b5c6d479a945fd6354ed91d99" + }, + { + "m_Id": "a0bfa02417034081be0f05a329b21d8d" + }, + { + "m_Id": "227e016c330f43ee9eed0921d8d719fc" + }, + { + "m_Id": "aa5378b33e0f4c3fbaddea8a56cf1abd" + } + ] + }, + "m_PreviewData": { + "serializedMesh": { + "m_SerializedMesh": "{\"mesh\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "preventRotation": false + }, + "m_Path": "Shader Graphs", + "m_GraphPrecision": 1, + "m_PreviewMode": 2, + "m_OutputNode": { + "m_Id": "" + }, + "m_SubDatas": [], + "m_ActiveTargets": [ + { + "m_Id": "179b3d236eeb4157ab1354ad1a35e33a" + } + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalSpriteLitSubTarget", + "m_ObjectId": "09495cc4402d41fbac18ef22c0f8b7a3" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "11245995f44e4584aa3f7731b8e897a8", + "m_Id": 0, + "m_DisplayName": "MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ColorRGBMaterialSlot", + "m_ObjectId": "13ba63987dc3432d93907976ebb0604c", + "m_Id": 0, + "m_DisplayName": "Base Color", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "BaseColor", + "m_StageCapability": 2, + "m_Value": { + "x": 0.5, + "y": 0.5, + "z": 0.5 + }, + "m_DefaultValue": { + "x": 0.5, + "y": 0.5, + "z": 0.5 + }, + "m_Labels": [], + "m_ColorMode": 0, + "m_DefaultColor": { + "r": 0.5, + "g": 0.5, + "b": 0.5, + "a": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalMaterialSlot", + "m_ObjectId": "148a977f0f74470186002631eab29f23", + "m_Id": 0, + "m_DisplayName": "Normal", + "m_SlotType": 0, + "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": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalTarget", + "m_ObjectId": "179b3d236eeb4157ab1354ad1a35e33a", + "m_Datas": [], + "m_ActiveSubTarget": { + "m_Id": "09495cc4402d41fbac18ef22c0f8b7a3" + }, + "m_AllowMaterialOverride": false, + "m_SurfaceType": 0, + "m_ZTestMode": 4, + "m_ZWriteControl": 0, + "m_AlphaMode": 0, + "m_RenderFace": 2, + "m_AlphaClip": false, + "m_CastShadows": true, + "m_ReceiveShadows": true, + "m_DisableTint": false, + "m_AdditionalMotionVectorMode": 0, + "m_AlembicMotionVectors": false, + "m_SupportsLODCrossFade": false, + "m_CustomEditorGUI": "", + "m_SupportVFX": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "20499785980549ba8420783e238e015a", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -497.0, + "y": 256.0, + "width": 128.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "11245995f44e4584aa3f7731b8e897a8" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "4feb15a3b4b84a47819f4c5ec3e71395" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "227e016c330f43ee9eed0921d8d719fc", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.NormalTS", + "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": "ce5ac5a11c2e4bfbbcdab6763f229cd1" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.NormalTS" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "30b63c8f540343b585e6473d3d0d98eb", + "m_Id": 0, + "m_DisplayName": "Alpha", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 2, + "m_Value": 1.0, + "m_DefaultValue": 1.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "3338abaacaab44dc8a5a665345615379", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "402e4b9015d64ac1a636a8f953924c41", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PositionMaterialSlot", + "m_ObjectId": "46f828400eed4803bdfc53bc413a45a6", + "m_Id": 0, + "m_DisplayName": "Position", + "m_SlotType": 0, + "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": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "4b4015a4164144d7aacb7fd10d46770f", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -304.0, + "y": 241.0, + "width": 208.0, + "height": 435.0 + } + }, + "m_Slots": [ + { + "m_Id": "d42b12d6adc7463da9bd25e61d1323ce" + }, + { + "m_Id": "6d17b051780e464299fda84ff6456631" + }, + { + "m_Id": "ba912fc08d834cfa82ec8cc05b145aa4" + }, + { + "m_Id": "9a309dc4d7054691affe5a416dfbcec1" + }, + { + "m_Id": "402e4b9015d64ac1a636a8f953924c41" + }, + { + "m_Id": "8a7625f64e1648d7b3ccccf35cf5d1fb" + }, + { + "m_Id": "3338abaacaab44dc8a5a665345615379" + }, + { + "m_Id": "fccc92d348e94401b8b537cea68d385d" + } + ], + "synonyms": [ + "tex2d" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.Texture2DShaderProperty", + "m_ObjectId": "4feb15a3b4b84a47819f4c5ec3e71395", + "m_Guid": { + "m_GuidSerialized": "b69033c1-cac6-419e-9661-fa56cd9d5744" + }, + "m_Name": "MainTex", + "m_DefaultRefNameVersion": 1, + "m_RefNameGeneratedByDisplayName": "MainTex", + "m_DefaultReferenceName": "_MainTex", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "m_SerializedTexture": "", + "m_Guid": "" + }, + "isMainTexture": false, + "useTilingAndOffset": false, + "useTexelSize": true, + "m_Modifiable": true, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "6d17b051780e464299fda84ff6456631", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "89b9521b5c6d479a945fd6354ed91d99", + "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": "13ba63987dc3432d93907976ebb0604c" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.BaseColor" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "8a7625f64e1648d7b3ccccf35cf5d1fb", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "9a309dc4d7054691affe5a416dfbcec1", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "a0bfa02417034081be0f05a329b21d8d", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.SpriteMask", + "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": "fc6ef53240774b07ae0ff9e06a417fdd" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.SpriteMask" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.TangentMaterialSlot", + "m_ObjectId": "a94fd9d382854c5b9d51a612e73dcf9a", + "m_Id": 0, + "m_DisplayName": "Tangent", + "m_SlotType": 0, + "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": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "aa5378b33e0f4c3fbaddea8a56cf1abd", + "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": "30b63c8f540343b585e6473d3d0d98eb" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Alpha" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "b21e55d0094f49b1801195231ca066fd", + "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": "148a977f0f74470186002631eab29f23" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Normal" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "ba912fc08d834cfa82ec8cc05b145aa4", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalMaterialSlot", + "m_ObjectId": "ce5ac5a11c2e4bfbbcdab6763f229cd1", + "m_Id": 0, + "m_DisplayName": "Normal (Tangent Space)", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "NormalTS", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_Space": 3 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "d42b12d6adc7463da9bd25e61d1323ce", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "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.BlockNode", + "m_ObjectId": "d76874d1b73d41ac884d9bbcd7a2f933", + "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": "a94fd9d382854c5b9d51a612e73dcf9a" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Tangent" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "e5bf6f84ada84277a64b01061aa89c06", + "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": "46f828400eed4803bdfc53bc413a45a6" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Position" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.CategoryData", + "m_ObjectId": "e8cefefb20b44dd1a646e5cd2e99daa4", + "m_Name": "", + "m_ChildObjectList": [ + { + "m_Id": "4feb15a3b4b84a47819f4c5ec3e71395" + } + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ColorRGBAMaterialSlot", + "m_ObjectId": "fc6ef53240774b07ae0ff9e06a417fdd", + "m_Id": 0, + "m_DisplayName": "Sprite Mask", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SpriteMask", + "m_StageCapability": 2, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "fccc92d348e94401b8b537cea68d385d", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteLit_Instance_ShaderGraph.shadergraph.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteLit_Instance_ShaderGraph.shadergraph.meta new file mode 100644 index 00000000000..bc8cc5ab542 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteLit_Instance_ShaderGraph.shadergraph.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 3639fa68d35226a4ea18a43192e5311e +ScriptedImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 2 + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 11500000, guid: 625f186215c104763be7675aa2d941aa, type: 3} diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteUnit_Instance_ShaderGraph.mat b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteUnit_Instance_ShaderGraph.mat new file mode 100644 index 00000000000..f3137db32f6 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteUnit_Instance_ShaderGraph.mat @@ -0,0 +1,60 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: SpriteUnit_Instance_ShaderGraph + m_Shader: {fileID: -6465566751694194690, guid: 5c38180be583d024dabcb7eb258218f4, + type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 1 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_Lightmaps: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_LightmapsInd: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_ShadowMasks: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: [] + m_Colors: [] + m_BuildTextureStacks: [] + m_AllowLocking: 1 +--- !u!114 &7074310958015178815 +MonoBehaviour: + m_ObjectHideFlags: 11 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} + m_Name: + m_EditorClassIdentifier: + version: 9 diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteUnit_Instance_ShaderGraph.mat.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteUnit_Instance_ShaderGraph.mat.meta new file mode 100644 index 00000000000..cf3c2eda812 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteUnit_Instance_ShaderGraph.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 60737a90dff96a544ac8a87fe697150c +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteUnit_Instance_ShaderGraph.shadergraph b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteUnit_Instance_ShaderGraph.shadergraph new file mode 100644 index 00000000000..343177ddb40 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteUnit_Instance_ShaderGraph.shadergraph @@ -0,0 +1,745 @@ +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.GraphData", + "m_ObjectId": "edca098336694f4e8e5d79ee981d550c", + "m_Properties": [ + { + "m_Id": "4feb15a3b4b84a47819f4c5ec3e71395" + } + ], + "m_Keywords": [], + "m_Dropdowns": [], + "m_CategoryData": [ + { + "m_Id": "e8cefefb20b44dd1a646e5cd2e99daa4" + } + ], + "m_Nodes": [ + { + "m_Id": "e5bf6f84ada84277a64b01061aa89c06" + }, + { + "m_Id": "b21e55d0094f49b1801195231ca066fd" + }, + { + "m_Id": "d76874d1b73d41ac884d9bbcd7a2f933" + }, + { + "m_Id": "89b9521b5c6d479a945fd6354ed91d99" + }, + { + "m_Id": "aa5378b33e0f4c3fbaddea8a56cf1abd" + }, + { + "m_Id": "20499785980549ba8420783e238e015a" + }, + { + "m_Id": "4b4015a4164144d7aacb7fd10d46770f" + } + ], + "m_GroupDatas": [], + "m_StickyNoteDatas": [], + "m_Edges": [ + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "20499785980549ba8420783e238e015a" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "4b4015a4164144d7aacb7fd10d46770f" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4b4015a4164144d7aacb7fd10d46770f" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "89b9521b5c6d479a945fd6354ed91d99" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4b4015a4164144d7aacb7fd10d46770f" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "aa5378b33e0f4c3fbaddea8a56cf1abd" + }, + "m_SlotId": 0 + } + } + ], + "m_VertexContext": { + "m_Position": { + "x": 0.0, + "y": 0.0 + }, + "m_Blocks": [ + { + "m_Id": "e5bf6f84ada84277a64b01061aa89c06" + }, + { + "m_Id": "b21e55d0094f49b1801195231ca066fd" + }, + { + "m_Id": "d76874d1b73d41ac884d9bbcd7a2f933" + } + ] + }, + "m_FragmentContext": { + "m_Position": { + "x": 0.0, + "y": 200.0 + }, + "m_Blocks": [ + { + "m_Id": "89b9521b5c6d479a945fd6354ed91d99" + }, + { + "m_Id": "aa5378b33e0f4c3fbaddea8a56cf1abd" + } + ] + }, + "m_PreviewData": { + "serializedMesh": { + "m_SerializedMesh": "{\"mesh\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "preventRotation": false + }, + "m_Path": "Shader Graphs", + "m_GraphPrecision": 1, + "m_PreviewMode": 2, + "m_OutputNode": { + "m_Id": "" + }, + "m_SubDatas": [], + "m_ActiveTargets": [ + { + "m_Id": "179b3d236eeb4157ab1354ad1a35e33a" + } + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "11245995f44e4584aa3f7731b8e897a8", + "m_Id": 0, + "m_DisplayName": "MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ColorRGBMaterialSlot", + "m_ObjectId": "13ba63987dc3432d93907976ebb0604c", + "m_Id": 0, + "m_DisplayName": "Base Color", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "BaseColor", + "m_StageCapability": 2, + "m_Value": { + "x": 0.5, + "y": 0.5, + "z": 0.5 + }, + "m_DefaultValue": { + "x": 0.5, + "y": 0.5, + "z": 0.5 + }, + "m_Labels": [], + "m_ColorMode": 0, + "m_DefaultColor": { + "r": 0.5, + "g": 0.5, + "b": 0.5, + "a": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalMaterialSlot", + "m_ObjectId": "148a977f0f74470186002631eab29f23", + "m_Id": 0, + "m_DisplayName": "Normal", + "m_SlotType": 0, + "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": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalTarget", + "m_ObjectId": "179b3d236eeb4157ab1354ad1a35e33a", + "m_Datas": [], + "m_ActiveSubTarget": { + "m_Id": "a248db2d294b4517b499c3e201f3cc10" + }, + "m_AllowMaterialOverride": false, + "m_SurfaceType": 0, + "m_ZTestMode": 4, + "m_ZWriteControl": 0, + "m_AlphaMode": 0, + "m_RenderFace": 2, + "m_AlphaClip": false, + "m_CastShadows": true, + "m_ReceiveShadows": true, + "m_DisableTint": false, + "m_AdditionalMotionVectorMode": 0, + "m_AlembicMotionVectors": false, + "m_SupportsLODCrossFade": false, + "m_CustomEditorGUI": "", + "m_SupportVFX": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "20499785980549ba8420783e238e015a", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -507.0, + "y": 276.0, + "width": 129.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "11245995f44e4584aa3f7731b8e897a8" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "4feb15a3b4b84a47819f4c5ec3e71395" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "30b63c8f540343b585e6473d3d0d98eb", + "m_Id": 0, + "m_DisplayName": "Alpha", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 2, + "m_Value": 1.0, + "m_DefaultValue": 1.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "3338abaacaab44dc8a5a665345615379", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "402e4b9015d64ac1a636a8f953924c41", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PositionMaterialSlot", + "m_ObjectId": "46f828400eed4803bdfc53bc413a45a6", + "m_Id": 0, + "m_DisplayName": "Position", + "m_SlotType": 0, + "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": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "4b4015a4164144d7aacb7fd10d46770f", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -304.0, + "y": 241.0, + "width": 208.0, + "height": 435.0 + } + }, + "m_Slots": [ + { + "m_Id": "d42b12d6adc7463da9bd25e61d1323ce" + }, + { + "m_Id": "6d17b051780e464299fda84ff6456631" + }, + { + "m_Id": "ba912fc08d834cfa82ec8cc05b145aa4" + }, + { + "m_Id": "9a309dc4d7054691affe5a416dfbcec1" + }, + { + "m_Id": "402e4b9015d64ac1a636a8f953924c41" + }, + { + "m_Id": "8a7625f64e1648d7b3ccccf35cf5d1fb" + }, + { + "m_Id": "3338abaacaab44dc8a5a665345615379" + }, + { + "m_Id": "fccc92d348e94401b8b537cea68d385d" + } + ], + "synonyms": [ + "tex2d" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.Texture2DShaderProperty", + "m_ObjectId": "4feb15a3b4b84a47819f4c5ec3e71395", + "m_Guid": { + "m_GuidSerialized": "b69033c1-cac6-419e-9661-fa56cd9d5744" + }, + "m_Name": "MainTex", + "m_DefaultRefNameVersion": 1, + "m_RefNameGeneratedByDisplayName": "MainTex", + "m_DefaultReferenceName": "_MainTex", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "m_SerializedTexture": "", + "m_Guid": "" + }, + "isMainTexture": false, + "useTilingAndOffset": false, + "useTexelSize": true, + "m_Modifiable": true, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "6d17b051780e464299fda84ff6456631", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "89b9521b5c6d479a945fd6354ed91d99", + "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": "13ba63987dc3432d93907976ebb0604c" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.BaseColor" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "8a7625f64e1648d7b3ccccf35cf5d1fb", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "9a309dc4d7054691affe5a416dfbcec1", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalSpriteUnlitSubTarget", + "m_ObjectId": "a248db2d294b4517b499c3e201f3cc10" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.TangentMaterialSlot", + "m_ObjectId": "a94fd9d382854c5b9d51a612e73dcf9a", + "m_Id": 0, + "m_DisplayName": "Tangent", + "m_SlotType": 0, + "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": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "aa5378b33e0f4c3fbaddea8a56cf1abd", + "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": "30b63c8f540343b585e6473d3d0d98eb" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Alpha" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "b21e55d0094f49b1801195231ca066fd", + "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": "148a977f0f74470186002631eab29f23" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Normal" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "ba912fc08d834cfa82ec8cc05b145aa4", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "d42b12d6adc7463da9bd25e61d1323ce", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "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.BlockNode", + "m_ObjectId": "d76874d1b73d41ac884d9bbcd7a2f933", + "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": "a94fd9d382854c5b9d51a612e73dcf9a" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Tangent" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "e5bf6f84ada84277a64b01061aa89c06", + "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": "46f828400eed4803bdfc53bc413a45a6" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Position" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.CategoryData", + "m_ObjectId": "e8cefefb20b44dd1a646e5cd2e99daa4", + "m_Name": "", + "m_ChildObjectList": [ + { + "m_Id": "4feb15a3b4b84a47819f4c5ec3e71395" + } + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "fccc92d348e94401b8b537cea68d385d", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteUnit_Instance_ShaderGraph.shadergraph.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteUnit_Instance_ShaderGraph.shadergraph.meta new file mode 100644 index 00000000000..1d8bda13f89 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteUnit_Instance_ShaderGraph.shadergraph.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 5c38180be583d024dabcb7eb258218f4 +ScriptedImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 2 + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 11500000, guid: 625f186215c104763be7675aa2d941aa, type: 3} diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteUnlit_Instance.mat b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteUnlit_Instance.mat new file mode 100644 index 00000000000..8011f40b340 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteUnlit_Instance.mat @@ -0,0 +1,51 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: SpriteUnlit_Instance + m_Shader: {fileID: 4800000, guid: 13c02b14c4d048fa9653293d54f6e0e1, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 1 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _AlphaTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MaskTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _NormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - PixelSnap: 0 + - _EnableExternalAlpha: 0 + - _ZWrite: 0 + m_Colors: + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _RendererColor: {r: 1, g: 1, b: 1, a: 1} + m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteUnlit_Instance.mat.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteUnlit_Instance.mat.meta new file mode 100644 index 00000000000..1ca7c7d1226 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/083_GPU_Instancing/SpriteUnlit_Instance.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 64b37b5f46246d84b9b80e34f8f9aa14 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/ProjectSettings/EditorBuildSettings.asset b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/ProjectSettings/EditorBuildSettings.asset index 7db334fc0f2..d530e81caba 100644 --- a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/ProjectSettings/EditorBuildSettings.asset +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/ProjectSettings/EditorBuildSettings.asset @@ -233,4 +233,7 @@ EditorBuildSettings: - enabled: 1 path: Assets/Scenes/078_TilemapRenderer_ShaderGraph_LightMapTexture.unity guid: 0fa034d17c4f8814398528f265d2c60f + - enabled: 1 + path: Assets/Scenes/083_GPU_Instancing.unity + guid: 67d46509b9dfceb43bf64d2d1ae052f5 m_configObjects: {} From e4627cd0eacdd81cd32205b34afcc54f236df1a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Th=C3=A9o=20Penavaire?= Date: Tue, 18 Feb 2025 15:37:32 +0000 Subject: [PATCH 12/41] [22.3] Bump SRP packages to 14.0.12 --- .../CHANGELOG.md | 11 ++++ .../package.json | 2 +- .../CHANGELOG.md | 7 +++ .../package.json | 4 +- .../CHANGELOG.md | 51 +++++++++++++++++++ .../package.json | 10 ++-- .../CHANGELOG.md | 43 ++++++++++++++++ .../ValidationExceptions.json | 6 +-- .../package.json | 6 +-- Packages/com.unity.shadergraph/CHANGELOG.md | 27 ++++++++++ Packages/com.unity.shadergraph/package.json | 4 +- .../com.unity.visualeffectgraph/CHANGELOG.md | 35 +++++++++++++ .../com.unity.visualeffectgraph/package.json | 6 +-- 13 files changed, 193 insertions(+), 19 deletions(-) diff --git a/Packages/com.unity.render-pipelines.core/CHANGELOG.md b/Packages/com.unity.render-pipelines.core/CHANGELOG.md index c1cb0174fad..407e8971400 100644 --- a/Packages/com.unity.render-pipelines.core/CHANGELOG.md +++ b/Packages/com.unity.render-pipelines.core/CHANGELOG.md @@ -10,6 +10,17 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. Version Updated The version number for this package has increased due to a version update of a related graphics package. +## [14.0.11] - 2025-02-13 + +This version is compatible with Unity 2022.3.59f1. + +### Fixed +- Fixed PackFloat2To8 in packing.hlsl. +- Rendering Debugger - Keep the correct selected panel when entering and exiting from playmode. +- Fixed _FOVEATED_RENDERING_NON_UNIFORM_RASTER shader compilation errors. +- Rendering Debugger - Silent crash when selecting a Volume component with public RTHandles. +- Fix truncated vector warning in DownSampleDepth shader + ## [14.0.10] - 2024-04-03 This version is compatible with Unity 2022.3.24f1. diff --git a/Packages/com.unity.render-pipelines.core/package.json b/Packages/com.unity.render-pipelines.core/package.json index a2c3af01d82..82867a8ff2b 100644 --- a/Packages/com.unity.render-pipelines.core/package.json +++ b/Packages/com.unity.render-pipelines.core/package.json @@ -1,7 +1,7 @@ { "name": "com.unity.render-pipelines.core", "description": "SRP Core makes it easier to create or customize a Scriptable Render Pipeline (SRP). SRP Core contains reusable code, including boilerplate code for working with platform-specific graphics APIs, utility functions for common rendering operations, and shader libraries. The code in SRP Core is use by the High Definition Render Pipeline (HDRP) and Universal Render Pipeline (URP). If you are creating a custom SRP from scratch or customizing a prebuilt SRP, using SRP Core will save you time.", - "version": "14.0.11", + "version": "14.0.12", "unity": "2022.3", "displayName": "Core RP Library", "dependencies": { diff --git a/Packages/com.unity.render-pipelines.high-definition-config/CHANGELOG.md b/Packages/com.unity.render-pipelines.high-definition-config/CHANGELOG.md index c7c7d62a242..acce13b3ea3 100644 --- a/Packages/com.unity.render-pipelines.high-definition-config/CHANGELOG.md +++ b/Packages/com.unity.render-pipelines.high-definition-config/CHANGELOG.md @@ -10,6 +10,13 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. Version Updated The version number for this package has increased due to a version update of a related graphics package. +## [14.0.11] - 2025-02-13 + +This version is compatible with Unity 2022.3.59f1. + +Version Updated +The version number for this package has increased due to a version update of a related graphics package. + ## [14.0.10] - 2024-04-03 This version is compatible with Unity 2022.3.24f1. diff --git a/Packages/com.unity.render-pipelines.high-definition-config/package.json b/Packages/com.unity.render-pipelines.high-definition-config/package.json index 193ff3d97c9..20b98942753 100644 --- a/Packages/com.unity.render-pipelines.high-definition-config/package.json +++ b/Packages/com.unity.render-pipelines.high-definition-config/package.json @@ -1,10 +1,10 @@ { "name": "com.unity.render-pipelines.high-definition-config", "description": "Configuration files for the High Definition Render Pipeline.", - "version": "14.0.11", + "version": "14.0.12", "unity": "2022.3", "displayName": "High Definition RP Config", "dependencies": { - "com.unity.render-pipelines.core": "14.0.11" + "com.unity.render-pipelines.core": "14.0.12" } } \ No newline at end of file diff --git a/Packages/com.unity.render-pipelines.high-definition/CHANGELOG.md b/Packages/com.unity.render-pipelines.high-definition/CHANGELOG.md index 1af6ead3c86..5816eeb79cd 100644 --- a/Packages/com.unity.render-pipelines.high-definition/CHANGELOG.md +++ b/Packages/com.unity.render-pipelines.high-definition/CHANGELOG.md @@ -10,6 +10,57 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. Version Updated The version number for this package has increased due to a version update of a related graphics package. +## [14.0.11] - 2025-02-13 + +This version is compatible with Unity 2022.3.59f1. + +### Changed +- Transparent materials now appear opaque when using Mipmap Streaming debug views for increased clarity. +- Create the Global Settings asset in to the current opened folder. +- Create the Global Settings asset in to the current opened folder. + +### Fixed +- Fixed an assert triggered when the decal count goes over the light count. +- Fixed scene modification when exiting play mode with the graphics compositor enabled. +- Added Graphics Compositor Limitation section for VR. +- Fixed underwater applied when water is disabled. +- Fixed cinematic eye shader lighting from directional lights. +- Fixed TAA post sharpen in XR. +- Banding in IES importer. +- Fixed realloc of history buffer when XR is enabled. +- Fixed invalid AABB errors in some other cases. +- Added framesettings to render volumetric clouds in half res to reduce jittering. +- Regenerate the hlsl include that where out of date. +- Cached shadow : Fix corruption when using a non square atlas and improve blit performance. +- Fixed an issue where the default terrain shader for HDRP was outputting incorrect albedo values to the lightmapper. +- Fixed a NullReferenceException when exiting Play Mode with HDRP + DLSS + XR. +- Fixed a motion blur blending issue. +- Fixed an issue where the Mipmap Streaming debug views would show up incorrectly when certain features were enabled (SRP Batcher, Volumetric Fog, Volumetric Clouds, and,...). +- Fixed an issue where certain Mipmap Streaming debug views (for example: "Mip Count") would not show up correctly on Metal. +- Fixed an issue where the Rendering Debugger "Terrain Texture" drop-down would appear only when enabling a Fullscreen Debug Mode, instead of appearing when enabling a Mipmap Streaming debug view as intended. +- Changed ProbeSettings.cubeResolution field from internal to public. +- Fixed shader warnings from TAA shader on Metal. +- Reduced some artifacts from High-Quality (PCSS) shadows for point and spot lights. +- Fixed issue with EndCameraRendering being called before renderContext submission. +- HDRP: SSGI, Ray traced GI, Path traced GI and No-GI now match when using an IBL. +- Reimporting ShaderGraph assets no longer triggers a UnityVCS/Perfoce local checkout. +- Fixed graphic corruption on some mobile platforms. +- Fixed sun flicker where the sun is close to cloud boundaries. +- Ignore material variants with log message. +- Fixed an issue where UI images using render textures would not render properly with HDR enabled. +- Added clamp to HairAngleWorld to prevent nan from FastASin. +- Fixed an issue where cascade shadows and distance shadowmask were not blended properly. +- Fixed invalid global state pushed when using override camera rendering in the CustomPassUtils functions. +- Fixed wrong SSR when using a shader graph with a clear coat value of 0. +- Fixed HDRP ambient scene lighting leaking into the material preview window. +- Fixed black line artifacts on top of the screen with DRS and downsampled SSAO. +- Fixed HDRP sky rendering when Camera Relative Rendering is disabled. +- Fixed artifacts when blending cascade shadows and distance shadowmask. +- Added a condition to the Receiver Motion Rejection function(feature) to check that the pixel has actually moved. +- Fixed an issue where the padding in the Lighting window was different between tabs. +- Fixed refraction sampling with DRS. +- Fixed color pyramid sampling when distortion is enabled after the distortion pass. + ## [14.0.10] - 2024-04-03 This version is compatible with Unity 2022.3.24f1. diff --git a/Packages/com.unity.render-pipelines.high-definition/package.json b/Packages/com.unity.render-pipelines.high-definition/package.json index 68811f4cc95..02653c1a27d 100644 --- a/Packages/com.unity.render-pipelines.high-definition/package.json +++ b/Packages/com.unity.render-pipelines.high-definition/package.json @@ -1,7 +1,7 @@ { "name": "com.unity.render-pipelines.high-definition", "description": "The High Definition Render Pipeline (HDRP) is a high-fidelity Scriptable Render Pipeline built by Unity to target modern (Compute Shader compatible) platforms. HDRP utilizes Physically-Based Lighting techniques, linear lighting, HDR lighting, and a configurable hybrid Tile/Cluster deferred/Forward lighting architecture and gives you the tools you need to create games, technical demos, animations, and more to a high graphical standard.", - "version": "14.0.11", + "version": "14.0.12", "unity": "2022.3", "displayName": "High Definition RP", "dependencies": { @@ -11,10 +11,10 @@ "com.unity.modules.animation": "1.0.0", "com.unity.modules.imageconversion": "1.0.0", "com.unity.modules.terrain": "1.0.0", - "com.unity.render-pipelines.core": "14.0.11", - "com.unity.shadergraph": "14.0.11", - "com.unity.visualeffectgraph": "14.0.11", - "com.unity.render-pipelines.high-definition-config": "14.0.11" + "com.unity.render-pipelines.core": "14.0.12", + "com.unity.shadergraph": "14.0.12", + "com.unity.visualeffectgraph": "14.0.12", + "com.unity.render-pipelines.high-definition-config": "14.0.12" }, "keywords": [ "graphics", diff --git a/Packages/com.unity.render-pipelines.universal/CHANGELOG.md b/Packages/com.unity.render-pipelines.universal/CHANGELOG.md index 74eeb5a1ef9..1eb4e2fc4c1 100644 --- a/Packages/com.unity.render-pipelines.universal/CHANGELOG.md +++ b/Packages/com.unity.render-pipelines.universal/CHANGELOG.md @@ -10,6 +10,49 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. Version Updated The version number for this package has increased due to a version update of a related graphics package. +## [14.0.11] - 2025-02-13 + +This version is compatible with Unity 2022.3.59f1. + +### Added +- RenderPipelineManager callbacks are raised from UniversalRenderPipeline.SingleCameraRequest. + +### Changed +- Updated URP documentation to explicitly mention that calling Submit() on a command buffer provided by URP from an user pass is not valid. +- Create the Global Settings asset in to the current opened folder. +- Create the Global Settings asset in to the current opened folder. + +### Fixed +- Fixed an issue where screen space decals wouldn't respect light cookies. +- Fixed an issue where using the "Accurate G-buffer Normals" feature for deferred rendering on mobile platforms would cause a large amount of artifacts. +- Pass name when the pass is "LightMode" = "Universal2D". +- Fixed an issue where the built in error shader didn't work correctly with depth priming. +- Scriptable TAA settings. +- Runtime intensity of non real-time reflection probes are now immediately reflected in scene view. +- Removed duplicated code in UniversalRenderer.cs. +- Fixed broken setting shadow rendering layer is not changing shadow when using shadowRenderingLayers in the script. +- Disabled faulty NRP for Editor-only FinalCopyDepth pass in URP 3D. +- Fixed incorrect scaling in copy depth pass when dynamic resolution is enabled. +- Fixed an issue with enabling instancing at runtime for a Decal material. +- Disabled fallback behavior on FSR EASU shader to prevent build errors on machines with old GPUs. +- Fixed an issue where glClientWaitSync: Expected application to have kicked everything until job: 96089 (possibly by calling glFlush)" are thrown in the Android Player on some devices with PowerVR Rogue GE8320 GPU. +- Fixed camera offset in the UI editor for the RenderObject RenderFeature. +- Fixed an issue where Shader Prefiltering data wasn't updated properly for Asset Bundles. +- Fixed shadow-map sampling artifacts present when using the Unlit DrawMode in the SceneView. +- Fixed scene-view wireframe rendering when using depth-priming. +- Fixed an issue where reflection probes would not render correctly on some platforms in some cases. +- Overlay Camera Clear Depth ignored on some Android devices when using Vulkan Graphics API. +- Stop spamming about c-buffer layout mispatch in GPU-instancing-enabled speed tree materials when enabling Rendering Layers. +- Fixed an issue where WorldToCamera matrix wasn't set before rendering shadows. +- Fixed a redundant empty line in a tooltip for Cast Shadows toggle in the URP Asset for Additional lights. +- Fixed an issue where Camera view is not rendered on PowerVR Rogue GE8320 GPU'S if Shadows are enabled in URP Asset and Camera stack contains Overlay Camera's. +- Fixed the CameraDepthAttachment turning black for DX11. +- Fixed sorting the Reflection Probe by resolution. +- Added SS Shadow coord transform to TransformWorldToShadowCoord. +- Fixed an issue where variants were being stripped out in Scriptable Stripping when "Strip Unused Variants" was disabled. +- Reduced banding on FSR upscaled render target by changing render target formats. +- Fixed light cookie texture memory leak when entering Playmode. + ## [14.0.10] - 2024-04-03 This version is compatible with Unity 2022.3.24f1. diff --git a/Packages/com.unity.render-pipelines.universal/ValidationExceptions.json b/Packages/com.unity.render-pipelines.universal/ValidationExceptions.json index cf2e8ce0b01..3f0caa5a844 100644 --- a/Packages/com.unity.render-pipelines.universal/ValidationExceptions.json +++ b/Packages/com.unity.render-pipelines.universal/ValidationExceptions.json @@ -2,12 +2,12 @@ "Exceptions": [ { "ValidationTest": "Package Lifecycle Validation", - "ExceptionError": "Package com.unity.render-pipelines.universal@14.0.11 depends on package com.unity.burst@1.5.0 which is in an invalid track for release purposes. Release versions can only depend on Release versions.", - "PackageVersion": "14.0.11" + "ExceptionError": "Package com.unity.render-pipelines.universal@14.0.12 depends on package com.unity.burst@1.5.0 which is in an invalid track for release purposes. Release versions can only depend on Release versions.", + "PackageVersion": "14.0.12" }, { "ValidationTest": "API Updater Configuration Validation", - "PackageVersion": "14.0.11" + "PackageVersion": "14.0.12" } ] } \ No newline at end of file diff --git a/Packages/com.unity.render-pipelines.universal/package.json b/Packages/com.unity.render-pipelines.universal/package.json index f16fdb12935..755fba711dd 100644 --- a/Packages/com.unity.render-pipelines.universal/package.json +++ b/Packages/com.unity.render-pipelines.universal/package.json @@ -1,14 +1,14 @@ { "name": "com.unity.render-pipelines.universal", "description": "The Universal Render Pipeline (URP) is a prebuilt Scriptable Render Pipeline, made by Unity. URP provides artist-friendly workflows that let you quickly and easily create optimized graphics across a range of platforms, from mobile to high-end consoles and PCs.", - "version": "14.0.11", + "version": "14.0.12", "unity": "2022.3", "displayName": "Universal RP", "dependencies": { "com.unity.mathematics": "1.2.1", "com.unity.burst": "1.8.9", - "com.unity.render-pipelines.core": "14.0.11", - "com.unity.shadergraph": "14.0.11", + "com.unity.render-pipelines.core": "14.0.12", + "com.unity.shadergraph": "14.0.12", "com.unity.render-pipelines.universal-config": "14.0.9" }, "keywords": [ diff --git a/Packages/com.unity.shadergraph/CHANGELOG.md b/Packages/com.unity.shadergraph/CHANGELOG.md index 54c4491d46d..7299c568820 100644 --- a/Packages/com.unity.shadergraph/CHANGELOG.md +++ b/Packages/com.unity.shadergraph/CHANGELOG.md @@ -10,6 +10,33 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. Version Updated The version number for this package has increased due to a version update of a related graphics package. +## [14.0.11] - 2025-02-13 + +This version is compatible with Unity 2022.3.59f1. + +### Fixed +- Added issues where shaders generated for iOS or Android may not compile correctly due to precision. +- Fixed an issue where the Baked GI Node was not displaying correctly after initially adding it to a graph. +- Added support for perceptual color mode for gradients in shader graph. +- Fixed issues with the Feature Examples sample and Production Ready Shaders sample. +- Fixed an issue where cross pipeline shader graphs would run into NRE. +- Disallowed shader variant related settings to be set to negative values. +- Added a null reference exception when shader variant project settings were changed under certain circumstances. +- Users can no longer select 'Delete' for context blocks. +- Fixed a bug where the Custom Function node's "Body" field would expand off-screen instead of scrolling. +- Fixed an issue in ShaderGraph where undoing changes to a property after modifying its value in the Graph Inspector would cause the property to become deselected. +- Fixed 'Objects are trying to be loaded during a domain backup' errors due to invalid serialization of some shader graphs. +- Fixed a bug that Normal From Height node in a shader graph might return an invalid value when using 16-bit half precision. +- The name displayed in the Graph inspector when a BlockNode is selected has changed. +- Added issue where precision mismatch could result in an asset failing to import. +- Fixed a bug that a shader graph is reverted to its last saved state when entering Play Mode without saving changes. +- Fixed an issue where the Main Light Direction node always returned 0 on the built-in render pipeline. +- Fixed Shader Graph undeclared identifier error around foveated rendering area. +- Fixed so that pasting an empty group positions it based on the cursor's location. +- Fixed Shader warnings in URP ShaderGraph when using the Normal From Texture node. +- Fixed/improved identifier collision detection on properties. +- Fix NullReferenceException thrown when updating a legacy node for second time through undo. + ## [14.0.10] - 2024-04-03 This version is compatible with Unity 2022.3.24f1. diff --git a/Packages/com.unity.shadergraph/package.json b/Packages/com.unity.shadergraph/package.json index 53d5e5ba51b..6d0b9a6225a 100644 --- a/Packages/com.unity.shadergraph/package.json +++ b/Packages/com.unity.shadergraph/package.json @@ -1,11 +1,11 @@ { "name": "com.unity.shadergraph", "description": "The Shader Graph package adds a visual Shader editing tool to Unity. You can use this tool to create Shaders in a visual way instead of writing code. Specific render pipelines can implement specific graph features. Currently, both the High Definition Rendering Pipeline and the Universal Rendering Pipeline support Shader Graph.", - "version": "14.0.11", + "version": "14.0.12", "unity": "2022.3", "displayName": "Shader Graph", "dependencies": { - "com.unity.render-pipelines.core": "14.0.11", + "com.unity.render-pipelines.core": "14.0.12", "com.unity.searcher": "4.9.2" }, "samples": [ diff --git a/Packages/com.unity.visualeffectgraph/CHANGELOG.md b/Packages/com.unity.visualeffectgraph/CHANGELOG.md index f3c0476e351..eaf6d0263e2 100644 --- a/Packages/com.unity.visualeffectgraph/CHANGELOG.md +++ b/Packages/com.unity.visualeffectgraph/CHANGELOG.md @@ -10,6 +10,41 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. Version Updated The version number for this package has increased due to a version update of a related graphics package. +## [14.0.11] - 2025-02-13 + +This version is compatible with Unity 2022.3.59f1. + +### Fixed +- When trying to connect incompatible types, the error popup was left over if the action was canceled with Escape key. +- Fixed activation slot was hidden when a block was collapsed. +- Fixed missing outputs in Transform operator (and many other nodes with sub-properties). +- Fixed NullReferenceException when enabling Decal Layers in HDRP. +- Leak while spamming ReInit. +- Fixed an unexpected asset database error while importing VFX and ShaderGraph dependency. +- Fixed VFX graph renders the wrong mesh when using different exposed meshes with instancing enabled. +- Wrong mesh rendered with instancing, when using multi mesh output and exposed submesh mask. +- Flickering with VFX using instancing and overriding an exposed texture with an empty texture. +- Improved how the sleep state is updated for particle systems receiving GPU events. +- Force culling when VFX rendering is disabled. +- Indeterministic skin mesh sampling when previous and current were fetch within the same VFX. +- Fixed SpawnIndex attribute when using instancing. +- Blackboard could be out of the screen when the VFX Graph window was too small. +- Use unknown particle count when count readback has never been received. +- Fixed Screen Space Size block in Shader Graph outputs. +- Fixed potential error message in the console when starting Unity Editor. +- Read unexposed shader global properties when using a Shader Graph output. +- Prevent crash during the update of a Visual Effect when deleting a used Texture. +- Fixed ParticleIndexInStrip, StripIndex and ParticleCountinStrip attributes when used in quad or mesh outputs (previously all returning 0). +- Fixed rendering unwanted particles when rendering particle strip systems as particles (previously rendering entire capacity). +- Fixed strips with immortal particles disappearing with instancing on. +- Particle outputs connected to particle strip systems don't render last particle. +- Usage of FogNode is always returning 1.0 in URP. +- Fixed an exception that could prevent opening a VFX in one specific case. +- Fixed sprites in Texture Sheet Animation module in HDRP. +- Fix NullReferenceExpection happening with disconnected output contexts. +- Prevent VFXRenderer direct material modification that could lead to crashes. +- Fix occasional crashes when modifying exposed properties when in paused play mode + ## [14.0.10] - 2024-04-03 This version is compatible with Unity 2022.3.24f1. diff --git a/Packages/com.unity.visualeffectgraph/package.json b/Packages/com.unity.visualeffectgraph/package.json index bf2657481d0..8f1c4086490 100644 --- a/Packages/com.unity.visualeffectgraph/package.json +++ b/Packages/com.unity.visualeffectgraph/package.json @@ -1,7 +1,7 @@ { "name": "com.unity.visualeffectgraph", "displayName": "Visual Effect Graph", - "version": "14.0.11", + "version": "14.0.12", "unity": "2022.3", "description": "The Visual Effect Graph is a node based visual effect editor. It allows you to author next generation visual effects that Unity simulates directly on the GPU. The Visual Effect Graph is production-ready for the High Definition Render Pipeline and runs on all platforms supported by it. Full support for the Universal Render Pipeline and compatible mobile devices is still in development.", "keywords": [ @@ -12,8 +12,8 @@ "particles" ], "dependencies": { - "com.unity.shadergraph": "14.0.11", - "com.unity.render-pipelines.core": "14.0.11" + "com.unity.shadergraph": "14.0.12", + "com.unity.render-pipelines.core": "14.0.12" }, "samples": [ { From e007ff8d0a083b905fcbf710653d41a29ce7d1bc Mon Sep 17 00:00:00 2001 From: Fatimah Mohd Fauzi Date: Mon, 24 Feb 2025 06:33:58 +0000 Subject: [PATCH 13/41] Minor feedback fixes in Graphics package docs --- .../Documentation~/Shadows-in-URP.md | 2 +- .../cameras/apply-different-post-proc-to-cameras.md | 2 +- .../Documentation~/GettingStarted.md | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Packages/com.unity.render-pipelines.universal/Documentation~/Shadows-in-URP.md b/Packages/com.unity.render-pipelines.universal/Documentation~/Shadows-in-URP.md index 512748b60e4..e801cb129d3 100644 --- a/Packages/com.unity.render-pipelines.universal/Documentation~/Shadows-in-URP.md +++ b/Packages/com.unity.render-pipelines.universal/Documentation~/Shadows-in-URP.md @@ -20,7 +20,7 @@ Universal RP will try to use the best resolution according to the number of shad ## Shadow atlases -Universal RP renders all real-time shadows for a frame using one common shadow map atlas for all punctual light shadows (i.e shadows for Spot Lights and Point Lights), and an other shadow map atlas for Directional Light shadows. +Universal RP renders all real-time shadows for a frame using one common shadow map atlas for all punctual light shadows (i.e shadows for Spot Lights and Point Lights), and another shadow map atlas for Directional Light shadows. Set the size of these atlases in your Unity Project’s [Universal Render Pipeline Asset](universalrp-asset.md). The atlas size determines the maximum resolution of shadows in your Scene. diff --git a/Packages/com.unity.render-pipelines.universal/Documentation~/cameras/apply-different-post-proc-to-cameras.md b/Packages/com.unity.render-pipelines.universal/Documentation~/cameras/apply-different-post-proc-to-cameras.md index 73de81df8db..7831e223eb9 100644 --- a/Packages/com.unity.render-pipelines.universal/Documentation~/cameras/apply-different-post-proc-to-cameras.md +++ b/Packages/com.unity.render-pipelines.universal/Documentation~/cameras/apply-different-post-proc-to-cameras.md @@ -24,7 +24,7 @@ With the scene set up, the following steps show how to create and apply a post-p 3. Select the **Layer** dropdown and choose one of the layers created when you set up the scene. 4. Select the camera you want to apply this effect to. 5. In the Inspector window, go to **Environment** > **Volume Mask** and select the same layer that you chose for the GameObject. -6. Repeat stpes 1-5 for each GameObject and Camera pair that your scene requires. +6. Repeat steps 1-5 for each GameObject and Camera pair that your scene requires. > [!NOTE] > Some effects apply to all cameras in a scene by default. As a result of this, you might need to add the same effect to each volume. This overrides the effects from other volumes on individual cameras with the new values that you set. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/GettingStarted.md b/Packages/com.unity.visualeffectgraph/Documentation~/GettingStarted.md index 862588a0c23..65b6cb61449 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/GettingStarted.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/GettingStarted.md @@ -48,7 +48,7 @@ To do so, you can: When you’ve added the Visual Effect Graph Asset to you Hierarchy, Unity attaches the Asset to a [Visual Effect Component](VisualEffectComponent.md), which references the Asset. ## Editing a Visual Effect Graph -To edit Visual Effect Graph Assets in the [Visual Effect Graph window](VisualEffectGraphWindow.md) : +To edit Visual Effect Graph Assets in the [Visual Effect Graph window](VisualEffectGraphWindow.md): * Open the Visual Effect Graph window (menu: __Window___ > __Visual Effects__) with an empty graph. This prompts you to open a Visual Effect Graph Asset. * Select an existing Visual Effect Graph Asset, and click the __Edit__ button in the Inspector. This opens the Visual Effect Graph window with the graph contained in this Asset. From 9e8d4ac95046978f2641dca16dd591281eb5076a Mon Sep 17 00:00:00 2001 From: Mark Green Date: Mon, 24 Feb 2025 06:34:01 +0000 Subject: [PATCH 14/41] [Port] [2022.3] Graphics docs feedback fixes February 2025 pt2 --- .../Documentation~/Ray-Tracing-Getting-Started.md | 1 + .../Documentation~/Ray-Tracing-Path-Tracing.md | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Ray-Tracing-Getting-Started.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Ray-Tracing-Getting-Started.md index 932b75171e5..a2f7a204286 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Ray-Tracing-Getting-Started.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Ray-Tracing-Getting-Started.md @@ -283,6 +283,7 @@ HDRP ray tracing in Unity has the following limitations: - Ray tracing isn't supported when rendering [Reflection Probes](Reflection-Probe.md). - HDRP doesn't support [orthographic projection](HDRP-Camera.md). If you enable orthographic projection mode, you might experience rendering problems for Transparent Materials, volumetrics and planar reflections. - Ray Traced and Screen Space effects won't appear recursively in [Ray Traced Reflections](Ray-Traced-Reflections.md), [Ray Traced Global Illumination](Ray-Traced-Global-Illumination.md) or [Recursive Ray Tracing](Ray-Tracing-Recursive-Rendering.md). This means, for example, you won't be able to see [Screen Space Global Illumination](Override-Screen-Space-GI.md) in [ray-traced reflection](Ray-Traced-Reflections.md). +- Doesn't support water. ### Unsupported shader graph nodes for ray tracing diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Ray-Tracing-Path-Tracing.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Ray-Tracing-Path-Tracing.md index 7d369ec1d46..f3eabc7c323 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Ray-Tracing-Path-Tracing.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Ray-Tracing-Path-Tracing.md @@ -202,7 +202,8 @@ HDRP path tracing in Unity 2020.2 has the following limitations: - MSAA. - [Graphics.DrawMesh](https://docs.unity3d.com/ScriptReference/Graphics.DrawMesh.html) or [Graphics.RenderMesh](https://docs.unity3d.com/2022.1/Documentation/ScriptReference/Graphics.RenderMesh.html), because rasterization and ray tracing are different ways of generating an image. - [Streaming Virtual Texturing](https://docs.unity3d.com/Documentation/Manual/svt-streaming-virtual-texturing.html). - + - Vertex animation, for example wind deformation of vegetation. + ### Unsupported shader graph nodes for path tracing When building your custom shaders using shader graph, some nodes are incompatible with ray/path tracing. You need either to avoid using them or provide an alternative behavior using the [ray tracing shader node](SGNode-Raytracing-Quality). Here is the list of the incompatible nodes: From d29c8af1a0c6b085d57449ac734adf9bb677a2a3 Mon Sep 17 00:00:00 2001 From: Kenny Tan Date: Mon, 24 Feb 2025 16:29:35 +0000 Subject: [PATCH 15/41] [2022.3][UUM-90792] Fix camera sorting layer not breaking batch for URP 2D --- .../LightBatchingDebugger.cs | 16 +++++--- .../Runtime/2D/InternalBridge.meta | 8 ++++ .../Runtime/2D/InternalBridge/AssemblyInfo.cs | 3 ++ .../2D/InternalBridge/AssemblyInfo.cs.meta | 11 +++++ .../2D/InternalBridge/InternalEngineBridge.cs | 17 ++++++++ .../InternalEngineBridge.cs.meta | 11 +++++ ...nderPipelines.Universal.2D.Internal.asmdef | 7 ++++ ...ipelines.Universal.2D.Internal.asmdef.meta | 7 ++++ .../Runtime/2D/Light2DManager.cs | 23 ++++++++++- .../Runtime/2D/Passes/Render2DLightingPass.cs | 40 ++++++++----------- .../Runtime/2D/Passes/Utility/LayerUtility.cs | 39 +++++++++++++++--- .../Runtime/2D/Renderer2D.cs | 3 ++ ...y.RenderPipelines.Universal.Runtime.asmdef | 3 +- 13 files changed, 151 insertions(+), 37 deletions(-) create mode 100644 Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge.meta create mode 100644 Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge/AssemblyInfo.cs create mode 100644 Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge/AssemblyInfo.cs.meta create mode 100644 Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge/InternalEngineBridge.cs create mode 100644 Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge/InternalEngineBridge.cs.meta create mode 100644 Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge/Unity.RenderPipelines.Universal.2D.Internal.asmdef create mode 100644 Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge/Unity.RenderPipelines.Universal.2D.Internal.asmdef.meta diff --git a/Packages/com.unity.render-pipelines.universal/Editor/2D/LightBatchingDebugger/LightBatchingDebugger.cs b/Packages/com.unity.render-pipelines.universal/Editor/2D/LightBatchingDebugger/LightBatchingDebugger.cs index c0111c57645..67b44df185c 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/2D/LightBatchingDebugger/LightBatchingDebugger.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/2D/LightBatchingDebugger/LightBatchingDebugger.cs @@ -48,16 +48,20 @@ public static void ShowExample() private Vector3 cachedCamPos; ILight2DCullResult lightCullResult + { + get + { + return renderer2DData?.lightCullResult; + } + } + + Renderer2DData renderer2DData { get { // Game view main camera var renderer = Camera.main?.GetUniversalAdditionalCameraData().scriptableRenderer as Renderer2D; - var data = renderer?.GetRenderer2DData(); - if (data != null && data.lightCullResult.IsGameView()) - return data?.lightCullResult; - - return null; + return renderer?.GetRenderer2DData(); } } @@ -69,7 +73,7 @@ private bool PopulateData() batchList.Clear(); var layers = Light2DManager.GetCachedSortingLayer(); - var batches = LayerUtility.CalculateBatches(lightCullResult, out var batchCount); + var batches = LayerUtility.CalculateBatches(renderer2DData, out var batchCount); for (var i = 0; i < batchCount; i++) { diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge.meta b/Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge.meta new file mode 100644 index 00000000000..843816c2664 --- /dev/null +++ b/Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 609e524df3e15014fb5a6a6576d64b3a +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge/AssemblyInfo.cs b/Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge/AssemblyInfo.cs new file mode 100644 index 00000000000..db473281a83 --- /dev/null +++ b/Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge/AssemblyInfo.cs @@ -0,0 +1,3 @@ +using System.Runtime.CompilerServices; + +[assembly: InternalsVisibleTo("Unity.RenderPipelines.Universal.Runtime")] diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge/AssemblyInfo.cs.meta b/Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge/AssemblyInfo.cs.meta new file mode 100644 index 00000000000..4c548ec0201 --- /dev/null +++ b/Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge/AssemblyInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8cee5d271c90d444b9db4f9590a92c35 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge/InternalEngineBridge.cs b/Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge/InternalEngineBridge.cs new file mode 100644 index 00000000000..0283d7e2952 --- /dev/null +++ b/Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge/InternalEngineBridge.cs @@ -0,0 +1,17 @@ +using System; + +namespace UnityEngine.Rendering.Universal +{ + internal static class InternalEngineBridge + { + internal static void AddOnLayerchangedCallback(Action callback) + { + SortingLayer.onLayerChanged += callback; + } + + internal static void RemoveOnLayerchangedCallback(Action callback) + { + SortingLayer.onLayerChanged -= callback; + } + } +} diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge/InternalEngineBridge.cs.meta b/Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge/InternalEngineBridge.cs.meta new file mode 100644 index 00000000000..98a7e0cabde --- /dev/null +++ b/Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge/InternalEngineBridge.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e04c99c6b908b49428428bfedd4110b6 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge/Unity.RenderPipelines.Universal.2D.Internal.asmdef b/Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge/Unity.RenderPipelines.Universal.2D.Internal.asmdef new file mode 100644 index 00000000000..da00580a754 --- /dev/null +++ b/Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge/Unity.RenderPipelines.Universal.2D.Internal.asmdef @@ -0,0 +1,7 @@ +{ + "name": "Unity.RenderPipelines.Universal.2D.Internal", + "references": [], + "optionalUnityReferences": [], + "includePlatforms": [], + "excludePlatforms": [] +} diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge/Unity.RenderPipelines.Universal.2D.Internal.asmdef.meta b/Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge/Unity.RenderPipelines.Universal.2D.Internal.asmdef.meta new file mode 100644 index 00000000000..6567a0ff4a1 --- /dev/null +++ b/Packages/com.unity.render-pipelines.universal/Runtime/2D/InternalBridge/Unity.RenderPipelines.Universal.2D.Internal.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: e870d46803eab3349b48383a7e1b877d +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/2D/Light2DManager.cs b/Packages/com.unity.render-pipelines.universal/Runtime/2D/Light2DManager.cs index 87e525cea2a..bcc251c8386 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/2D/Light2DManager.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/2D/Light2DManager.cs @@ -1,5 +1,4 @@ using System.Collections.Generic; -using System.Linq; namespace UnityEngine.Rendering.Universal { @@ -9,6 +8,20 @@ internal static class Light2DManager public static List lights { get; } = new List(); + internal static void Initialize() + { +#if UNITY_EDITOR + InternalEngineBridge.AddOnLayerchangedCallback(OnSortingLayerChanged); +#endif + } + + internal static void Dispose() + { +#if UNITY_EDITOR + InternalEngineBridge.RemoveOnLayerchangedCallback(OnSortingLayerChanged); +#endif + } + // Called during OnEnable public static void RegisterLight(Light2D light) { @@ -108,5 +121,13 @@ public static SortingLayer[] GetCachedSortingLayer() return s_SortingLayers; } + +#if UNITY_EDITOR + internal static void OnSortingLayerChanged() + { + // Update sorting layers that were added or removed or changed order + s_SortingLayers = SortingLayer.layers; + } +#endif } } diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/2D/Passes/Render2DLightingPass.cs b/Packages/com.unity.render-pipelines.universal/Runtime/2D/Passes/Render2DLightingPass.cs index 0a00ee9e3e2..6805f56456d 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/2D/Passes/Render2DLightingPass.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/2D/Passes/Render2DLightingPass.cs @@ -43,7 +43,7 @@ public Render2DLightingPass(Renderer2DData rendererData, Material blitMaterial, m_BlitMaterial = blitMaterial; m_SamplingMaterial = samplingMaterial; - m_CameraSortingLayerBoundsIndex = GetCameraSortingLayerBoundsIndex(); + m_CameraSortingLayerBoundsIndex = GetCameraSortingLayerBoundsIndex(m_Renderer2DData); } internal void Setup(bool useDepth) @@ -99,12 +99,12 @@ private void CopyCameraSortingLayerRenderTexture(ScriptableRenderContext context cmd.Clear(); } - private short GetCameraSortingLayerBoundsIndex() + internal static short GetCameraSortingLayerBoundsIndex(Renderer2DData rendererData) { SortingLayer[] sortingLayers = Light2DManager.GetCachedSortingLayer(); for (short i = 0; i < sortingLayers.Length; i++) { - if (sortingLayers[i].id == m_Renderer2DData.cameraSortingLayerTextureBound) + if (sortingLayers[i].id == rendererData.cameraSortingLayerTextureBound) return (short)sortingLayers[i].value; } @@ -138,7 +138,7 @@ private void DetermineWhenToResolve(int startIndex, int batchesDrawn, int batchC if (m_Renderer2DData.useCameraSortingLayerTexture) { - var cameraSortingLayerBoundsIndex = GetCameraSortingLayerBoundsIndex(); + var cameraSortingLayerBoundsIndex = GetCameraSortingLayerBoundsIndex(m_Renderer2DData); var copyBatch = -1; for (int i = startIndex; i < startIndex + batchesDrawn; i++) { @@ -185,7 +185,6 @@ private int DrawLayerBatches( CommandBuffer cmd, ScriptableRenderContext context, ref RenderingData renderingData, - ref FilteringSettings filterSettings, ref DrawingSettings normalsDrawSettings, ref DrawingSettings drawSettings, ref RenderTextureDescriptor desc) @@ -222,7 +221,7 @@ private int DrawLayerBatches( if (layerBatch.useNormals) { - filterSettings.sortingLayerRange = layerBatch.layerRange; + LayerUtility.GetFilterSettings(m_Renderer2DData, ref layerBatch, out var filterSettings); var depthTarget = m_NeedsDepth ? depthAttachmentHandle.nameID : BuiltinRenderTextureType.None; this.RenderNormals(context, renderingData, normalsDrawSettings, filterSettings, depthTarget, normalsFirstClear); normalsFirstClear = false; @@ -293,30 +292,25 @@ private int DrawLayerBatches( context.ExecuteCommandBuffer(cmd); cmd.Clear(); - short cameraSortingLayerBoundsIndex = GetCameraSortingLayerBoundsIndex(); + short cameraSortingLayerBoundsIndex = GetCameraSortingLayerBoundsIndex(m_Renderer2DData); RenderBufferStoreAction copyStoreAction; if (msaaEnabled) copyStoreAction = resolveDuringBatch == i && resolveIsAfterCopy ? RenderBufferStoreAction.Resolve : RenderBufferStoreAction.StoreAndResolve; else copyStoreAction = RenderBufferStoreAction.Store; - // If our camera sorting layer texture bound is inside our batch we need to break up the DrawRenderers into two batches - if (cameraSortingLayerBoundsIndex >= layerBatch.layerRange.lowerBound && cameraSortingLayerBoundsIndex < layerBatch.layerRange.upperBound && m_Renderer2DData.useCameraSortingLayerTexture) - { - filterSettings.sortingLayerRange = new SortingLayerRange(layerBatch.layerRange.lowerBound, cameraSortingLayerBoundsIndex); - Render(context, cmd, ref renderingData, ref filterSettings, drawSettings); - CopyCameraSortingLayerRenderTexture(context, renderingData, copyStoreAction); - filterSettings.sortingLayerRange = new SortingLayerRange((short)(cameraSortingLayerBoundsIndex + 1), layerBatch.layerRange.upperBound); - Render(context, cmd, ref renderingData, ref filterSettings, drawSettings); - } - else - { - filterSettings.sortingLayerRange = new SortingLayerRange(layerBatch.layerRange.lowerBound, layerBatch.layerRange.upperBound); - Render(context, cmd, ref renderingData, ref filterSettings, drawSettings); - if (cameraSortingLayerBoundsIndex == layerBatch.layerRange.upperBound && m_Renderer2DData.useCameraSortingLayerTexture) + LayerUtility.GetFilterSettings(m_Renderer2DData, ref layerBatch, out var filterSettings); + + Render(context, cmd, ref renderingData, ref filterSettings, drawSettings); + + if (m_Renderer2DData.useCameraSortingLayerTexture) + { + if (cameraSortingLayerBoundsIndex >= layerBatch.layerRange.lowerBound && cameraSortingLayerBoundsIndex <= layerBatch.layerRange.upperBound) + { CopyCameraSortingLayerRenderTexture(context, renderingData, copyStoreAction); + } } // Draw light volumes @@ -398,11 +392,11 @@ public override void Execute(ScriptableRenderContext context, ref RenderingData var desc = this.GetBlendStyleRenderTextureDesc(renderingData); - var layerBatches = LayerUtility.CalculateBatches(m_Renderer2DData.lightCullResult, out var batchCount); + var layerBatches = LayerUtility.CalculateBatches(m_Renderer2DData, out var batchCount); var batchesDrawn = 0; for (var i = 0; i < batchCount; i += batchesDrawn) - batchesDrawn = DrawLayerBatches(layerBatches, batchCount, i, cmd, context, ref renderingData, ref filterSettings, ref normalsDrawSettings, ref combinedDrawSettings, ref desc); + batchesDrawn = DrawLayerBatches(layerBatches, batchCount, i, cmd, context, ref renderingData, ref normalsDrawSettings, ref combinedDrawSettings, ref desc); this.DisableAllKeywords(cmd); this.ReleaseRenderTextures(cmd); diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/2D/Passes/Utility/LayerUtility.cs b/Packages/com.unity.render-pipelines.universal/Runtime/2D/Passes/Utility/LayerUtility.cs index a6eedae58e4..b0d78df3691 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/2D/Passes/Utility/LayerUtility.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/2D/Passes/Utility/LayerUtility.cs @@ -92,13 +92,31 @@ private static bool CanBatchLightsInLayer(int layerIndex1, int layerIndex2, Sort return true; } - private static int FindUpperBoundInBatch(int startLayerIndex, SortingLayer[] sortingLayers, ILight2DCullResult lightCullResult) + private static bool CanBatchCameraSortingLayer(int startLayerIndex, SortingLayer[] sortingLayers, Renderer2DData rendererData) { + if (rendererData.useCameraSortingLayerTexture) + { + var cameraSortingLayerBoundsIndex = Render2DLightingPass.GetCameraSortingLayerBoundsIndex(rendererData); + return sortingLayers[startLayerIndex].value == cameraSortingLayerBoundsIndex; + } + + return false; + } + + private static int FindUpperBoundInBatch(int startLayerIndex, SortingLayer[] sortingLayers, Renderer2DData rendererData) + { + // break layer if camera sorting layer is active + if (CanBatchCameraSortingLayer(startLayerIndex, sortingLayers, rendererData)) + return startLayerIndex; + // start checking at the next layer for (var i = startLayerIndex + 1; i < sortingLayers.Length; i++) { - if (!CanBatchLightsInLayer(startLayerIndex, i, sortingLayers, lightCullResult)) + if (!CanBatchLightsInLayer(startLayerIndex, i, sortingLayers, rendererData.lightCullResult)) return i - 1; + + if (CanBatchCameraSortingLayer(i, sortingLayers, rendererData)) + return i; } return sortingLayers.Length - 1; } @@ -130,7 +148,7 @@ private static void InitializeBatchInfos(SortingLayer[] cachedSortingLayers) } } - public static LayerBatch[] CalculateBatches(ILight2DCullResult lightCullResult, out int batchCount) + public static LayerBatch[] CalculateBatches(Renderer2DData rendererData, out int batchCount) { var cachedSortingLayers = Light2DManager.GetCachedSortingLayer(); InitializeBatchInfos(cachedSortingLayers); @@ -140,11 +158,11 @@ public static LayerBatch[] CalculateBatches(ILight2DCullResult lightCullResult, for (var i = 0; i < cachedSortingLayers.Length;) { var layerToRender = cachedSortingLayers[i].id; - var lightStats = lightCullResult.GetLightStatsByLayer(layerToRender); + var lightStats = rendererData.lightCullResult.GetLightStatsByLayer(layerToRender); ref var layerBatch = ref s_LayerBatches[batchCount++]; - // Find the highest layer that share the same set of lights as this layer. - var upperLayerInBatch = FindUpperBoundInBatch(i, cachedSortingLayers, lightCullResult); + // Find the highest layer that share the same set of lights and shadows as this layer. + var upperLayerInBatch = FindUpperBoundInBatch(i, cachedSortingLayers, rendererData); // Some renderers override their sorting layer value with short.MinValue or short.MaxValue. // When drawing the first sorting layer, we should include the range from short.MinValue to layerValue. @@ -181,5 +199,14 @@ public static LayerBatch[] CalculateBatches(ILight2DCullResult lightCullResult, return s_LayerBatches; } + + public static void GetFilterSettings(Renderer2DData rendererData, ref LayerBatch layerBatch, out FilteringSettings filterSettings) + { + filterSettings = FilteringSettings.defaultValue; + filterSettings.renderQueueRange = RenderQueueRange.all; + filterSettings.layerMask = -1; + filterSettings.renderingLayerMask = 0xFFFFFFFF; + filterSettings.sortingLayerRange = layerBatch.layerRange; + } } } diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/2D/Renderer2D.cs b/Packages/com.unity.render-pipelines.universal/Runtime/2D/Renderer2D.cs index 8cb1b34b966..ba58afa2bea 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/2D/Renderer2D.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/2D/Renderer2D.cs @@ -112,6 +112,8 @@ public Renderer2D(Renderer2DData data) : base(data) LensFlareCommonSRP.mergeNeeded = 0; LensFlareCommonSRP.maxLensFlareWithOcclusionTemporalSample = 1; LensFlareCommonSRP.Initialize(); + + Light2DManager.Initialize(); } protected override void Dispose(bool disposing) @@ -125,6 +127,7 @@ protected override void Dispose(bool disposing) m_FinalBlitPass?.Dispose(); m_DrawOffscreenUIPass?.Dispose(); m_DrawOverlayUIPass?.Dispose(); + Light2DManager.Dispose(); CoreUtils.Destroy(m_BlitMaterial); CoreUtils.Destroy(m_BlitHDRMaterial); diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Unity.RenderPipelines.Universal.Runtime.asmdef b/Packages/com.unity.render-pipelines.universal/Runtime/Unity.RenderPipelines.Universal.Runtime.asmdef index 02be9e8b79d..acbd3e9293f 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Unity.RenderPipelines.Universal.Runtime.asmdef +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Unity.RenderPipelines.Universal.Runtime.asmdef @@ -7,7 +7,8 @@ "GUID:7dbf32976982c98448af054f2512cb79", "GUID:d8b63aba1907145bea998dd612889d6b", "GUID:2665a8d13d1b3f18800f46e256720795", - "GUID:86bc95e6fdb13ff43aa04316542905ae" + "GUID:86bc95e6fdb13ff43aa04316542905ae", + "GUID:e870d46803eab3349b48383a7e1b877d" ], "includePlatforms": [], "excludePlatforms": [], From 57fc336d306caba8b876c94df55d73f32090d2c8 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Wed, 26 Feb 2025 20:48:34 +0000 Subject: [PATCH 16/41] [Port] [2022.3] DOCG-6644 Clarify URP shadows shader example --- .../Documentation~/use-built-in-shader-methods-shadows.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Packages/com.unity.render-pipelines.universal/Documentation~/use-built-in-shader-methods-shadows.md b/Packages/com.unity.render-pipelines.universal/Documentation~/use-built-in-shader-methods-shadows.md index 6ca9fe08616..bfde92ab0e1 100644 --- a/Packages/com.unity.render-pipelines.universal/Documentation~/use-built-in-shader-methods-shadows.md +++ b/Packages/com.unity.render-pipelines.universal/Documentation~/use-built-in-shader-methods-shadows.md @@ -34,9 +34,9 @@ The following methods calculate shadows using shadow maps. To use these methods, ## Example -The following URP shader draws simple shadows onto a surface. +This code example is a simplified example of drawing shadows onto a surface. It might not work correctly with more than one [shadow cascade](../shadow-cascades). -To generate shadows, make sure there are objects in your scene that have a `ShadowCaster` shader pass, for example objects that use the `Universal Render Pipeline/Lit` shader. +To generate shadows, make sure there are objects in your scene that have a `ShadowCaster` shader pass, for example objects that use the `Universal Render Pipeline/Lit` shader. ```hlsl Shader "Custom/SimpleShadows" From f42d9218664566b6f2af75ec084f7d5eb1956481 Mon Sep 17 00:00:00 2001 From: Sai Prasad Gogulakonda Date: Mon, 3 Mar 2025 10:22:20 +0000 Subject: [PATCH 17/41] 2022.3: Fixed the generation of new artifact ID of ShaderGraph on every reimport. --- .../Editor/Generation/ShaderGraphVfxAsset.cs | 5 + .../Editor/Importers/ShaderGraphImporter.cs | 1 + .../Editor/Data/SG_Lit_VfxTarget.shadergraph | 658 ++++++++++++++++++ .../Data/SG_Lit_VfxTarget.shadergraph.meta | 10 + .../Tests/Editor/VFXCodeGenerationTest.cs | 29 + 5 files changed, 703 insertions(+) create mode 100644 Tests/SRPTests/Packages/com.unity.testing.visualeffectgraph/Tests/Editor/Data/SG_Lit_VfxTarget.shadergraph create mode 100644 Tests/SRPTests/Packages/com.unity.testing.visualeffectgraph/Tests/Editor/Data/SG_Lit_VfxTarget.shadergraph.meta create mode 100644 Tests/SRPTests/Packages/com.unity.testing.visualeffectgraph/Tests/Editor/VFXCodeGenerationTest.cs diff --git a/Packages/com.unity.shadergraph/Editor/Generation/ShaderGraphVfxAsset.cs b/Packages/com.unity.shadergraph/Editor/Generation/ShaderGraphVfxAsset.cs index 6ec7a588904..9a6f1839740 100644 --- a/Packages/com.unity.shadergraph/Editor/Generation/ShaderGraphVfxAsset.cs +++ b/Packages/com.unity.shadergraph/Editor/Generation/ShaderGraphVfxAsset.cs @@ -133,6 +133,11 @@ public string outputStructName internal set { m_OutputStructName = value; } } + internal void SetGUID(string guid) + { + m_Data.OverrideObjectId(guid, "SerializedVfxAssetData"); + } + public List properties { get diff --git a/Packages/com.unity.shadergraph/Editor/Importers/ShaderGraphImporter.cs b/Packages/com.unity.shadergraph/Editor/Importers/ShaderGraphImporter.cs index 9b018519bc2..bd366d6d19a 100644 --- a/Packages/com.unity.shadergraph/Editor/Importers/ShaderGraphImporter.cs +++ b/Packages/com.unity.shadergraph/Editor/Importers/ShaderGraphImporter.cs @@ -976,6 +976,7 @@ void AddCoordinateSpaceSnippets(InterpolatorType interpolatorType, Func Date: Mon, 3 Mar 2025 10:22:20 +0000 Subject: [PATCH 18/41] [Port] [2022.3] [VFX] Prevent buffer overflow when parent system has more particles than the strip capacity of the child system --- Packages/com.unity.visualeffectgraph/Shaders/VFXInit.template | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Packages/com.unity.visualeffectgraph/Shaders/VFXInit.template b/Packages/com.unity.visualeffectgraph/Shaders/VFXInit.template index 96cfa74c373..719569069e9 100644 --- a/Packages/com.unity.visualeffectgraph/Shaders/VFXInit.template +++ b/Packages/com.unity.visualeffectgraph/Shaders/VFXInit.template @@ -164,7 +164,9 @@ void CSMain(uint3 groupId : SV_GroupID, #else uint stripIndex = sourceIndex; #endif - stripIndex = min(stripIndex, STRIP_COUNT); + + if (stripIndex >= STRIP_COUNT) + return; if (!GetParticleIndex(particleIndex, stripIndex, instanceIndex, STRIP_COUNT)) return; From 2fe59f51034de2f5e2d9d751a69eec846b0aa489 Mon Sep 17 00:00:00 2001 From: Paul Demeulenaere Date: Mon, 3 Mar 2025 10:22:21 +0000 Subject: [PATCH 19/41] [Port] [2022.3] [VFX] Fix missing invalidation in case of SetTexture --- .../AllTests/Editor/Tests/VFXComponentTest.cs | 58 +++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/Tests/SRPTests/Projects/VisualEffectGraph_HDRP/Assets/AllTests/Editor/Tests/VFXComponentTest.cs b/Tests/SRPTests/Projects/VisualEffectGraph_HDRP/Assets/AllTests/Editor/Tests/VFXComponentTest.cs index c46eea15e4f..d0c18752791 100644 --- a/Tests/SRPTests/Projects/VisualEffectGraph_HDRP/Assets/AllTests/Editor/Tests/VFXComponentTest.cs +++ b/Tests/SRPTests/Projects/VisualEffectGraph_HDRP/Assets/AllTests/Editor/Tests/VFXComponentTest.cs @@ -1488,6 +1488,64 @@ public IEnumerator Check_SetNullable_Throw_An_Exception_While_Using_Null([ValueS Assert.Throws(() => fnSet_UsingBindings(valueType.type, vfx, "null", null)); } + public static string[] kModifyPropertyAndInsureSerializedUpdatedCases = new[] { "Float", "Int32", "Float3", "Curve", "ColorGradient", "Mesh", "Texture2D", "Texture3D" }; + + [UnityTest, Description("Cover UUM-96024")] + public IEnumerator ModifySinglePropertyAndInsureSerializedUpdated([ValueSource(nameof(kModifyPropertyAndInsureSerializedUpdatedCases))] string typeCase) + { + var graph = VFXTestCommon.MakeTemporaryGraph(); + + bool success = Enum.TryParse(typeof(VFXValueType), typeCase, false, out var r); + Assert.IsTrue(success); + Assert.AreNotEqual(VFXValueType.None, r); + var valueType = (VFXValueType)r; + + var exposedPropertyName = "wxcv_" + typeCase; + var desc = VFXLibrary.GetParameters().FirstOrDefault(o => VFXExpression.GetVFXValueTypeFromType(o.model.type) == valueType); + Assert.IsNotNull(desc); + + var currentParameterType = desc.model.type; + var currentParameter = desc.CreateInstance(); + currentParameter.SetSettingValue("m_ExposedName", exposedPropertyName); + currentParameter.SetSettingValue("m_Exposed", true); + var value = GetValue_A_Type(currentParameter.type); + Assert.IsNotNull(value); + currentParameter.value = value; + graph.AddChild(currentParameter); + + Assert.IsNotNull(currentParameterType); + Assert.IsTrue(graph.children.OfType().First() == currentParameter); + + AssetDatabase.ImportAsset(AssetDatabase.GetAssetPath(graph)); + yield return null; + + while (m_mainObject.GetComponent() != null) + UnityEngine.Object.DestroyImmediate(m_mainObject.GetComponent()); + var vfx = m_mainObject.AddComponent(); + vfx.visualEffectAsset = graph.visualEffectResource.asset; + + Assert.IsTrue(fnHas_UsingBindings(valueType, vfx, exposedPropertyName)); + + var baseValue = GetValue_A_Type(currentParameterType); + var newValue = GetValue_B_Type(currentParameterType); + Assert.AreNotEqual(baseValue, newValue); + + var readValue = fnGet_UsingSerializedProperty(valueType, vfx, exposedPropertyName); + Assert.AreEqual(readValue, null); + + readValue = fnGet_UsingBindings(valueType, vfx, exposedPropertyName); + Assert.AreEqual(readValue, baseValue); + + //Change the single value through bindings + fnSet_UsingBindings((VFXValueType)r, vfx, exposedPropertyName, newValue); + + readValue = fnGet_UsingSerializedProperty(valueType, vfx, exposedPropertyName); + Assert.AreEqual(readValue, newValue); + + readValue = fnGet_UsingBindings(valueType, vfx, exposedPropertyName); + Assert.AreEqual(readValue, newValue); + } + [UnityTest] public IEnumerator CreateComponentWithAllBasicTypeExposed([ValueSource("trueOrFalse")] bool linkMode, [ValueSource("trueOrFalse")] bool bindingModes) { From f28fb89ebad65d67bef9ce91a2aef94bf470ade2 Mon Sep 17 00:00:00 2001 From: Vimal Rethinachalam Date: Wed, 5 Mar 2025 02:48:46 +0000 Subject: [PATCH 20/41] 2022.3: Fix seams in water, when the quad is selected. --- .../Runtime/Water/HDRenderPipeline.WaterSystem.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Packages/com.unity.render-pipelines.high-definition/Runtime/Water/HDRenderPipeline.WaterSystem.cs b/Packages/com.unity.render-pipelines.high-definition/Runtime/Water/HDRenderPipeline.WaterSystem.cs index 9a022fa05ce..dc5a75d81f1 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Runtime/Water/HDRenderPipeline.WaterSystem.cs +++ b/Packages/com.unity.render-pipelines.high-definition/Runtime/Water/HDRenderPipeline.WaterSystem.cs @@ -324,7 +324,7 @@ void UpdateShaderVariablesWaterRendering(WaterSurface currentWater, HDCamera hdC } else { - cb._GridSize.Set(extent.x, extent.y); + cb._GridSize.Set(extent.x + 1, extent.y + 1); cb._WaterRotation.Set(Mathf.Cos(rotation), Mathf.Sin(rotation)); cb._PatchOffset = currentWater.transform.position; } From 0a3f681e515d6b5850b123ede725329dc4e7cff8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Antoine=20Leli=C3=A8vre?= Date: Wed, 5 Mar 2025 02:49:02 +0000 Subject: [PATCH 21/41] Fixed offscreen UI scaling --- .../Runtime/RenderPipeline/HDRenderPipeline.RenderGraph.cs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDRenderPipeline.RenderGraph.cs b/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDRenderPipeline.RenderGraph.cs index 10e52cc567b..287bdcef05e 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDRenderPipeline.RenderGraph.cs +++ b/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDRenderPipeline.RenderGraph.cs @@ -947,9 +947,9 @@ class RenderOffscreenUIData public Rect viewport; } - TextureHandle CreateOffscreenUIBuffer(RenderGraph renderGraph, MSAASamples msaaSamples) + TextureHandle CreateOffscreenUIBuffer(RenderGraph renderGraph, MSAASamples msaaSamples, Rect viewport) { - return renderGraph.CreateTexture(new TextureDesc(Vector2.one, false, true) + return renderGraph.CreateTexture(new TextureDesc((int)viewport.width, (int)viewport.height, false, true) { colorFormat = GraphicsFormat.R8G8B8A8_SRGB, clearBuffer = false, msaaSamples = msaaSamples, name = "UI Buffer" }); } @@ -960,7 +960,8 @@ TextureHandle RenderTransparentUI(RenderGraph renderGraph, HDCamera hdCamera) { using (var builder = renderGraph.AddRenderPass("UI Rendering", out var passData, ProfilingSampler.Get(HDProfileId.OffscreenUIRendering))) { - output = builder.UseColorBuffer(CreateOffscreenUIBuffer(renderGraph, hdCamera.msaaSamples), 0); + // We cannot use rendererlist here because of the path tracing denoiser which will make it invalid due to multiple rendering per frame + output = builder.UseColorBuffer(CreateOffscreenUIBuffer(renderGraph, hdCamera.msaaSamples, hdCamera.finalViewport), 0); passData.camera = hdCamera.camera; passData.frameSettings = hdCamera.frameSettings; From 4cc23b3e7f6b14bedd0175167f40a13a56a83de6 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Wed, 5 Mar 2025 02:49:14 +0000 Subject: [PATCH 22/41] [Port] [2022.3] DOCG-5799 Clarify Sample Graphics Buffer and custom types --- .../Documentation~/Operator-SampleBuffer.md | 38 ++++++++++--------- 1 file changed, 20 insertions(+), 18 deletions(-) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleBuffer.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleBuffer.md index 21f3c1c3339..6a9a7a3e883 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleBuffer.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleBuffer.md @@ -1,10 +1,10 @@ -# Sample Buffer +# Sample Graphics Buffer -**Menu Path : Operator > Sampling > Sample Buffer** +**Menu Path : Operator > Sampling > Sample Graphics Buffer** -The Sample Buffer Operator enables you to fetch and sample a structured buffer. A structured buffer is a [GraphicsBuffer](https://docs.unity3d.com/ScriptReference/GraphicsBuffer.html) created using the [Structured](https://docs.unity3d.com/ScriptReference/GraphicsBuffer.Target.Structured.html) target. +The Sample Graphics Buffer Operator enables you to fetch and sample a structured buffer. A structured buffer is a [GraphicsBuffer](https://docs.unity3d.com/ScriptReference/GraphicsBuffer.html) created using the [Structured](https://docs.unity3d.com/ScriptReference/GraphicsBuffer.Target.Structured.html) target. ## Operator settings @@ -17,7 +17,7 @@ The Sample Buffer Operator enables you to fetch and sample a structured buffer. | **Input** | **Type** | **Description** | | ---------- | --------------------------------------- | ------------------------------------------------------------ | | **Input** | [Configurable](#operator-configuration) | The structure type. | -| **Buffer** | GraphicsBuffer | The structured buffer to fetch. You can only connect an exposed property to this input port. | +| **Buffer** | Graphics Buffer [property](Properties.md)| The structured buffer to fetch. You can only connect an exposed property to this input port. | | **Index** | uint | The index of the element to fetch. | | **Output** | **Type** | **Description** | @@ -26,32 +26,34 @@ The Sample Buffer Operator enables you to fetch and sample a structured buffer. ## Operator configuration -To view the Operator's configuration, click the **cog** icon in the Operator's header. +To set the struct type, select the cog icon. The available types are: -### Available types -This Operator supports sampling structured buffers that use blittable types. The list of built-in blittable types is: - - float - - int - - uint - - Vector2 - - Vector3 - - Vector4 - - Matrix4x4 +- float +- int +- uint +- Vector2 +- Vector3 +- Vector4 +- Matrix4x4 -You can also declare custom types. To do this, add the `[VFXType]` attribute to a struct, and use the `VFXTypeAttribute.Usage.GraphicsBuffer` type. For example: +### Add a custom type + +To add a custom type to the list, add the `[VFXType(VFXTypeAttribute.Usage.GraphicsBuffer)]` attribute to a struct. For example, the following script adds a **MyCustomData** type: ```c# using UnityEngine; using UnityEngine.VFX; [VFXType(VFXTypeAttribute.Usage.GraphicsBuffer)] -struct CustomData +struct MyCustomData { - public Vector3 color; - public Vector3 position; + public Vector3 myColor; + public Vector3 myPosition; } ``` +After you set a custom type, open the **s** dropdown to display the properties of the struct and connect them to other Operators and [Contexts](Contexts.md). + ## Limitations The Operator has the following limitations: From b771674fa0ad2c2e3127d250148d5903fdaebc01 Mon Sep 17 00:00:00 2001 From: Paul Demeulenaere Date: Fri, 7 Mar 2025 06:26:09 +0000 Subject: [PATCH 23/41] [Port] [2022.3] [VFX/SG] Fix Unexpected Visible Dead Particles --- .../Templates/VFXConfig.template.hlsl | 5 + .../Scenes/Repro_UUM_96266.shadergraph | 685 ++++++ .../Scenes/Repro_UUM_96266.shadergraph.meta | 10 + .../Scenes/Repro_UUM_96266.vfx | 2008 +++++++++++++++++ .../Scenes/Repro_UUM_96266.vfx.meta | 14 + .../35_ShaderGraphGenerationFTP.unity | 119 +- .../104_ShaderGraphGenerationFTP.unity | 149 +- 7 files changed, 2979 insertions(+), 11 deletions(-) create mode 100644 Tests/SRPTests/Packages/com.unity.testing.visualeffectgraph/Scenes/Repro_UUM_96266.shadergraph create mode 100644 Tests/SRPTests/Packages/com.unity.testing.visualeffectgraph/Scenes/Repro_UUM_96266.shadergraph.meta create mode 100644 Tests/SRPTests/Packages/com.unity.testing.visualeffectgraph/Scenes/Repro_UUM_96266.vfx create mode 100644 Tests/SRPTests/Packages/com.unity.testing.visualeffectgraph/Scenes/Repro_UUM_96266.vfx.meta diff --git a/Packages/com.unity.visualeffectgraph/Editor/ShaderGraph/Templates/VFXConfig.template.hlsl b/Packages/com.unity.visualeffectgraph/Editor/ShaderGraph/Templates/VFXConfig.template.hlsl index e0c71fd902e..957afe797da 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/ShaderGraph/Templates/VFXConfig.template.hlsl +++ b/Packages/com.unity.visualeffectgraph/Editor/ShaderGraph/Templates/VFXConfig.template.hlsl @@ -187,7 +187,12 @@ void GetElementData(inout AttributesElement element) element.currentFrameIndex = currentFrameIndex; #endif +#if !VFX_HAS_INDIRECT_DRAW && !HAS_STRIPS + if (attributes.alive) +#endif + { $splice(VFXProcessBlocks) + } element.attributes = attributes; } diff --git a/Tests/SRPTests/Packages/com.unity.testing.visualeffectgraph/Scenes/Repro_UUM_96266.shadergraph b/Tests/SRPTests/Packages/com.unity.testing.visualeffectgraph/Scenes/Repro_UUM_96266.shadergraph new file mode 100644 index 00000000000..b7688918613 --- /dev/null +++ b/Tests/SRPTests/Packages/com.unity.testing.visualeffectgraph/Scenes/Repro_UUM_96266.shadergraph @@ -0,0 +1,685 @@ +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.GraphData", + "m_ObjectId": "c8387aca791e4fc9b9623e5309b0cb0c", + "m_Properties": [ + { + "m_Id": "15e584e4373942d79eff1641aed73c53" + } + ], + "m_Keywords": [], + "m_Dropdowns": [], + "m_CategoryData": [ + { + "m_Id": "afad8d927b7a485d94c48243f9690d4a" + } + ], + "m_Nodes": [ + { + "m_Id": "4be313704fc9455cb40a8ce5ae3d0a61" + }, + { + "m_Id": "e0cf100c199f4129b7ddebae5513f8f6" + }, + { + "m_Id": "1673ad1690784af5a2c00f76728930a7" + }, + { + "m_Id": "75fd3b86e1424a2b9100e4e86709c69f" + }, + { + "m_Id": "983e9521a50c4f7fbda9664e06630c01" + }, + { + "m_Id": "c70478b476c84e1cb9062c036e878666" + }, + { + "m_Id": "8ecb34f6d7524a7d863b7ecd09b962fa" + } + ], + "m_GroupDatas": [], + "m_StickyNoteDatas": [], + "m_Edges": [ + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "983e9521a50c4f7fbda9664e06630c01" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "75fd3b86e1424a2b9100e4e86709c69f" + }, + "m_SlotId": 0 + } + } + ], + "m_VertexContext": { + "m_Position": { + "x": 0.0, + "y": -43.0 + }, + "m_Blocks": [ + { + "m_Id": "4be313704fc9455cb40a8ce5ae3d0a61" + }, + { + "m_Id": "e0cf100c199f4129b7ddebae5513f8f6" + }, + { + "m_Id": "1673ad1690784af5a2c00f76728930a7" + } + ] + }, + "m_FragmentContext": { + "m_Position": { + "x": 0.0, + "y": 200.0 + }, + "m_Blocks": [ + { + "m_Id": "75fd3b86e1424a2b9100e4e86709c69f" + }, + { + "m_Id": "c70478b476c84e1cb9062c036e878666" + }, + { + "m_Id": "8ecb34f6d7524a7d863b7ecd09b962fa" + } + ] + }, + "m_PreviewData": { + "serializedMesh": { + "m_SerializedMesh": "{\"mesh\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "preventRotation": false + }, + "m_Path": "Shader Graphs", + "m_GraphPrecision": 1, + "m_PreviewMode": 2, + "m_OutputNode": { + "m_Id": "" + }, + "m_SubDatas": [], + "m_ActiveTargets": [ + { + "m_Id": "d72cdc7f12094e0dab93137beb275e93" + }, + { + "m_Id": "f8ca6ac8ffb2422f99cad1171d7f8a6e" + } + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalMaterialSlot", + "m_ObjectId": "0dbb9276f5d44f399341036ba66be62a", + "m_Id": 0, + "m_DisplayName": "Normal", + "m_SlotType": 0, + "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": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector3ShaderProperty", + "m_ObjectId": "15e584e4373942d79eff1641aed73c53", + "m_Guid": { + "m_GuidSerialized": "14e5eae7-cf2e-4954-b1e6-b2967034d824" + }, + "m_Name": "Color", + "m_DefaultRefNameVersion": 1, + "m_RefNameGeneratedByDisplayName": "Color", + "m_DefaultReferenceName": "_Color", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "1673ad1690784af5a2c00f76728930a7", + "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": "73941f1ed1814a7ca2736230428b72b2" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Tangent" +} + +{ + "m_SGVersion": 2, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalUnlitSubTarget", + "m_ObjectId": "1f7025b23637490db59a1958600c2264" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ColorRGBMaterialSlot", + "m_ObjectId": "2c85b8342f7a4121ba5307b2cabba713", + "m_Id": 0, + "m_DisplayName": "Emission", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Emission", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_ColorMode": 1, + "m_DefaultColor": { + "r": 0.0, + "g": 0.0, + "b": 0.0, + "a": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "4be313704fc9455cb40a8ce5ae3d0a61", + "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": "da8b961bf84f438da3778d4f7c3079e2" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Position" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.HighDefinition.ShaderGraph.HDUnlitSubTarget", + "m_ObjectId": "60b1a801b42d4e38aacda2816cfc77fc" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.TangentMaterialSlot", + "m_ObjectId": "73941f1ed1814a7ca2736230428b72b2", + "m_Id": 0, + "m_DisplayName": "Tangent", + "m_SlotType": 0, + "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": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "75fd3b86e1424a2b9100e4e86709c69f", + "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": "c9e978b939d24fe5812cbcc2fea5c490" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.BaseColor" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.HighDefinition.ShaderGraph.BuiltinData", + "m_ObjectId": "8186045ea74f4af7b81470ae6e2bb714", + "m_Distortion": false, + "m_DistortionMode": 0, + "m_DistortionDepthTest": true, + "m_AddPrecomputedVelocity": false, + "m_TransparentWritesMotionVec": false, + "m_DepthOffset": false, + "m_ConservativeDepthOffset": false, + "m_TransparencyFog": true, + "m_AlphaTestShadow": false, + "m_BackThenFrontRendering": false, + "m_TransparentDepthPrepass": false, + "m_TransparentDepthPostpass": false, + "m_SupportLodCrossFade": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "822cbc89acc24a4aa7461659f20536bf", + "m_Id": 0, + "m_DisplayName": "Alpha", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 2, + "m_Value": 1.0, + "m_DefaultValue": 1.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.HighDefinition.ShaderGraph.HDUnlitData", + "m_ObjectId": "830505e08aca41188e8144e69c064ec4", + "m_EnableShadowMatte": false, + "m_DistortionOnly": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "8ecb34f6d7524a7d863b7ecd09b962fa", + "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": "822cbc89acc24a4aa7461659f20536bf" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Alpha" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "983e9521a50c4f7fbda9664e06630c01", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -201.0, + "y": 240.0, + "width": 105.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "ae0aa64bd1614896a4b48a8d3a7811fd" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "15e584e4373942d79eff1641aed73c53" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "ae0aa64bd1614896a4b48a8d3a7811fd", + "m_Id": 0, + "m_DisplayName": "Color", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.CategoryData", + "m_ObjectId": "afad8d927b7a485d94c48243f9690d4a", + "m_Name": "", + "m_ChildObjectList": [ + { + "m_Id": "15e584e4373942d79eff1641aed73c53" + } + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "c70478b476c84e1cb9062c036e878666", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.Emission", + "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": "2c85b8342f7a4121ba5307b2cabba713" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Emission" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ColorRGBMaterialSlot", + "m_ObjectId": "c9e978b939d24fe5812cbcc2fea5c490", + "m_Id": 0, + "m_DisplayName": "Base Color", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "BaseColor", + "m_StageCapability": 2, + "m_Value": { + "x": 0.5, + "y": 0.5, + "z": 0.5 + }, + "m_DefaultValue": { + "x": 0.5, + "y": 0.5, + "z": 0.5 + }, + "m_Labels": [], + "m_ColorMode": 0, + "m_DefaultColor": { + "r": 0.5, + "g": 0.5, + "b": 0.5, + "a": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.HighDefinition.ShaderGraph.HDTarget", + "m_ObjectId": "d72cdc7f12094e0dab93137beb275e93", + "m_ActiveSubTarget": { + "m_Id": "60b1a801b42d4e38aacda2816cfc77fc" + }, + "m_Datas": [ + { + "m_Id": "d7ab27cfb59c45c281f0cb06f1b55828" + }, + { + "m_Id": "8186045ea74f4af7b81470ae6e2bb714" + }, + { + "m_Id": "830505e08aca41188e8144e69c064ec4" + } + ], + "m_CustomEditorGUI": "", + "m_SupportVFX": true, + "m_SupportComputeForVertexSetup": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.HighDefinition.ShaderGraph.SystemData", + "m_ObjectId": "d7ab27cfb59c45c281f0cb06f1b55828", + "m_MaterialNeedsUpdateHash": 0, + "m_SurfaceType": 0, + "m_RenderingPass": 1, + "m_BlendMode": 0, + "m_ZTest": 4, + "m_ZWrite": false, + "m_TransparentCullMode": 2, + "m_OpaqueCullMode": 2, + "m_SortPriority": 0, + "m_AlphaTest": false, + "m_ExcludeFromTUAndAA": false, + "m_TransparentDepthPrepass": false, + "m_TransparentDepthPostpass": false, + "m_SupportLodCrossFade": false, + "m_DoubleSidedMode": 0, + "m_DOTSInstancing": false, + "m_CustomVelocity": false, + "m_Tessellation": false, + "m_TessellationMode": 0, + "m_TessellationFactorMinDistance": 20.0, + "m_TessellationFactorMaxDistance": 50.0, + "m_TessellationFactorTriangleSize": 100.0, + "m_TessellationShapeFactor": 0.75, + "m_TessellationBackFaceCullEpsilon": -0.25, + "m_TessellationMaxDisplacement": 0.009999999776482582, + "m_Version": 2, + "inspectorFoldoutMask": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PositionMaterialSlot", + "m_ObjectId": "da8b961bf84f438da3778d4f7c3079e2", + "m_Id": 0, + "m_DisplayName": "Position", + "m_SlotType": 0, + "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": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "e0cf100c199f4129b7ddebae5513f8f6", + "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": "0dbb9276f5d44f399341036ba66be62a" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Normal" +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalTarget", + "m_ObjectId": "f8ca6ac8ffb2422f99cad1171d7f8a6e", + "m_Datas": [], + "m_ActiveSubTarget": { + "m_Id": "1f7025b23637490db59a1958600c2264" + }, + "m_AllowMaterialOverride": false, + "m_SurfaceType": 0, + "m_ZTestMode": 4, + "m_ZWriteControl": 0, + "m_AlphaMode": 0, + "m_RenderFace": 2, + "m_AlphaClip": false, + "m_CastShadows": true, + "m_ReceiveShadows": true, + "m_DisableTint": false, + "m_AdditionalMotionVectorMode": 0, + "m_AlembicMotionVectors": false, + "m_SupportsLODCrossFade": false, + "m_CustomEditorGUI": "", + "m_SupportVFX": true +} + diff --git a/Tests/SRPTests/Packages/com.unity.testing.visualeffectgraph/Scenes/Repro_UUM_96266.shadergraph.meta b/Tests/SRPTests/Packages/com.unity.testing.visualeffectgraph/Scenes/Repro_UUM_96266.shadergraph.meta new file mode 100644 index 00000000000..c40ceebbdeb --- /dev/null +++ b/Tests/SRPTests/Packages/com.unity.testing.visualeffectgraph/Scenes/Repro_UUM_96266.shadergraph.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 2203eb2ad5228d54e9292264dd03f648 +ScriptedImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 2 + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 11500000, guid: 625f186215c104763be7675aa2d941aa, type: 3} diff --git a/Tests/SRPTests/Packages/com.unity.testing.visualeffectgraph/Scenes/Repro_UUM_96266.vfx b/Tests/SRPTests/Packages/com.unity.testing.visualeffectgraph/Scenes/Repro_UUM_96266.vfx new file mode 100644 index 00000000000..da72b1b7107 --- /dev/null +++ b/Tests/SRPTests/Packages/com.unity.testing.visualeffectgraph/Scenes/Repro_UUM_96266.vfx @@ -0,0 +1,2008 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &114340500867371532 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d01270efd3285ea4a9d6c555cb0a8027, type: 3} + m_Name: VFXUI + m_EditorClassIdentifier: + groupInfos: [] + stickyNoteInfos: [] + categories: [] + uiBounds: + serializedVersion: 2 + x: 135 + y: -1386 + width: 1367 + height: 1901 +--- !u!114 &114350483966674976 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7d4c867f6b72b714dbb5fd1780afe208, type: 3} + m_Name: Repro_UUM_96266 + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: + - {fileID: 8926484042661614608} + - {fileID: 8926484042661614613} + - {fileID: 8926484042661614662} + - {fileID: 8926484042661614913} + - {fileID: 8926484042661614938} + - {fileID: 8926484042661614978} + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_UIInfos: {fileID: 114340500867371532} + m_ParameterInfo: [] + m_ImportDependencies: [] + m_GraphVersion: 12 + m_ResourceVersion: 1 + m_SubgraphDependencies: [] + m_CategoryPath: +--- !u!2058629511 &8926484042661614527 +VisualEffectResource: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Repro_UUM_96266 + m_Graph: {fileID: 114350483966674976} + m_Infos: + m_RendererSettings: + motionVectorGenerationMode: 0 + shadowCastingMode: 0 + receiveShadows: 0 + reflectionProbeUsage: 0 + lightProbeUsage: 0 + m_CullingFlags: 3 + m_UpdateMode: 0 + m_PreWarmDeltaTime: 0.05 + m_PreWarmStepCount: 0 + m_InitialEventName: OnPlay + m_InstancingMode: 0 + m_InstancingCapacity: 64 +--- !u!114 &8926484042661614608 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 73a13919d81fb7444849bae8b5c812a2, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 114350483966674976} + m_Children: + - {fileID: 8926484042661614610} + m_UIPosition: {x: 835, y: -1386} + m_UICollapsed: 0 + m_UISuperCollapsed: 0 + m_InputSlots: [] + m_OutputSlots: [] + m_Label: Spawn system + m_Data: {fileID: 8926484042661614609} + m_InputFlowSlot: + - link: [] + - link: [] + m_OutputFlowSlot: + - link: + - context: {fileID: 8926484042661614613} + slotIndex: 0 + loopDuration: 0 + loopCount: 0 + delayBeforeLoop: 0 + delayAfterLoop: 0 +--- !u!114 &8926484042661614609 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f68759077adc0b143b6e1c101e82065e, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + title: + m_Owners: + - {fileID: 8926484042661614608} +--- !u!114 &8926484042661614610 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f05c6884b705ce14d82ae720f0ec209f, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614608} + m_Children: [] + m_UIPosition: {x: 0, y: 2} + m_UICollapsed: 0 + m_UISuperCollapsed: 0 + m_InputSlots: + - {fileID: 8926484042661614611} + m_OutputSlots: [] + m_Disabled: 0 + m_ActivationSlot: {fileID: 8926484042661614612} +--- !u!114 &8926484042661614611 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614611} + m_MasterData: + m_Owner: {fileID: 8926484042661614610} + m_Value: + m_Type: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_SerializableObject: 64 + m_Space: -1 + m_Property: + name: Rate + m_serializedType: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614612 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b4c11ff25089a324daf359f4b0629b33, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614612} + m_MasterData: + m_Owner: {fileID: 8926484042661614610} + m_Value: + m_Type: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_SerializableObject: True + m_Space: -1 + m_Property: + name: _vfx_enabled + m_serializedType: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614613 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9dfea48843f53fc438eabc12a3a30abc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 114350483966674976} + m_Children: + - {fileID: 8926484042661614628} + - {fileID: 8926484042661614991} + m_UIPosition: {x: 835, y: -1100} + m_UICollapsed: 0 + m_UISuperCollapsed: 0 + m_InputSlots: + - {fileID: 8926484042661614774} + m_OutputSlots: [] + m_Label: Initialize Particles + m_Data: {fileID: 8926484042661614627} + m_InputFlowSlot: + - link: + - context: {fileID: 8926484042661614608} + slotIndex: 0 + m_OutputFlowSlot: + - link: + - context: {fileID: 8926484042661614662} + slotIndex: 0 +--- !u!114 &8926484042661614627 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d78581a96eae8bf4398c282eb0b098bd, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + title: Simple Loop + m_Owners: + - {fileID: 8926484042661614613} + - {fileID: 8926484042661614662} + - {fileID: 8926484042661614938} + - {fileID: 8926484042661614978} + dataType: 0 + capacity: 1024 + stripCapacity: 1 + particlePerStripCount: 32 + needsComputeBounds: 0 + boundsMode: 1 + m_Space: 0 +--- !u!114 &8926484042661614628 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a971fa2e110a0ac42ac1d8dae408704b, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614613} + m_Children: [] + m_UIPosition: {x: 0, y: 2} + m_UICollapsed: 0 + m_UISuperCollapsed: 0 + m_InputSlots: + - {fileID: 8926484042661614969} + m_OutputSlots: [] + m_Disabled: 0 + m_ActivationSlot: {fileID: 8926484042661614631} + attribute: lifetime + Composition: 0 + Source: 0 + Random: 0 + channels: 6 +--- !u!114 &8926484042661614631 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b4c11ff25089a324daf359f4b0629b33, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614631} + m_MasterData: + m_Owner: {fileID: 8926484042661614628} + m_Value: + m_Type: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_SerializableObject: True + m_Space: -1 + m_Property: + name: _vfx_enabled + m_serializedType: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614662 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 2dc095764ededfa4bb32fa602511ea4b, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 114350483966674976} + m_Children: + - {fileID: 8926484042661614955} + - {fileID: 8926484042661614958} + - {fileID: 8926484042661614966} + m_UIPosition: {x: 835, y: -526} + m_UICollapsed: 0 + m_UISuperCollapsed: 0 + m_InputSlots: [] + m_OutputSlots: [] + m_Label: Update Particles + m_Data: {fileID: 8926484042661614627} + m_InputFlowSlot: + - link: + - context: {fileID: 8926484042661614613} + slotIndex: 0 + m_OutputFlowSlot: + - link: + - context: {fileID: 8926484042661614938} + slotIndex: 0 + - context: {fileID: 8926484042661614978} + slotIndex: 0 + integration: 0 + angularIntegration: 0 + ageParticles: 1 + reapParticles: 1 + skipZeroDeltaUpdate: 0 +--- !u!114 &8926484042661614774 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1b605c022ee79394a8a776c0869b3f9a, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: + - {fileID: 8926484042661614775} + - {fileID: 8926484042661614779} + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 0 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614774} + m_MasterData: + m_Owner: {fileID: 8926484042661614613} + m_Value: + m_Type: + m_SerializableType: UnityEditor.VFX.AABox, Unity.VisualEffectGraph.Editor, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + m_SerializableObject: '{"center":{"x":0.0,"y":1.0,"z":0.0},"size":{"x":3.5,"y":4.0,"z":3.5}}' + m_Space: 0 + m_Property: + name: bounds + m_serializedType: + m_SerializableType: UnityEditor.VFX.AABox, Unity.VisualEffectGraph.Editor, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614775 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ac39bd03fca81b849929b9c966f1836a, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614774} + m_Children: + - {fileID: 8926484042661614776} + - {fileID: 8926484042661614777} + - {fileID: 8926484042661614778} + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614774} + m_MasterData: + m_Owner: {fileID: 0} + m_Value: + m_Type: + m_SerializableType: + m_SerializableObject: + m_Space: 2147483647 + m_Property: + name: center + m_serializedType: + m_SerializableType: UnityEngine.Vector3, UnityEngine.CoreModule, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614776 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614775} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614774} + m_MasterData: + m_Owner: {fileID: 0} + m_Value: + m_Type: + m_SerializableType: + m_SerializableObject: + m_Space: 2147483647 + m_Property: + name: x + m_serializedType: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614777 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614775} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614774} + m_MasterData: + m_Owner: {fileID: 0} + m_Value: + m_Type: + m_SerializableType: + m_SerializableObject: + m_Space: 2147483647 + m_Property: + name: y + m_serializedType: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614778 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614775} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614774} + m_MasterData: + m_Owner: {fileID: 0} + m_Value: + m_Type: + m_SerializableType: + m_SerializableObject: + m_Space: 2147483647 + m_Property: + name: z + m_serializedType: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614779 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ac39bd03fca81b849929b9c966f1836a, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614774} + m_Children: + - {fileID: 8926484042661614780} + - {fileID: 8926484042661614781} + - {fileID: 8926484042661614782} + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614774} + m_MasterData: + m_Owner: {fileID: 0} + m_Value: + m_Type: + m_SerializableType: + m_SerializableObject: + m_Space: 2147483647 + m_Property: + name: size + m_serializedType: + m_SerializableType: UnityEngine.Vector3, UnityEngine.CoreModule, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614780 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614779} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614774} + m_MasterData: + m_Owner: {fileID: 0} + m_Value: + m_Type: + m_SerializableType: + m_SerializableObject: + m_Space: 2147483647 + m_Property: + name: x + m_serializedType: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614781 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614779} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614774} + m_MasterData: + m_Owner: {fileID: 0} + m_Value: + m_Type: + m_SerializableType: + m_SerializableObject: + m_Space: 2147483647 + m_Property: + name: y + m_serializedType: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614782 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614779} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614774} + m_MasterData: + m_Owner: {fileID: 0} + m_Value: + m_Type: + m_SerializableType: + m_SerializableObject: + m_Space: 2147483647 + m_Property: + name: z + m_serializedType: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614913 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 486e063e1ed58c843942ea4122829ab1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 114350483966674976} + m_Children: [] + m_UIPosition: {x: 135, y: 207} + m_UICollapsed: 0 + m_UISuperCollapsed: 0 + m_InputSlots: [] + m_OutputSlots: + - {fileID: 8926484042661614973} + attribute: color + location: 0 + mask: xyz +--- !u!114 &8926484042661614938 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a0b9e6b9139e58d4c957ec54595da7d3, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 114350483966674976} + m_Children: + - {fileID: 8926484042661614942} + - {fileID: 8926484042661614950} + m_UIPosition: {x: 1076, y: 93} + m_UICollapsed: 0 + m_UISuperCollapsed: 0 + m_InputSlots: + - {fileID: 8926484042661614939} + m_OutputSlots: [] + m_Label: Render Quad + m_Data: {fileID: 8926484042661614627} + m_InputFlowSlot: + - link: + - context: {fileID: 8926484042661614662} + slotIndex: 0 + m_OutputFlowSlot: + - link: [] + blendMode: 3 + cullMode: 0 + zWriteMode: 0 + zTestMode: 0 + useAlphaClipping: 0 + generateMotionVector: 0 + excludeFromTUAndAA: 0 + sortingPriority: 0 + m_SubOutputs: + - {fileID: 8926484042661614941} + - {fileID: 8926484042661614965} + colorMapping: 0 + uvMode: 0 + flipbookLayout: 0 + useSoftParticle: 0 + vfxSystemSortPriority: 0 + sort: 0 + sortMode: 0 + revertSorting: 0 + indirectDraw: 0 + computeCulling: 0 + frustumCulling: 0 + castShadows: 0 + useExposureWeight: 0 + needsOwnSort: 0 + shaderGraph: {fileID: 0} + materialSettings: + m_PropertyNames: [] + m_PropertyValues: [] + primitiveType: 1 + useGeometryShader: 0 +--- !u!114 &8926484042661614939 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 70a331b1d86cc8d4aa106ccbe0da5852, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614939} + m_MasterData: + m_Owner: {fileID: 8926484042661614938} + m_Value: + m_Type: + m_SerializableType: UnityEngine.Texture2D, UnityEngine.CoreModule, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_SerializableObject: '{"obj":{"fileID":2800000,"guid":"276d9e395ae18fe40a9b4988549f2349","type":3}}' + m_Space: -1 + m_Property: + name: mainTexture + m_serializedType: + m_SerializableType: UnityEngine.Texture2D, UnityEngine.CoreModule, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614941 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 388ad3b1dc9c6ae45b630f914fab638f, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &8926484042661614942 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d16c6aeaef944094b9a1633041804207, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614938} + m_Children: [] + m_UIPosition: {x: 0, y: 2} + m_UICollapsed: 0 + m_UISuperCollapsed: 0 + m_InputSlots: [] + m_OutputSlots: [] + m_Disabled: 0 + m_ActivationSlot: {fileID: 8926484042661614943} + mode: 0 + axes: 4 +--- !u!114 &8926484042661614943 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b4c11ff25089a324daf359f4b0629b33, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614943} + m_MasterData: + m_Owner: {fileID: 8926484042661614942} + m_Value: + m_Type: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_SerializableObject: True + m_Space: -1 + m_Property: + name: _vfx_enabled + m_serializedType: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614950 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a971fa2e110a0ac42ac1d8dae408704b, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614938} + m_Children: [] + m_UIPosition: {x: 0, y: 77} + m_UICollapsed: 0 + m_UISuperCollapsed: 0 + m_InputSlots: + - {fileID: 8926484042661614977} + m_OutputSlots: [] + m_Disabled: 0 + m_ActivationSlot: {fileID: 8926484042661614952} + attribute: alive + Composition: 0 + Source: 0 + Random: 0 + channels: 6 +--- !u!114 &8926484042661614952 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b4c11ff25089a324daf359f4b0629b33, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614952} + m_MasterData: + m_Owner: {fileID: 8926484042661614950} + m_Value: + m_Type: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_SerializableObject: True + m_Space: -1 + m_Property: + name: _vfx_enabled + m_serializedType: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614955 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a971fa2e110a0ac42ac1d8dae408704b, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614662} + m_Children: [] + m_UIPosition: {x: 0, y: 2} + m_UICollapsed: 0 + m_UISuperCollapsed: 0 + m_InputSlots: + - {fileID: 8926484042661614970} + m_OutputSlots: [] + m_Disabled: 0 + m_ActivationSlot: {fileID: 8926484042661614957} + attribute: size + Composition: 0 + Source: 0 + Random: 0 + channels: 6 +--- !u!114 &8926484042661614957 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b4c11ff25089a324daf359f4b0629b33, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614957} + m_MasterData: + m_Owner: {fileID: 8926484042661614955} + m_Value: + m_Type: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_SerializableObject: True + m_Space: -1 + m_Property: + name: _vfx_enabled + m_serializedType: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614958 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 01ec2c1930009b04ea08905b47262415, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614662} + m_Children: [] + m_UIPosition: {x: 0, y: 75} + m_UICollapsed: 0 + m_UISuperCollapsed: 0 + m_InputSlots: + - {fileID: 8926484042661614959} + m_OutputSlots: [] + m_Disabled: 0 + m_ActivationSlot: {fileID: 8926484042661614960} + attribute: color + Composition: 0 + AlphaComposition: 0 + SampleMode: 0 + Mode: 1 + ColorMode: 3 + channels: 6 +--- !u!114 &8926484042661614959 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 76f778ff57c4e8145b9681fe3268d8e9, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614959} + m_MasterData: + m_Owner: {fileID: 8926484042661614958} + m_Value: + m_Type: + m_SerializableType: UnityEngine.Gradient, UnityEngine.CoreModule, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_SerializableObject: '{"colorKeys":[{"color":{"r":0.0,"g":1.0,"b":0.0,"a":1.0},"time":0.0},{"color":{"r":1.0,"g":0.0,"b":0.0,"a":1.0},"time":1.0}],"alphaKeys":[{"alpha":1.0,"time":0.0},{"alpha":1.0,"time":1.0}],"gradientMode":2}' + m_Space: -1 + m_Property: + name: Color + m_serializedType: + m_SerializableType: UnityEngine.Gradient, UnityEngine.CoreModule, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614960 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b4c11ff25089a324daf359f4b0629b33, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614960} + m_MasterData: + m_Owner: {fileID: 8926484042661614958} + m_Value: + m_Type: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_SerializableObject: True + m_Space: -1 + m_Property: + name: _vfx_enabled + m_serializedType: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614965 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 081ffb0090424ba4cb05370a42ead6b9, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + opaqueRenderQueue: 0 + transparentRenderQueue: 1 +--- !u!114 &8926484042661614966 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a971fa2e110a0ac42ac1d8dae408704b, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614662} + m_Children: [] + m_UIPosition: {x: 0, y: 275} + m_UICollapsed: 0 + m_UISuperCollapsed: 0 + m_InputSlots: + - {fileID: 8926484042661614972} + m_OutputSlots: [] + m_Disabled: 0 + m_ActivationSlot: {fileID: 8926484042661614968} + attribute: alive + Composition: 0 + Source: 0 + Random: 0 + channels: 6 +--- !u!114 &8926484042661614968 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b4c11ff25089a324daf359f4b0629b33, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614968} + m_MasterData: + m_Owner: {fileID: 8926484042661614966} + m_Value: + m_Type: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_SerializableObject: True + m_Space: -1 + m_Property: + name: _vfx_enabled + m_serializedType: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614969 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614969} + m_MasterData: + m_Owner: {fileID: 8926484042661614628} + m_Value: + m_Type: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_SerializableObject: 1 + m_Space: 2147483647 + m_Property: + name: Lifetime + m_serializedType: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614970 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614970} + m_MasterData: + m_Owner: {fileID: 8926484042661614955} + m_Value: + m_Type: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_SerializableObject: 0.05 + m_Space: 2147483647 + m_Property: + name: Size + m_serializedType: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614972 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b4c11ff25089a324daf359f4b0629b33, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614972} + m_MasterData: + m_Owner: {fileID: 8926484042661614966} + m_Value: + m_Type: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_SerializableObject: False + m_Space: 2147483647 + m_Property: + name: Alive + m_serializedType: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614973 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ac39bd03fca81b849929b9c966f1836a, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: + - {fileID: 8926484042661614974} + - {fileID: 8926484042661614975} + - {fileID: 8926484042661614976} + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614973} + m_MasterData: + m_Owner: {fileID: 8926484042661614913} + m_Value: + m_Type: + m_SerializableType: UnityEngine.Vector3, UnityEngine.CoreModule, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_SerializableObject: '{"x":0.0,"y":0.0,"z":0.0}' + m_Space: 2147483647 + m_Property: + name: color + m_serializedType: + m_SerializableType: UnityEngine.Vector3, UnityEngine.CoreModule, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_Direction: 1 + m_LinkedSlots: + - {fileID: 8926484042661614982} +--- !u!114 &8926484042661614974 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614973} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614973} + m_MasterData: + m_Owner: {fileID: 0} + m_Value: + m_Type: + m_SerializableType: + m_SerializableObject: + m_Space: 2147483647 + m_Property: + name: x + m_serializedType: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 1 + m_LinkedSlots: [] +--- !u!114 &8926484042661614975 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614973} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614973} + m_MasterData: + m_Owner: {fileID: 0} + m_Value: + m_Type: + m_SerializableType: + m_SerializableObject: + m_Space: 2147483647 + m_Property: + name: y + m_serializedType: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 1 + m_LinkedSlots: [] +--- !u!114 &8926484042661614976 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614973} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614973} + m_MasterData: + m_Owner: {fileID: 0} + m_Value: + m_Type: + m_SerializableType: + m_SerializableObject: + m_Space: 2147483647 + m_Property: + name: z + m_serializedType: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 1 + m_LinkedSlots: [] +--- !u!114 &8926484042661614977 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b4c11ff25089a324daf359f4b0629b33, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614977} + m_MasterData: + m_Owner: {fileID: 8926484042661614950} + m_Value: + m_Type: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_SerializableObject: True + m_Space: 2147483647 + m_Property: + name: Alive + m_serializedType: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614978 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a0b9e6b9139e58d4c957ec54595da7d3, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 114350483966674976} + m_Children: + - {fileID: 8926484042661614986} + - {fileID: 8926484042661614988} + m_UIPosition: {x: 471, y: 174} + m_UICollapsed: 0 + m_UISuperCollapsed: 0 + m_InputSlots: + - {fileID: 8926484042661614982} + m_OutputSlots: [] + m_Label: + m_Data: {fileID: 8926484042661614627} + m_InputFlowSlot: + - link: + - context: {fileID: 8926484042661614662} + slotIndex: 0 + m_OutputFlowSlot: + - link: [] + blendMode: 3 + cullMode: 0 + zWriteMode: 0 + zTestMode: 0 + useAlphaClipping: 0 + generateMotionVector: 0 + excludeFromTUAndAA: 0 + sortingPriority: 0 + m_SubOutputs: + - {fileID: 8926484042661614981} + colorMapping: 0 + uvMode: 0 + flipbookLayout: 0 + useSoftParticle: 0 + vfxSystemSortPriority: 0 + sort: 0 + sortMode: 0 + revertSorting: 0 + indirectDraw: 0 + computeCulling: 0 + frustumCulling: 0 + castShadows: 0 + useExposureWeight: 0 + needsOwnSort: 0 + shaderGraph: {fileID: 4333940904281232215, guid: 2203eb2ad5228d54e9292264dd03f648, + type: 3} + materialSettings: + m_PropertyNames: + - _RenderQueueType + - _AddPrecomputedVelocity + - _DepthOffsetEnable + - _ConservativeDepthOffsetEnable + - _TransparentWritingMotionVec + - _AlphaCutoffEnable + - _TransparentSortPriority + - _UseShadowThreshold + - _DoubleSidedEnable + - _DoubleSidedNormalMode + - _DoubleSidedGIMode + - _TransparentDepthPrepassEnable + - _TransparentDepthPostpassEnable + - _SurfaceType + - _BlendMode + - _SrcBlend + - _DstBlend + - _AlphaSrcBlend + - _AlphaDstBlend + - _ZWrite + - _TransparentZWrite + - _CullMode + - _EnableFogOnTransparent + - _CullModeForward + - _TransparentCullMode + - _OpaqueCullMode + - _ZTestDepthEqualForOpaque + - _ZTestTransparent + - _TransparentBackfaceEnable + - _EnableBlendModePreserveSpecularLighting + - _ExcludeFromTUAndAA + - _StencilRef + - _StencilWriteMask + - _StencilRefDepth + - _StencilWriteMaskDepth + - _StencilRefMV + - _StencilWriteMaskMV + - _StencilRefDistortionVec + - _StencilWriteMaskDistortionVec + m_PropertyValues: + - 1 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 2 + - 0 + - 0 + - 0 + - 0 + - 0 + - 1 + - 0 + - 1 + - 0 + - 1 + - 0 + - 2 + - 1 + - 2 + - 2 + - 2 + - 3 + - 4 + - 0 + - 0 + - 0 + - 0 + - 6 + - 1 + - 9 + - 33 + - 43 + - 4 + - 4 + primitiveType: 1 + useGeometryShader: 0 +--- !u!114 &8926484042661614981 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 081ffb0090424ba4cb05370a42ead6b9, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + opaqueRenderQueue: 0 + transparentRenderQueue: 1 +--- !u!114 &8926484042661614982 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ac39bd03fca81b849929b9c966f1836a, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: + - {fileID: 8926484042661614983} + - {fileID: 8926484042661614984} + - {fileID: 8926484042661614985} + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614982} + m_MasterData: + m_Owner: {fileID: 8926484042661614978} + m_Value: + m_Type: + m_SerializableType: UnityEngine.Vector3, UnityEngine.CoreModule, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_SerializableObject: '{"x":0.0,"y":0.0,"z":0.0}' + m_Space: 2147483647 + m_Property: + name: _Color + m_serializedType: + m_SerializableType: UnityEngine.Vector3, UnityEngine.CoreModule, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_Direction: 0 + m_LinkedSlots: + - {fileID: 8926484042661614973} +--- !u!114 &8926484042661614983 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614982} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614982} + m_MasterData: + m_Owner: {fileID: 0} + m_Value: + m_Type: + m_SerializableType: + m_SerializableObject: + m_Space: 2147483647 + m_Property: + name: x + m_serializedType: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614984 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614982} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614982} + m_MasterData: + m_Owner: {fileID: 0} + m_Value: + m_Type: + m_SerializableType: + m_SerializableObject: + m_Space: 2147483647 + m_Property: + name: y + m_serializedType: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614985 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614982} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614982} + m_MasterData: + m_Owner: {fileID: 0} + m_Value: + m_Type: + m_SerializableType: + m_SerializableObject: + m_Space: 2147483647 + m_Property: + name: z + m_serializedType: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614986 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d16c6aeaef944094b9a1633041804207, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614978} + m_Children: [] + m_UIPosition: {x: 0, y: 2} + m_UICollapsed: 0 + m_UISuperCollapsed: 0 + m_InputSlots: [] + m_OutputSlots: [] + m_Disabled: 0 + m_ActivationSlot: {fileID: 8926484042661614987} + mode: 0 + axes: 4 +--- !u!114 &8926484042661614987 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b4c11ff25089a324daf359f4b0629b33, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614987} + m_MasterData: + m_Owner: {fileID: 8926484042661614986} + m_Value: + m_Type: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_SerializableObject: True + m_Space: 2147483647 + m_Property: + name: _vfx_enabled + m_serializedType: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614988 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a971fa2e110a0ac42ac1d8dae408704b, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614978} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 0 + m_UISuperCollapsed: 0 + m_InputSlots: + - {fileID: 8926484042661614989} + m_OutputSlots: [] + m_Disabled: 0 + m_ActivationSlot: {fileID: 8926484042661614990} + attribute: alive + Composition: 0 + Source: 0 + Random: 0 + channels: 6 +--- !u!114 &8926484042661614989 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b4c11ff25089a324daf359f4b0629b33, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614989} + m_MasterData: + m_Owner: {fileID: 8926484042661614988} + m_Value: + m_Type: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_SerializableObject: True + m_Space: 2147483647 + m_Property: + name: Alive + m_serializedType: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614990 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b4c11ff25089a324daf359f4b0629b33, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614990} + m_MasterData: + m_Owner: {fileID: 8926484042661614988} + m_Value: + m_Type: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_SerializableObject: True + m_Space: 2147483647 + m_Property: + name: _vfx_enabled + m_serializedType: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614991 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a971fa2e110a0ac42ac1d8dae408704b, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614613} + m_Children: [] + m_UIPosition: {x: 0, y: 201} + m_UICollapsed: 0 + m_UISuperCollapsed: 0 + m_InputSlots: + - {fileID: 8926484042661614992} + m_OutputSlots: [] + m_Disabled: 0 + m_ActivationSlot: {fileID: 8926484042661614993} + attribute: size + Composition: 0 + Source: 0 + Random: 0 + channels: 6 +--- !u!114 &8926484042661614992 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614992} + m_MasterData: + m_Owner: {fileID: 8926484042661614991} + m_Value: + m_Type: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_SerializableObject: 1 + m_Space: 2147483647 + m_Property: + name: Size + m_serializedType: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614993 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b4c11ff25089a324daf359f4b0629b33, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614993} + m_MasterData: + m_Owner: {fileID: 8926484042661614991} + m_Value: + m_Type: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_SerializableObject: True + m_Space: -1 + m_Property: + name: _vfx_enabled + m_serializedType: + m_SerializableType: System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] diff --git a/Tests/SRPTests/Packages/com.unity.testing.visualeffectgraph/Scenes/Repro_UUM_96266.vfx.meta b/Tests/SRPTests/Packages/com.unity.testing.visualeffectgraph/Scenes/Repro_UUM_96266.vfx.meta new file mode 100644 index 00000000000..293710ccc1e --- /dev/null +++ b/Tests/SRPTests/Packages/com.unity.testing.visualeffectgraph/Scenes/Repro_UUM_96266.vfx.meta @@ -0,0 +1,14 @@ +fileFormatVersion: 2 +guid: 4a6299e4e88ae4c4b95deece32c9cf58 +VisualEffectImporter: + externalObjects: {} + serializedVersion: 1 + template: + name: + category: + description: + icon: {instanceID: 0} + thumbnail: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/VisualEffectGraph_HDRP/Assets/AllTests/VFXTests/GraphicsTests/35_ShaderGraphGenerationFTP.unity b/Tests/SRPTests/Projects/VisualEffectGraph_HDRP/Assets/AllTests/VFXTests/GraphicsTests/35_ShaderGraphGenerationFTP.unity index 422e5914074..9cc09914941 100644 --- a/Tests/SRPTests/Projects/VisualEffectGraph_HDRP/Assets/AllTests/VFXTests/GraphicsTests/35_ShaderGraphGenerationFTP.unity +++ b/Tests/SRPTests/Projects/VisualEffectGraph_HDRP/Assets/AllTests/VFXTests/GraphicsTests/35_ShaderGraphGenerationFTP.unity @@ -38,12 +38,12 @@ RenderSettings: m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} - m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 - serializedVersion: 12 + serializedVersion: 13 + m_BakeOnSceneLoad: 0 m_GISettings: serializedVersion: 2 m_BounceScale: 1 @@ -1842,6 +1842,7 @@ Transform: - {fileID: 1403046764} - {fileID: 120434649} - {fileID: 1609398632} + - {fileID: 1640641893} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &573328488 @@ -4595,6 +4596,120 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} +--- !u!1 &1640641892 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1640641893} + - component: {fileID: 1640641895} + - component: {fileID: 1640641894} + m_Layer: 0 + m_Name: Repro_UUM_96266 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1640641893 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1640641892} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0.08720136, y: 1.0582819, z: -0.92092633} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 481649549} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!73398921 &1640641894 +VFXRenderer: + serializedVersion: 1 + m_ObjectHideFlags: 2 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1640641892} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 0 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!2083052967 &1640641895 +VisualEffect: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1640641892} + m_Enabled: 1 + m_Asset: {fileID: 8926484042661614526, guid: 4a6299e4e88ae4c4b95deece32c9cf58, type: 3} + m_InitialEventName: OnPlay + m_InitialEventNameOverriden: 0 + m_StartSeed: 0 + m_ResetSeedOnPlay: 1 + m_AllowInstancing: 1 + m_ResourceVersion: 1 + m_PropertySheet: + m_Float: + m_Array: [] + m_Vector2f: + m_Array: [] + m_Vector3f: + m_Array: [] + m_Vector4f: + m_Array: [] + m_Uint: + m_Array: [] + m_Int: + m_Array: [] + m_Matrix4x4f: + m_Array: [] + m_AnimationCurve: + m_Array: [] + m_Gradient: + m_Array: [] + m_NamedObject: + m_Array: [] + m_Bool: + m_Array: [] --- !u!1 &1689535053 GameObject: m_ObjectHideFlags: 0 diff --git a/Tests/SRPTests/Projects/VisualEffectGraph_URP/Assets/GraphicsTests/104_ShaderGraphGenerationFTP.unity b/Tests/SRPTests/Projects/VisualEffectGraph_URP/Assets/GraphicsTests/104_ShaderGraphGenerationFTP.unity index a5098261fea..09963b6a4ab 100644 --- a/Tests/SRPTests/Projects/VisualEffectGraph_URP/Assets/GraphicsTests/104_ShaderGraphGenerationFTP.unity +++ b/Tests/SRPTests/Projects/VisualEffectGraph_URP/Assets/GraphicsTests/104_ShaderGraphGenerationFTP.unity @@ -38,12 +38,12 @@ RenderSettings: m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} - m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 - serializedVersion: 12 + serializedVersion: 13 + m_BakeOnSceneLoad: 0 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 @@ -867,10 +867,14 @@ MonoBehaviour: stopNaNs: 0 taaSharpenStrength: 0.6 TAAQuality: 1 + taaSharpenMode: 0 + taaRingingReduction: 0 taaHistorySharpening: 0.35 taaAntiFlicker: 0.5 taaMotionVectorRejection: 0 taaAntiHistoryRinging: 0 + taaBaseBlendFactor: 0.875 + taaJitterScale: 1 physicalParameters: m_Iso: 200 m_ShutterSpeed: 0.005 @@ -890,12 +894,23 @@ MonoBehaviour: serializedVersion: 2 m_Bits: 4294967295 hasPersistentHistory: 0 + screenSizeOverride: {x: 0, y: 0, z: 0, w: 0} + screenCoordScaleBias: {x: 0, y: 0, z: 0, w: 0} allowDeepLearningSuperSampling: 1 deepLearningSuperSamplingUseCustomQualitySettings: 0 deepLearningSuperSamplingQuality: 0 deepLearningSuperSamplingUseCustomAttributes: 0 deepLearningSuperSamplingUseOptimalSettings: 1 deepLearningSuperSamplingSharpening: 0 + allowFidelityFX2SuperResolution: 1 + fidelityFX2SuperResolutionUseCustomQualitySettings: 0 + fidelityFX2SuperResolutionQuality: 0 + fidelityFX2SuperResolutionUseCustomAttributes: 0 + fidelityFX2SuperResolutionUseOptimalSettings: 1 + fidelityFX2SuperResolutionEnableSharpening: 0 + fidelityFX2SuperResolutionSharpening: 0 + fsrOverrideSharpness: 0 + fsrSharpness: 0.92 exposureTarget: {fileID: 0} materialMipBias: 0 m_RenderingPathCustomFrameSettings: @@ -911,6 +926,7 @@ MonoBehaviour: sssQualityMode: 0 sssQualityLevel: 0 sssCustomSampleBudget: 20 + sssCustomDownsampleSteps: 0 msaaMode: 9 materialQuality: 0 renderingPathCustomFrameSettingsOverrideMask: @@ -918,7 +934,7 @@ MonoBehaviour: data1: 0 data2: 0 defaultFrameSettings: 0 - m_Version: 8 + m_Version: 9 m_ObsoleteRenderingPath: 0 m_ObsoleteFrameSettings: overrides: 0 @@ -1077,12 +1093,12 @@ MonoBehaviour: m_RequiresColorTexture: 0 m_Version: 2 m_TaaSettings: - quality: 3 - frameInfluence: 0.1 - jitterScale: 1 - mipBias: 0 - varianceClampScale: 0.9 - contrastAdaptiveSharpening: 0 + m_Quality: 3 + m_FrameInfluence: 0.1 + m_JitterScale: 1 + m_MipBias: 0 + m_VarianceClampScale: 0.9 + m_ContrastAdaptiveSharpening: 0 --- !u!1 &360942860 GameObject: m_ObjectHideFlags: 0 @@ -1544,6 +1560,7 @@ Transform: - {fileID: 437600392} - {fileID: 279824745} - {fileID: 639801375} + - {fileID: 672512872} m_Father: {fileID: 0} m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -2069,6 +2086,120 @@ Transform: m_Father: {fileID: 2045132519} m_RootOrder: -2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &672512871 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 672512872} + - component: {fileID: 672512874} + - component: {fileID: 672512873} + m_Layer: 0 + m_Name: Repro_UUM_96266 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &672512872 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 672512871} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0.31467134, y: 1.0582819, z: -0.6057663} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 481649549} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!73398921 &672512873 +VFXRenderer: + serializedVersion: 1 + m_ObjectHideFlags: 2 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 672512871} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 0 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!2083052967 &672512874 +VisualEffect: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 672512871} + m_Enabled: 1 + m_Asset: {fileID: 8926484042661614526, guid: 4a6299e4e88ae4c4b95deece32c9cf58, type: 3} + m_InitialEventName: OnPlay + m_InitialEventNameOverriden: 0 + m_StartSeed: 0 + m_ResetSeedOnPlay: 0 + m_AllowInstancing: 1 + m_ResourceVersion: 1 + m_PropertySheet: + m_Float: + m_Array: [] + m_Vector2f: + m_Array: [] + m_Vector3f: + m_Array: [] + m_Vector4f: + m_Array: [] + m_Uint: + m_Array: [] + m_Int: + m_Array: [] + m_Matrix4x4f: + m_Array: [] + m_AnimationCurve: + m_Array: [] + m_Gradient: + m_Array: [] + m_NamedObject: + m_Array: [] + m_Bool: + m_Array: [] --- !u!1 &682661648 GameObject: m_ObjectHideFlags: 0 From 8dbead70500332f1923eb7546eb653fc1a5c1bad Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Fri, 7 Mar 2025 06:26:10 +0000 Subject: [PATCH 24/41] [Port] [2022.3] [2d] Fix Case UUM-90726 --- .../Editor/2D/ShapeEditor/EditorTool/PathEditorTool.cs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Packages/com.unity.render-pipelines.universal/Editor/2D/ShapeEditor/EditorTool/PathEditorTool.cs b/Packages/com.unity.render-pipelines.universal/Editor/2D/ShapeEditor/EditorTool/PathEditorTool.cs index d4e1a24d786..9ab3e1d260d 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/2D/ShapeEditor/EditorTool/PathEditorTool.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/2D/ShapeEditor/EditorTool/PathEditorTool.cs @@ -380,6 +380,8 @@ void IDuringSceneGuiTool.DuringSceneGui(SceneView sceneView) { if (m_GUIState.eventType == EventType.Layout) m_Controller.ClearClosestPath(); + else if (m_GUIState.eventType == EventType.ValidateCommand) + return; m_RectSelector.OnGUI(); From b94293b9f0b442f708d93e49e13b89e6b9e3e36e Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Mon, 10 Mar 2025 14:12:17 +0000 Subject: [PATCH 25/41] [Port] [2022.3] [UUM-85456] Fix missing fog parameters in sprite subtargets --- .../ShaderGraph/Targets/UniversalSpriteCustomLitSubTarget.cs | 3 ++- .../2D/ShaderGraph/Targets/UniversalSpriteLitSubTarget.cs | 3 ++- .../2D/ShaderGraph/Targets/UniversalSpriteUnlitSubTarget.cs | 3 ++- .../Editor/ShaderGraph/Targets/UniversalTarget.cs | 1 + 4 files changed, 7 insertions(+), 3 deletions(-) diff --git a/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/UniversalSpriteCustomLitSubTarget.cs b/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/UniversalSpriteCustomLitSubTarget.cs index f2e8ff752bc..d286891d075 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/UniversalSpriteCustomLitSubTarget.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/UniversalSpriteCustomLitSubTarget.cs @@ -111,7 +111,7 @@ public static PassDescriptor Lit(UniversalTarget target) // Conditional State renderStates = CoreRenderStates.Default, pragmas = CorePragmas._2DDefault, - defines = new DefineCollection(), + defines = new DefineCollection() { CoreDefines.UseFragmentFog }, keywords = SpriteLitKeywords.Lit, includes = SpriteLitIncludes.Lit, }; @@ -181,6 +181,7 @@ public static PassDescriptor Normal(UniversalTarget target) // Conditional State renderStates = CoreRenderStates.Default, pragmas = CorePragmas._2DDefault, + defines = new DefineCollection() { CoreDefines.UseFragmentFog }, includes = SpriteLitIncludes.Forward, // Custom Interpolator Support diff --git a/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/UniversalSpriteLitSubTarget.cs b/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/UniversalSpriteLitSubTarget.cs index c453ad3325f..f2881dec68b 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/UniversalSpriteLitSubTarget.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/UniversalSpriteLitSubTarget.cs @@ -134,7 +134,7 @@ public static PassDescriptor Lit(UniversalTarget target) // Conditional State renderStates = CoreRenderStates.Default, pragmas = CorePragmas._2DDefault, - defines = new DefineCollection(), + defines = new DefineCollection() { CoreDefines.UseFragmentFog }, keywords = SpriteLitKeywords.Lit, includes = SpriteLitIncludes.Lit, @@ -210,6 +210,7 @@ public static PassDescriptor Normal(UniversalTarget target) // Conditional State renderStates = CoreRenderStates.Default, pragmas = CorePragmas._2DDefault, + defines = new DefineCollection() { CoreDefines.UseFragmentFog }, includes = SpriteLitIncludes.Forward, // Custom Interpolator Support diff --git a/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/UniversalSpriteUnlitSubTarget.cs b/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/UniversalSpriteUnlitSubTarget.cs index bf7239a23f2..448f04dff32 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/UniversalSpriteUnlitSubTarget.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/2D/ShaderGraph/Targets/UniversalSpriteUnlitSubTarget.cs @@ -129,7 +129,7 @@ public static PassDescriptor Unlit(UniversalTarget target) // Conditional State renderStates = CoreRenderStates.Default, pragmas = CorePragmas._2DDefault, - defines = new DefineCollection(), + defines = new DefineCollection() { CoreDefines.UseFragmentFog }, keywords = SpriteUnlitKeywords.Unlit, includes = SpriteUnlitIncludes.Unlit, @@ -166,6 +166,7 @@ public static PassDescriptor Unlit(UniversalTarget target) // Conditional State renderStates = CoreRenderStates.Default, pragmas = CorePragmas._2DDefault, + defines = new DefineCollection() { CoreDefines.UseFragmentFog }, keywords = SpriteUnlitKeywords.Unlit, includes = SpriteUnlitIncludes.Unlit, diff --git a/Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Targets/UniversalTarget.cs b/Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Targets/UniversalTarget.cs index 14086022193..66ad2b2badc 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Targets/UniversalTarget.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Targets/UniversalTarget.cs @@ -1508,6 +1508,7 @@ static class CorePragmas { Pragma.Target(ShaderModel.Target20) }, { Pragma.ExcludeRenderers(new[] { Platform.D3D9 }) }, { Pragma.MultiCompileInstancing }, + { Pragma.MultiCompileFog }, { Pragma.Vertex("vert") }, { Pragma.Fragment("frag") }, }; From 37a88d1dec4a6ed9d4390973cb958f5c6c6237d6 Mon Sep 17 00:00:00 2001 From: Julien Amsellem Date: Mon, 10 Mar 2025 14:12:18 +0000 Subject: [PATCH 26/41] [Port][2022.3][VFX] Various vfx toolbar tweaks --- .../UIResources/VFX/EditStolen.png.meta | 48 ++++++--- .../Editor/UIResources/VFX/Execution.png.meta | 96 ++++++++++++++--- .../UIResources/VFX/ParticleStrips.png.meta | 26 +++-- .../VFX/ParticleStrips@2x.png.meta | 46 +++++--- .../Editor/UIResources/VFX/Particles.png.meta | 96 ++++++++++++++--- .../UIResources/VFX/Particles@2x.png.meta | 96 ++++++++++++++--- .../Editor/UIResources/VFX/Pause.png.meta | 45 +++++--- .../Editor/UIResources/VFX/Play.png.meta | 45 +++++--- .../Editor/UIResources/VFX/Restart.png.meta | 45 +++++--- .../Editor/UIResources/VFX/Step.png.meta | 45 +++++--- .../Editor/UIResources/VFX/Stop.png.meta | 45 +++++--- .../UIResources/VFX/bitfield-bit.png.meta | 27 +++-- .../UIResources/VFX/bitfield-bkgnd.png.meta | 27 +++-- .../VFX/cat-background-dark.png.meta | 27 +++-- .../VFX/cat-background-light.png.meta | 27 +++-- .../Editor/UIResources/VFX/compile.png.meta | 36 +++++-- .../UIResources/VFX/compile@2x.png.meta | 36 +++++-- .../Editor/UIResources/VFX/controls.png.meta | 36 +++++-- .../UIResources/VFX/controls@2x.png.meta | 36 +++++-- .../Editor/UIResources/VFX/d_Record.png.meta | 42 +++++--- .../Editor/UIResources/VFX/d_compile.png.meta | 36 +++++-- .../UIResources/VFX/d_compile@2x.png.meta | 36 +++++-- .../UIResources/VFX/d_controls.png.meta | 36 +++++-- .../UIResources/VFX/d_controls@2x.png.meta | 36 +++++-- .../UIResources/VFX/d_subgraph-block.png.meta | 33 ++++-- .../VFX/d_subgraph-operator.png.meta | 33 ++++-- .../VFX/d_variableswindow.png.meta | 36 +++++-- .../VFX/d_variableswindow@2x.png.meta | 36 +++++-- .../UIResources/VFX/exposed-dot.png.meta | 59 +++++++--- .../UIResources/VFX/marker_In1x.png.meta | 15 ++- .../UIResources/VFX/marker_In2x.png.meta | 15 ++- .../UIResources/VFX/marker_Out1x.png.meta | 15 ++- .../UIResources/VFX/marker_Out2x.png.meta | 15 ++- .../UIResources/VFX/marker_Single1x.png.meta | 15 ++- .../UIResources/VFX/marker_Single2x.png.meta | 15 ++- .../Editor/UIResources/VFX/minus.png.meta | 48 ++++++--- .../UIResources/VFX/output-dot.png.meta | 39 +++++-- .../Editor/UIResources/VFX/plus.png.meta | 48 ++++++--- .../UIResources/VFX/spacelocal.png.meta | 96 ++++++++++++++--- .../VFX/spacelocal_hovered.png.meta | 43 +++++--- .../Editor/UIResources/VFX/spacenone.png.meta | 102 ++++++++++++++---- .../VFX/spacenone_hovered.png.meta | 43 +++++--- .../UIResources/VFX/spaceworld.png.meta | 96 ++++++++++++++--- .../VFX/spaceworld_hovered.png.meta | 43 +++++--- .../UIResources/VFX/subgraph-block.png.meta | 33 ++++-- .../VFX/subgraph-operator.png.meta | 33 ++++-- .../UIResources/VFX/title-local.png.meta | 96 ++++++++++++++--- .../UIResources/VFX/title-local@2x.png.meta | 96 ++++++++++++++--- .../UIResources/VFX/title-world.png.meta | 98 +++++++++++++---- .../UIResources/VFX/title-world@2x.png.meta | 98 +++++++++++++---- .../UIResources/VFX/variableswindow.png.meta | 36 +++++-- .../VFX/variableswindow@2x.png.meta | 36 +++++-- .../VFX/vfx_graph_icon_gray_dark.png.meta | 45 +++++--- .../VFX/vfx_graph_icon_gray_light.png.meta | 45 +++++--- .../Editor/UIResources/uss/VFXToolbar.uss | 2 +- .../Editor/UIResources/uss/VFXView.uss | 23 +++- 56 files changed, 1946 insertions(+), 611 deletions(-) diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/EditStolen.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/EditStolen.png.meta index 649b918e1fc..58501f9e94a 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/EditStolen.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/EditStolen.png.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 guid: 3aadaa8d8c0ae984c9dd23e939a8b7d5 TextureImporter: - fileIDToRecycleName: {} + internalIDToNameTable: [] externalObjects: {} - serializedVersion: 5 + serializedVersion: 13 mipmaps: mipMapMode: 0 enableMipMap: 0 @@ -20,7 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -29,12 +34,12 @@ TextureImporter: maxTextureSize: 2048 textureSettings: serializedVersion: 2 - filterMode: -1 + filterMode: 1 aniso: 1 - mipBias: -1 + mipBias: 0 wrapU: 1 wrapV: 1 - wrapW: -1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -43,19 +48,26 @@ TextureImporter: spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - - serializedVersion: 2 + - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 @@ -65,8 +77,10 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 @@ -76,8 +90,10 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 buildTarget: iPhone maxTextureSize: 2048 resizeAlgorithm: 0 @@ -87,8 +103,10 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 buildTarget: Windows Store Apps maxTextureSize: 2048 resizeAlgorithm: 0 @@ -98,7 +116,9 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 spriteSheet: serializedVersion: 2 sprites: [] @@ -106,11 +126,15 @@ TextureImporter: physicsShape: [] bones: [] spriteID: + internalID: 0 vertices: [] indices: edges: [] weights: [] - spritePackingTag: + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Execution.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Execution.png.meta index de9a672e408..8585485c880 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Execution.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Execution.png.meta @@ -1,14 +1,13 @@ fileFormatVersion: 2 guid: 746e7bd2948ee424aa581a91b823b535 -timeCreated: 1490375094 -licenseType: Pro TextureImporter: - fileIDToRecycleName: {} - serializedVersion: 4 + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 mipmaps: mipMapMode: 0 enableMipMap: 0 - sRGBTexture: 0 + sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 @@ -21,7 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -32,7 +36,7 @@ TextureImporter: serializedVersion: 2 filterMode: 1 aniso: 1 - mipBias: -1 + mipBias: 0 wrapU: 1 wrapV: 1 wrapW: 1 @@ -44,87 +48,145 @@ TextureImporter: spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - - buildTarget: DefaultTexturePlatform + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Standalone + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: iPhone + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: iPhone maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: tvOS + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: tvOS maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Windows Store Apps + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: Windows Store Apps maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: WebGL + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: WebGL maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: XboxOne + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: XboxOne maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Nintendo Switch + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: Nintendo Switch maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] - spritePackingTag: + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/ParticleStrips.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/ParticleStrips.png.meta index d980e5124d1..4a8e3e737d7 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/ParticleStrips.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/ParticleStrips.png.meta @@ -3,7 +3,7 @@ guid: 2913ec7d4622250469a8d03b171e292e TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 10 + serializedVersion: 13 mipmaps: mipMapMode: 0 enableMipMap: 0 @@ -20,9 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -31,12 +34,12 @@ TextureImporter: maxTextureSize: 2048 textureSettings: serializedVersion: 2 - filterMode: -1 + filterMode: 1 aniso: 1 - mipBias: -100 + mipBias: 0 wrapU: 1 wrapV: 1 - wrapW: -1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -49,26 +52,32 @@ TextureImporter: spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 - textureCompression: 1 + textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -81,6 +90,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -96,9 +106,9 @@ TextureImporter: edges: [] weights: [] secondaryTextures: [] - spritePackingTag: + nameFileIdTable: {} + mipmapLimitGroupName: pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/ParticleStrips@2x.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/ParticleStrips@2x.png.meta index df83236e738..d7f439b8d11 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/ParticleStrips@2x.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/ParticleStrips@2x.png.meta @@ -3,10 +3,10 @@ guid: de530d026654cde48a2d1d5735c979ad TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 10 + serializedVersion: 13 mipmaps: mipMapMode: 0 - enableMipMap: 1 + enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 @@ -20,9 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -31,13 +34,13 @@ TextureImporter: maxTextureSize: 2048 textureSettings: serializedVersion: 2 - filterMode: -1 - aniso: -1 - mipBias: -100 - wrapU: -1 - wrapV: -1 - wrapW: -1 - nPOTScale: 1 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 0 @@ -51,24 +54,43 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 2 textureShape: 1 singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -84,9 +106,9 @@ TextureImporter: edges: [] weights: [] secondaryTextures: [] - spritePackingTag: + nameFileIdTable: {} + mipmapLimitGroupName: pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Particles.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Particles.png.meta index 567eda6b9f6..f244749973d 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Particles.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Particles.png.meta @@ -1,14 +1,13 @@ fileFormatVersion: 2 guid: 9155901fa891f5a4dbf8c0d58a25ff2b -timeCreated: 1490375094 -licenseType: Pro TextureImporter: - fileIDToRecycleName: {} - serializedVersion: 4 + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 mipmaps: mipMapMode: 0 enableMipMap: 0 - sRGBTexture: 0 + sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 @@ -21,7 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -32,7 +36,7 @@ TextureImporter: serializedVersion: 2 filterMode: 1 aniso: 1 - mipBias: -1 + mipBias: 0 wrapU: 1 wrapV: 1 wrapW: 1 @@ -44,87 +48,145 @@ TextureImporter: spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - - buildTarget: DefaultTexturePlatform + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Standalone + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: iPhone + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: iPhone maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: tvOS + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: tvOS maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Windows Store Apps + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: Windows Store Apps maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: WebGL + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: WebGL maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: XboxOne + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: XboxOne maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Nintendo Switch + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: Nintendo Switch maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] - spritePackingTag: + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Particles@2x.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Particles@2x.png.meta index 9e736b9896d..4a10deeef95 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Particles@2x.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Particles@2x.png.meta @@ -1,14 +1,13 @@ fileFormatVersion: 2 guid: a788682fa62292b41917b1a00e14c709 -timeCreated: 1490375094 -licenseType: Pro TextureImporter: - fileIDToRecycleName: {} - serializedVersion: 4 + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 mipmaps: mipMapMode: 0 enableMipMap: 0 - sRGBTexture: 0 + sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 @@ -21,7 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -32,7 +36,7 @@ TextureImporter: serializedVersion: 2 filterMode: 1 aniso: 1 - mipBias: -1 + mipBias: 0 wrapU: 1 wrapV: 1 wrapW: 1 @@ -44,87 +48,145 @@ TextureImporter: spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - - buildTarget: DefaultTexturePlatform + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Standalone + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: iPhone + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: iPhone maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: tvOS + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: tvOS maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Windows Store Apps + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: Windows Store Apps maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: WebGL + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: WebGL maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: XboxOne + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: XboxOne maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Nintendo Switch + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: Nintendo Switch maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] - spritePackingTag: + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Pause.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Pause.png.meta index 72eb1ae0be9..47d6b1baa2a 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Pause.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Pause.png.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 guid: d89be2067d175544c866c22da3981e09 TextureImporter: - fileIDToRecycleName: {} + internalIDToNameTable: [] externalObjects: {} - serializedVersion: 6 + serializedVersion: 13 mipmaps: mipMapMode: 0 enableMipMap: 0 @@ -20,9 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -31,12 +34,12 @@ TextureImporter: maxTextureSize: 2048 textureSettings: serializedVersion: 2 - filterMode: -1 + filterMode: 1 aniso: 1 - mipBias: -100 + mipBias: 0 wrapU: 1 wrapV: 1 - wrapW: -1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -49,27 +52,35 @@ TextureImporter: spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - - serializedVersion: 2 + - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 - textureCompression: 1 + textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 @@ -79,8 +90,10 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 buildTarget: iPhone maxTextureSize: 2048 resizeAlgorithm: 0 @@ -90,8 +103,10 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 buildTarget: Windows Store Apps maxTextureSize: 2048 resizeAlgorithm: 0 @@ -101,7 +116,9 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 spriteSheet: serializedVersion: 2 sprites: [] @@ -109,11 +126,15 @@ TextureImporter: physicsShape: [] bones: [] spriteID: + internalID: 0 vertices: [] indices: edges: [] weights: [] - spritePackingTag: + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Play.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Play.png.meta index b9946adc693..d3c6aeb16a9 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Play.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Play.png.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 guid: 99ae18e2d3c220f46952d11888c112ab TextureImporter: - fileIDToRecycleName: {} + internalIDToNameTable: [] externalObjects: {} - serializedVersion: 6 + serializedVersion: 13 mipmaps: mipMapMode: 0 enableMipMap: 0 @@ -20,9 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -31,12 +34,12 @@ TextureImporter: maxTextureSize: 2048 textureSettings: serializedVersion: 2 - filterMode: -1 + filterMode: 1 aniso: 1 - mipBias: -100 + mipBias: 0 wrapU: 1 wrapV: 1 - wrapW: -1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -49,27 +52,35 @@ TextureImporter: spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - - serializedVersion: 2 + - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 - textureCompression: 1 + textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 @@ -79,8 +90,10 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 buildTarget: iPhone maxTextureSize: 2048 resizeAlgorithm: 0 @@ -90,8 +103,10 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 buildTarget: Windows Store Apps maxTextureSize: 2048 resizeAlgorithm: 0 @@ -101,7 +116,9 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 spriteSheet: serializedVersion: 2 sprites: [] @@ -109,11 +126,15 @@ TextureImporter: physicsShape: [] bones: [] spriteID: + internalID: 0 vertices: [] indices: edges: [] weights: [] - spritePackingTag: + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Restart.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Restart.png.meta index c6b8d267b4a..1c64a223e77 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Restart.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Restart.png.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 guid: e9c35c7f5cf76a341a95f55bfe59cb05 TextureImporter: - fileIDToRecycleName: {} + internalIDToNameTable: [] externalObjects: {} - serializedVersion: 6 + serializedVersion: 13 mipmaps: mipMapMode: 0 enableMipMap: 0 @@ -20,9 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -31,12 +34,12 @@ TextureImporter: maxTextureSize: 2048 textureSettings: serializedVersion: 2 - filterMode: -1 + filterMode: 1 aniso: 1 - mipBias: -100 + mipBias: 0 wrapU: 1 wrapV: 1 - wrapW: -1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -49,27 +52,35 @@ TextureImporter: spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - - serializedVersion: 2 + - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 - textureCompression: 1 + textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 @@ -79,8 +90,10 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 buildTarget: iPhone maxTextureSize: 2048 resizeAlgorithm: 0 @@ -90,8 +103,10 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 buildTarget: Windows Store Apps maxTextureSize: 2048 resizeAlgorithm: 0 @@ -101,7 +116,9 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 spriteSheet: serializedVersion: 2 sprites: [] @@ -109,11 +126,15 @@ TextureImporter: physicsShape: [] bones: [] spriteID: + internalID: 0 vertices: [] indices: edges: [] weights: [] - spritePackingTag: + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Step.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Step.png.meta index 72837a39e65..062fdb06f8b 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Step.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Step.png.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 guid: 907c6892149251441896b47345f43418 TextureImporter: - fileIDToRecycleName: {} + internalIDToNameTable: [] externalObjects: {} - serializedVersion: 6 + serializedVersion: 13 mipmaps: mipMapMode: 0 enableMipMap: 0 @@ -20,9 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -31,12 +34,12 @@ TextureImporter: maxTextureSize: 2048 textureSettings: serializedVersion: 2 - filterMode: -1 + filterMode: 1 aniso: 1 - mipBias: -100 + mipBias: 0 wrapU: 1 wrapV: 1 - wrapW: -1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -49,27 +52,35 @@ TextureImporter: spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - - serializedVersion: 2 + - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 - textureCompression: 1 + textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 @@ -79,8 +90,10 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 buildTarget: iPhone maxTextureSize: 2048 resizeAlgorithm: 0 @@ -90,8 +103,10 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 buildTarget: Windows Store Apps maxTextureSize: 2048 resizeAlgorithm: 0 @@ -101,7 +116,9 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 spriteSheet: serializedVersion: 2 sprites: [] @@ -109,11 +126,15 @@ TextureImporter: physicsShape: [] bones: [] spriteID: + internalID: 0 vertices: [] indices: edges: [] weights: [] - spritePackingTag: + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Stop.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Stop.png.meta index 3747a325219..92ed77f649e 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Stop.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/Stop.png.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 guid: 3abdb569ef6194245afa80549de15113 TextureImporter: - fileIDToRecycleName: {} + internalIDToNameTable: [] externalObjects: {} - serializedVersion: 6 + serializedVersion: 13 mipmaps: mipMapMode: 0 enableMipMap: 0 @@ -20,9 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -31,12 +34,12 @@ TextureImporter: maxTextureSize: 2048 textureSettings: serializedVersion: 2 - filterMode: -1 + filterMode: 1 aniso: 1 - mipBias: -100 + mipBias: 0 wrapU: 1 wrapV: 1 - wrapW: -1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -49,27 +52,35 @@ TextureImporter: spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - - serializedVersion: 2 + - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 - textureCompression: 1 + textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 @@ -79,8 +90,10 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 buildTarget: iPhone maxTextureSize: 2048 resizeAlgorithm: 0 @@ -90,8 +103,10 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 buildTarget: Windows Store Apps maxTextureSize: 2048 resizeAlgorithm: 0 @@ -101,7 +116,9 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 spriteSheet: serializedVersion: 2 sprites: [] @@ -109,11 +126,15 @@ TextureImporter: physicsShape: [] bones: [] spriteID: + internalID: 0 vertices: [] indices: edges: [] weights: [] - spritePackingTag: + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/bitfield-bit.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/bitfield-bit.png.meta index 6ef2edbc620..b62c1ce7a63 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/bitfield-bit.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/bitfield-bit.png.meta @@ -3,7 +3,7 @@ guid: dba25e3261c16e34b848637315b82d6d TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 10 + serializedVersion: 13 mipmaps: mipMapMode: 0 enableMipMap: 0 @@ -20,9 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -31,12 +34,12 @@ TextureImporter: maxTextureSize: 2048 textureSettings: serializedVersion: 2 - filterMode: -1 + filterMode: 1 aniso: 1 - mipBias: -100 + mipBias: 0 wrapU: 1 wrapV: 1 - wrapW: -1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -49,14 +52,20 @@ TextureImporter: spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform @@ -68,6 +77,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -80,8 +90,9 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - forceMaximumCompressionQuality_BC6H_BC7: 1 + forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: serializedVersion: 2 sprites: [] @@ -95,9 +106,9 @@ TextureImporter: edges: [] weights: [] secondaryTextures: [] - spritePackingTag: + nameFileIdTable: {} + mipmapLimitGroupName: pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/bitfield-bkgnd.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/bitfield-bkgnd.png.meta index c5029af9e22..121b2df5b6f 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/bitfield-bkgnd.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/bitfield-bkgnd.png.meta @@ -3,7 +3,7 @@ guid: e9f17ea2d74564042b3d527ab3cbc14c TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 10 + serializedVersion: 13 mipmaps: mipMapMode: 0 enableMipMap: 0 @@ -20,9 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -31,12 +34,12 @@ TextureImporter: maxTextureSize: 2048 textureSettings: serializedVersion: 2 - filterMode: -1 + filterMode: 1 aniso: 1 - mipBias: -100 + mipBias: 0 wrapU: 1 wrapV: 1 - wrapW: -1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -49,14 +52,20 @@ TextureImporter: spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform @@ -68,6 +77,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -80,8 +90,9 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - forceMaximumCompressionQuality_BC6H_BC7: 1 + forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: serializedVersion: 2 sprites: [] @@ -95,9 +106,9 @@ TextureImporter: edges: [] weights: [] secondaryTextures: [] - spritePackingTag: + nameFileIdTable: {} + mipmapLimitGroupName: pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/cat-background-dark.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/cat-background-dark.png.meta index e5c707eddd3..438eae54e38 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/cat-background-dark.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/cat-background-dark.png.meta @@ -3,7 +3,7 @@ guid: d333db22a2cc31e48a5aba38045265db TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 10 + serializedVersion: 13 mipmaps: mipMapMode: 0 enableMipMap: 0 @@ -20,9 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -31,12 +34,12 @@ TextureImporter: maxTextureSize: 2048 textureSettings: serializedVersion: 2 - filterMode: -1 + filterMode: 1 aniso: 1 - mipBias: -100 + mipBias: 0 wrapU: 1 wrapV: 1 - wrapW: -1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -49,14 +52,20 @@ TextureImporter: spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform @@ -68,6 +77,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -80,8 +90,9 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - forceMaximumCompressionQuality_BC6H_BC7: 1 + forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: serializedVersion: 2 sprites: [] @@ -95,9 +106,9 @@ TextureImporter: edges: [] weights: [] secondaryTextures: [] - spritePackingTag: + nameFileIdTable: {} + mipmapLimitGroupName: pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/cat-background-light.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/cat-background-light.png.meta index 8efc080d2d4..5db64160d46 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/cat-background-light.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/cat-background-light.png.meta @@ -3,7 +3,7 @@ guid: ccda2131ef139a440a193699457e1561 TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 10 + serializedVersion: 13 mipmaps: mipMapMode: 0 enableMipMap: 0 @@ -20,9 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -31,12 +34,12 @@ TextureImporter: maxTextureSize: 2048 textureSettings: serializedVersion: 2 - filterMode: -1 + filterMode: 1 aniso: 1 - mipBias: -100 + mipBias: 0 wrapU: 1 wrapV: 1 - wrapW: -1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -49,14 +52,20 @@ TextureImporter: spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform @@ -68,6 +77,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -80,8 +90,9 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - forceMaximumCompressionQuality_BC6H_BC7: 1 + forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: serializedVersion: 2 sprites: [] @@ -95,9 +106,9 @@ TextureImporter: edges: [] weights: [] secondaryTextures: [] - spritePackingTag: + nameFileIdTable: {} + mipmapLimitGroupName: pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/compile.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/compile.png.meta index 9384bc206c9..04b69b830de 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/compile.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/compile.png.meta @@ -3,10 +3,10 @@ guid: b85cbd2821b0b4e4faca01ed6a1d7e2b TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 0 - enableMipMap: 1 + enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 @@ -20,11 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 - ignoreMasterTextureLimit: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -36,10 +37,10 @@ TextureImporter: filterMode: 1 aniso: 1 mipBias: 0 - wrapU: 0 - wrapV: 0 - wrapW: 0 - nPOTScale: 1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 0 @@ -53,7 +54,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 2 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 @@ -63,17 +64,33 @@ TextureImporter: textureFormatSet: 0 ignorePngGamma: 0 applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -90,9 +107,8 @@ TextureImporter: weights: [] secondaryTextures: [] nameFileIdTable: {} - spritePackingTag: + mipmapLimitGroupName: pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/compile@2x.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/compile@2x.png.meta index 441e4720761..d2d79cd7d3b 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/compile@2x.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/compile@2x.png.meta @@ -3,10 +3,10 @@ guid: 354d03c57011c6940b051ed7112c471e TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 0 - enableMipMap: 1 + enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 @@ -20,11 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 - ignoreMasterTextureLimit: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -36,10 +37,10 @@ TextureImporter: filterMode: 1 aniso: 1 mipBias: 0 - wrapU: 0 - wrapV: 0 - wrapW: 0 - nPOTScale: 1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 0 @@ -53,7 +54,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 2 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 @@ -63,17 +64,33 @@ TextureImporter: textureFormatSet: 0 ignorePngGamma: 0 applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -90,9 +107,8 @@ TextureImporter: weights: [] secondaryTextures: [] nameFileIdTable: {} - spritePackingTag: + mipmapLimitGroupName: pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/controls.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/controls.png.meta index 92101bdf35b..d8cf11af338 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/controls.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/controls.png.meta @@ -3,10 +3,10 @@ guid: 31c4bf8455a0ca140b48eb02e2786660 TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 0 - enableMipMap: 1 + enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 @@ -20,11 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 - ignoreMasterTextureLimit: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -36,10 +37,10 @@ TextureImporter: filterMode: 1 aniso: 1 mipBias: 0 - wrapU: 0 - wrapV: 0 - wrapW: 0 - nPOTScale: 1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 0 @@ -53,7 +54,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 2 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 @@ -63,17 +64,33 @@ TextureImporter: textureFormatSet: 0 ignorePngGamma: 0 applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -90,9 +107,8 @@ TextureImporter: weights: [] secondaryTextures: [] nameFileIdTable: {} - spritePackingTag: + mipmapLimitGroupName: pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/controls@2x.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/controls@2x.png.meta index 8491222d479..4a08aa0f27c 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/controls@2x.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/controls@2x.png.meta @@ -3,10 +3,10 @@ guid: 685a04a898e871240a54696825b3cac3 TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 0 - enableMipMap: 1 + enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 @@ -20,11 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 - ignoreMasterTextureLimit: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -36,10 +37,10 @@ TextureImporter: filterMode: 1 aniso: 1 mipBias: 0 - wrapU: 0 - wrapV: 0 - wrapW: 0 - nPOTScale: 1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 0 @@ -53,7 +54,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 2 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 @@ -63,17 +64,33 @@ TextureImporter: textureFormatSet: 0 ignorePngGamma: 0 applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -90,9 +107,8 @@ TextureImporter: weights: [] secondaryTextures: [] nameFileIdTable: {} - spritePackingTag: + mipmapLimitGroupName: pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_Record.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_Record.png.meta index cd476ea2ba3..0721931f519 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_Record.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_Record.png.meta @@ -3,10 +3,10 @@ guid: 3f1f54283d20b9049ab1d36687d131c3 TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 0 - enableMipMap: 1 + enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 @@ -20,10 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -32,13 +34,13 @@ TextureImporter: maxTextureSize: 2048 textureSettings: serializedVersion: 2 - filterMode: -1 - aniso: -1 - mipBias: -100 - wrapU: -1 - wrapV: -1 - wrapW: -1 - nPOTScale: 1 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 0 @@ -52,7 +54,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 2 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 @@ -62,17 +64,33 @@ TextureImporter: textureFormatSet: 0 ignorePngGamma: 0 applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -88,9 +106,9 @@ TextureImporter: edges: [] weights: [] secondaryTextures: [] - spritePackingTag: + nameFileIdTable: {} + mipmapLimitGroupName: pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_compile.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_compile.png.meta index c2b295e7f12..940304d3a7a 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_compile.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_compile.png.meta @@ -3,10 +3,10 @@ guid: b82875323935ce448a2dac7858857072 TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 0 - enableMipMap: 1 + enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 @@ -20,11 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 - ignoreMasterTextureLimit: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -36,10 +37,10 @@ TextureImporter: filterMode: 1 aniso: 1 mipBias: 0 - wrapU: 0 - wrapV: 0 - wrapW: 0 - nPOTScale: 1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 0 @@ -53,7 +54,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 2 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 @@ -63,17 +64,33 @@ TextureImporter: textureFormatSet: 0 ignorePngGamma: 0 applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -90,9 +107,8 @@ TextureImporter: weights: [] secondaryTextures: [] nameFileIdTable: {} - spritePackingTag: + mipmapLimitGroupName: pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_compile@2x.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_compile@2x.png.meta index 5575b88317c..bd5d7a8d265 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_compile@2x.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_compile@2x.png.meta @@ -3,10 +3,10 @@ guid: 851a1e412cfa7be4d8f3f96f24018d6a TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 0 - enableMipMap: 1 + enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 @@ -20,11 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 - ignoreMasterTextureLimit: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -36,10 +37,10 @@ TextureImporter: filterMode: 1 aniso: 1 mipBias: 0 - wrapU: 0 - wrapV: 0 - wrapW: 0 - nPOTScale: 1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 0 @@ -53,7 +54,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 2 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 @@ -63,17 +64,33 @@ TextureImporter: textureFormatSet: 0 ignorePngGamma: 0 applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -90,9 +107,8 @@ TextureImporter: weights: [] secondaryTextures: [] nameFileIdTable: {} - spritePackingTag: + mipmapLimitGroupName: pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_controls.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_controls.png.meta index 442376099d3..94c425d0e04 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_controls.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_controls.png.meta @@ -3,10 +3,10 @@ guid: edd2bcbfdf29c804ab00c6772315a4e2 TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 0 - enableMipMap: 1 + enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 @@ -20,11 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 - ignoreMasterTextureLimit: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -36,10 +37,10 @@ TextureImporter: filterMode: 1 aniso: 1 mipBias: 0 - wrapU: 0 - wrapV: 0 - wrapW: 0 - nPOTScale: 1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 0 @@ -53,7 +54,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 2 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 @@ -63,17 +64,33 @@ TextureImporter: textureFormatSet: 0 ignorePngGamma: 0 applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -90,9 +107,8 @@ TextureImporter: weights: [] secondaryTextures: [] nameFileIdTable: {} - spritePackingTag: + mipmapLimitGroupName: pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_controls@2x.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_controls@2x.png.meta index 78d5a1ab7d4..14197c6f117 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_controls@2x.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_controls@2x.png.meta @@ -3,10 +3,10 @@ guid: 6688a50f01abcae4e8fac37d5e7f17f3 TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 0 - enableMipMap: 1 + enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 @@ -20,11 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 - ignoreMasterTextureLimit: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -36,10 +37,10 @@ TextureImporter: filterMode: 1 aniso: 1 mipBias: 0 - wrapU: 0 - wrapV: 0 - wrapW: 0 - nPOTScale: 1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 0 @@ -53,7 +54,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 2 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 @@ -63,17 +64,33 @@ TextureImporter: textureFormatSet: 0 ignorePngGamma: 0 applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -90,9 +107,8 @@ TextureImporter: weights: [] secondaryTextures: [] nameFileIdTable: {} - spritePackingTag: + mipmapLimitGroupName: pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_subgraph-block.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_subgraph-block.png.meta index 748b3b48c92..53a4f48abe9 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_subgraph-block.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_subgraph-block.png.meta @@ -3,10 +3,10 @@ guid: a10a1da6ddecf104dad9dd2dad5f2bcd TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 0 - enableMipMap: 1 + enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 @@ -25,7 +25,7 @@ TextureImporter: streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 - ignoreMasterTextureLimit: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -37,10 +37,10 @@ TextureImporter: filterMode: 1 aniso: 1 mipBias: 0 - wrapU: 0 - wrapV: 0 - wrapW: 0 - nPOTScale: 1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 0 @@ -54,7 +54,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 2 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 @@ -65,17 +65,32 @@ TextureImporter: ignorePngGamma: 0 applyGammaDecoding: 0 swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -92,7 +107,7 @@ TextureImporter: weights: [] secondaryTextures: [] nameFileIdTable: {} - spritePackingTag: + mipmapLimitGroupName: pSDRemoveMatte: 0 userData: assetBundleName: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_subgraph-operator.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_subgraph-operator.png.meta index 53046d7543f..deea7cf075d 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_subgraph-operator.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_subgraph-operator.png.meta @@ -3,10 +3,10 @@ guid: 614517b5ba3baa84e904d882127bfdf4 TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 0 - enableMipMap: 1 + enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 @@ -25,7 +25,7 @@ TextureImporter: streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 - ignoreMasterTextureLimit: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -37,10 +37,10 @@ TextureImporter: filterMode: 1 aniso: 1 mipBias: 0 - wrapU: 0 - wrapV: 0 - wrapW: 0 - nPOTScale: 1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 0 @@ -54,7 +54,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 2 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 @@ -65,17 +65,32 @@ TextureImporter: ignorePngGamma: 0 applyGammaDecoding: 0 swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -92,7 +107,7 @@ TextureImporter: weights: [] secondaryTextures: [] nameFileIdTable: {} - spritePackingTag: + mipmapLimitGroupName: pSDRemoveMatte: 0 userData: assetBundleName: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_variableswindow.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_variableswindow.png.meta index 3fd034b2a36..8e6714b4312 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_variableswindow.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_variableswindow.png.meta @@ -3,10 +3,10 @@ guid: 3dcb0b8201ccba04dab8253ff1120c9e TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 0 - enableMipMap: 1 + enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 @@ -20,11 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 - ignoreMasterTextureLimit: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -36,10 +37,10 @@ TextureImporter: filterMode: 1 aniso: 1 mipBias: 0 - wrapU: 0 - wrapV: 0 - wrapW: 0 - nPOTScale: 1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 0 @@ -53,7 +54,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 2 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 @@ -63,17 +64,33 @@ TextureImporter: textureFormatSet: 0 ignorePngGamma: 0 applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -90,9 +107,8 @@ TextureImporter: weights: [] secondaryTextures: [] nameFileIdTable: {} - spritePackingTag: + mipmapLimitGroupName: pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_variableswindow@2x.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_variableswindow@2x.png.meta index 73ae3197e37..37494901161 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_variableswindow@2x.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_variableswindow@2x.png.meta @@ -3,10 +3,10 @@ guid: c2e4d889eb8c8ad47ac43a458b0de328 TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 0 - enableMipMap: 1 + enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 @@ -20,11 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 - ignoreMasterTextureLimit: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -36,10 +37,10 @@ TextureImporter: filterMode: 1 aniso: 1 mipBias: 0 - wrapU: 0 - wrapV: 0 - wrapW: 0 - nPOTScale: 1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 0 @@ -53,7 +54,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 2 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 @@ -63,17 +64,33 @@ TextureImporter: textureFormatSet: 0 ignorePngGamma: 0 applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -90,9 +107,8 @@ TextureImporter: weights: [] secondaryTextures: [] nameFileIdTable: {} - spritePackingTag: + mipmapLimitGroupName: pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/exposed-dot.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/exposed-dot.png.meta index 7364aa33f4b..7dcf24b4397 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/exposed-dot.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/exposed-dot.png.meta @@ -1,12 +1,12 @@ fileFormatVersion: 2 guid: 53f2a7e5f246da14c87a9fd92ecb804c TextureImporter: - fileIDToRecycleName: {} + internalIDToNameTable: [] externalObjects: {} - serializedVersion: 5 + serializedVersion: 13 mipmaps: mipMapMode: 0 - enableMipMap: 1 + enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 @@ -20,7 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -29,13 +34,13 @@ TextureImporter: maxTextureSize: 2048 textureSettings: serializedVersion: 2 - filterMode: -1 - aniso: -1 - mipBias: -1 - wrapU: -1 - wrapV: -1 - wrapW: -1 - nPOTScale: 1 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 0 @@ -43,29 +48,51 @@ TextureImporter: spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 2 textureShape: 1 singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - - serializedVersion: 2 + - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: serializedVersion: 2 sprites: [] @@ -73,11 +100,15 @@ TextureImporter: physicsShape: [] bones: [] spriteID: + internalID: 0 vertices: [] indices: edges: [] weights: [] - spritePackingTag: + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/marker_In1x.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/marker_In1x.png.meta index f3b68f42644..c21b28eb8a8 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/marker_In1x.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/marker_In1x.png.meta @@ -3,7 +3,7 @@ guid: e2b13dd0bbb72f848a20fe0a131a09b0 TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 1 enableMipMap: 0 @@ -25,7 +25,7 @@ TextureImporter: streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 - ignoreMasterTextureLimit: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -52,7 +52,7 @@ TextureImporter: spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 @@ -65,6 +65,7 @@ TextureImporter: ignorePngGamma: 0 applyGammaDecoding: 0 swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform @@ -76,6 +77,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -88,6 +90,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -100,6 +103,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -112,6 +116,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -124,6 +129,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -136,6 +142,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -152,7 +159,7 @@ TextureImporter: weights: [] secondaryTextures: [] nameFileIdTable: {} - spritePackingTag: + mipmapLimitGroupName: pSDRemoveMatte: 0 userData: assetBundleName: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/marker_In2x.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/marker_In2x.png.meta index ac7397d17d3..d48fc8b2dc5 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/marker_In2x.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/marker_In2x.png.meta @@ -3,7 +3,7 @@ guid: 85fc2e87bf1017041aba8f4c42e47654 TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 1 enableMipMap: 0 @@ -25,7 +25,7 @@ TextureImporter: streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 - ignoreMasterTextureLimit: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -52,7 +52,7 @@ TextureImporter: spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 @@ -65,6 +65,7 @@ TextureImporter: ignorePngGamma: 0 applyGammaDecoding: 0 swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform @@ -76,6 +77,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -88,6 +90,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -100,6 +103,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -112,6 +116,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -124,6 +129,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -136,6 +142,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -152,7 +159,7 @@ TextureImporter: weights: [] secondaryTextures: [] nameFileIdTable: {} - spritePackingTag: + mipmapLimitGroupName: pSDRemoveMatte: 0 userData: assetBundleName: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/marker_Out1x.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/marker_Out1x.png.meta index 20a695fd581..71cf5cf9bc3 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/marker_Out1x.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/marker_Out1x.png.meta @@ -3,7 +3,7 @@ guid: 6d3cd08b48bf5be48a1d0c6c2dc6b5a0 TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 1 enableMipMap: 0 @@ -25,7 +25,7 @@ TextureImporter: streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 - ignoreMasterTextureLimit: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -52,7 +52,7 @@ TextureImporter: spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 @@ -65,6 +65,7 @@ TextureImporter: ignorePngGamma: 0 applyGammaDecoding: 0 swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform @@ -76,6 +77,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -88,6 +90,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -100,6 +103,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -112,6 +116,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -124,6 +129,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -136,6 +142,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -152,7 +159,7 @@ TextureImporter: weights: [] secondaryTextures: [] nameFileIdTable: {} - spritePackingTag: + mipmapLimitGroupName: pSDRemoveMatte: 0 userData: assetBundleName: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/marker_Out2x.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/marker_Out2x.png.meta index 9c36558e2ab..3ad7a7ab921 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/marker_Out2x.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/marker_Out2x.png.meta @@ -3,7 +3,7 @@ guid: 2b0c349cf08e5494d8a008352eaf308a TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 1 enableMipMap: 0 @@ -25,7 +25,7 @@ TextureImporter: streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 - ignoreMasterTextureLimit: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -52,7 +52,7 @@ TextureImporter: spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 @@ -65,6 +65,7 @@ TextureImporter: ignorePngGamma: 0 applyGammaDecoding: 0 swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform @@ -76,6 +77,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -88,6 +90,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -100,6 +103,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -112,6 +116,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -124,6 +129,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -136,6 +142,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -152,7 +159,7 @@ TextureImporter: weights: [] secondaryTextures: [] nameFileIdTable: {} - spritePackingTag: + mipmapLimitGroupName: pSDRemoveMatte: 0 userData: assetBundleName: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/marker_Single1x.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/marker_Single1x.png.meta index 8774a4d7a67..c8576bace36 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/marker_Single1x.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/marker_Single1x.png.meta @@ -3,7 +3,7 @@ guid: 8da0ebc49f566cf4391edb407ebcbeaf TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 1 enableMipMap: 0 @@ -25,7 +25,7 @@ TextureImporter: streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 - ignoreMasterTextureLimit: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -52,7 +52,7 @@ TextureImporter: spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 @@ -65,6 +65,7 @@ TextureImporter: ignorePngGamma: 0 applyGammaDecoding: 0 swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform @@ -76,6 +77,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -88,6 +90,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -100,6 +103,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -112,6 +116,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -124,6 +129,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -136,6 +142,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -152,7 +159,7 @@ TextureImporter: weights: [] secondaryTextures: [] nameFileIdTable: {} - spritePackingTag: + mipmapLimitGroupName: pSDRemoveMatte: 0 userData: assetBundleName: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/marker_Single2x.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/marker_Single2x.png.meta index 4273102cfee..20e5d3f92e3 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/marker_Single2x.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/marker_Single2x.png.meta @@ -3,7 +3,7 @@ guid: c86c8b31aefee5d43a0bf392795d165e TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 1 enableMipMap: 0 @@ -25,7 +25,7 @@ TextureImporter: streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 - ignoreMasterTextureLimit: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -52,7 +52,7 @@ TextureImporter: spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 @@ -65,6 +65,7 @@ TextureImporter: ignorePngGamma: 0 applyGammaDecoding: 0 swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform @@ -76,6 +77,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -88,6 +90,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -100,6 +103,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -112,6 +116,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -124,6 +129,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 @@ -136,6 +142,7 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -152,7 +159,7 @@ TextureImporter: weights: [] secondaryTextures: [] nameFileIdTable: {} - spritePackingTag: + mipmapLimitGroupName: pSDRemoveMatte: 0 userData: assetBundleName: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/minus.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/minus.png.meta index 5087c2c691a..d64a810f85f 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/minus.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/minus.png.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 guid: 05e4b155e817f144baf2cbb34e2a4f9d TextureImporter: - fileIDToRecycleName: {} + internalIDToNameTable: [] externalObjects: {} - serializedVersion: 5 + serializedVersion: 13 mipmaps: mipMapMode: 0 enableMipMap: 0 @@ -20,7 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -29,12 +34,12 @@ TextureImporter: maxTextureSize: 2048 textureSettings: serializedVersion: 2 - filterMode: 0 + filterMode: 1 aniso: 1 - mipBias: -1 + mipBias: 0 wrapU: 1 wrapV: 1 - wrapW: -1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -43,19 +48,26 @@ TextureImporter: spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - - serializedVersion: 2 + - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 @@ -65,8 +77,10 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 @@ -76,8 +90,10 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 buildTarget: iPhone maxTextureSize: 2048 resizeAlgorithm: 0 @@ -87,8 +103,10 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 buildTarget: Windows Store Apps maxTextureSize: 2048 resizeAlgorithm: 0 @@ -98,7 +116,9 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 spriteSheet: serializedVersion: 2 sprites: [] @@ -106,11 +126,15 @@ TextureImporter: physicsShape: [] bones: [] spriteID: + internalID: 0 vertices: [] indices: edges: [] weights: [] - spritePackingTag: + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/output-dot.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/output-dot.png.meta index 31a0dddd200..cfc51c265db 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/output-dot.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/output-dot.png.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 guid: 652c7d237ccc44b70b36875b2cf5ee92 TextureImporter: - fileIDToRecycleName: {} + internalIDToNameTable: [] externalObjects: {} - serializedVersion: 7 + serializedVersion: 13 mipmaps: mipMapMode: 0 enableMipMap: 0 @@ -20,9 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -31,12 +34,12 @@ TextureImporter: maxTextureSize: 2048 textureSettings: serializedVersion: 2 - filterMode: -1 + filterMode: 1 aniso: 1 - mipBias: -100 + mipBias: 0 wrapU: 1 wrapV: 1 - wrapW: -1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -49,16 +52,22 @@ TextureImporter: spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - - serializedVersion: 2 + - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 @@ -68,8 +77,10 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 @@ -79,8 +90,10 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 buildTarget: iPhone maxTextureSize: 2048 resizeAlgorithm: 0 @@ -90,7 +103,9 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 spriteSheet: serializedVersion: 2 sprites: [] @@ -98,13 +113,15 @@ TextureImporter: physicsShape: [] bones: [] spriteID: + internalID: 0 vertices: [] indices: edges: [] weights: [] - spritePackingTag: + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/plus.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/plus.png.meta index 8a9bf86fc3b..76acfd6fecd 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/plus.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/plus.png.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 guid: a411da5568e695348875aad0a62316e5 TextureImporter: - fileIDToRecycleName: {} + internalIDToNameTable: [] externalObjects: {} - serializedVersion: 5 + serializedVersion: 13 mipmaps: mipMapMode: 0 enableMipMap: 0 @@ -20,7 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -29,12 +34,12 @@ TextureImporter: maxTextureSize: 2048 textureSettings: serializedVersion: 2 - filterMode: 0 + filterMode: 1 aniso: 1 - mipBias: -1 + mipBias: 0 wrapU: 1 wrapV: 1 - wrapW: -1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -43,19 +48,26 @@ TextureImporter: spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - - serializedVersion: 2 + - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 @@ -65,8 +77,10 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 @@ -76,8 +90,10 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 buildTarget: iPhone maxTextureSize: 2048 resizeAlgorithm: 0 @@ -87,8 +103,10 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 - - serializedVersion: 2 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 buildTarget: Windows Store Apps maxTextureSize: 2048 resizeAlgorithm: 0 @@ -98,7 +116,9 @@ TextureImporter: crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 spriteSheet: serializedVersion: 2 sprites: [] @@ -106,11 +126,15 @@ TextureImporter: physicsShape: [] bones: [] spriteID: + internalID: 0 vertices: [] indices: edges: [] weights: [] - spritePackingTag: + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/spacelocal.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/spacelocal.png.meta index 2e2936fe558..d64c556b3b1 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/spacelocal.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/spacelocal.png.meta @@ -1,14 +1,13 @@ fileFormatVersion: 2 guid: 1acd6ca26a40f3e49885afad7549c9db -timeCreated: 1493050469 -licenseType: Pro TextureImporter: - fileIDToRecycleName: {} - serializedVersion: 4 + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 mipmaps: mipMapMode: 0 enableMipMap: 0 - sRGBTexture: 0 + sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 @@ -21,7 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -32,7 +36,7 @@ TextureImporter: serializedVersion: 2 filterMode: 1 aniso: 1 - mipBias: -1 + mipBias: 0 wrapU: 1 wrapV: 1 wrapW: 1 @@ -44,87 +48,145 @@ TextureImporter: spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - - buildTarget: DefaultTexturePlatform + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Standalone + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: iPhone + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: iPhone maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: tvOS + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: tvOS maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: WebGL + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: WebGL maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: XboxOne + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: XboxOne maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Windows Store Apps + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: Windows Store Apps maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Nintendo Switch + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: Nintendo Switch maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] - spritePackingTag: + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/spacelocal_hovered.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/spacelocal_hovered.png.meta index 18e65907272..ac6821b1167 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/spacelocal_hovered.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/spacelocal_hovered.png.meta @@ -3,10 +3,10 @@ guid: 6142b538b9a4c294092051635f3d2951 TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 0 - enableMipMap: 1 + enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 @@ -25,7 +25,7 @@ TextureImporter: streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 - ignoreMasterTextureLimit: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -37,10 +37,10 @@ TextureImporter: filterMode: 1 aniso: 1 mipBias: 0 - wrapU: 0 - wrapV: 0 - wrapW: 0 - nPOTScale: 1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 0 @@ -54,7 +54,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 2 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 @@ -65,17 +65,32 @@ TextureImporter: ignorePngGamma: 0 applyGammaDecoding: 0 swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -84,16 +99,16 @@ TextureImporter: outline: [] physicsShape: [] bones: [] - spriteID: + spriteID: internalID: 0 vertices: [] - indices: + indices: edges: [] weights: [] secondaryTextures: [] nameFileIdTable: {} - spritePackingTag: + mipmapLimitGroupName: pSDRemoveMatte: 0 - userData: - assetBundleName: - assetBundleVariant: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/spacenone.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/spacenone.png.meta index 76e0c369b98..48059f7f5ec 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/spacenone.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/spacenone.png.meta @@ -1,14 +1,13 @@ fileFormatVersion: 2 guid: db7a9a6833d72ab49a351f39680e80bd -timeCreated: 1493050469 -licenseType: Pro TextureImporter: - fileIDToRecycleName: {} - serializedVersion: 4 + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 mipmaps: mipMapMode: 0 enableMipMap: 0 - sRGBTexture: 0 + sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 @@ -21,7 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -32,7 +36,7 @@ TextureImporter: serializedVersion: 2 filterMode: 1 aniso: 1 - mipBias: -1 + mipBias: 0 wrapU: 1 wrapV: 1 wrapW: 1 @@ -44,87 +48,145 @@ TextureImporter: spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - - buildTarget: DefaultTexturePlatform + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Standalone + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: iPhone + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: iPhone maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: tvOS + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: tvOS maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: WebGL + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: WebGL maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: XboxOne + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: XboxOne maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Windows Store Apps + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: Windows Store Apps maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Nintendo Switch + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: Nintendo Switch maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] - spritePackingTag: - userData: - assetBundleName: - assetBundleVariant: + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/spacenone_hovered.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/spacenone_hovered.png.meta index e2810a72090..9d6eb61f12f 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/spacenone_hovered.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/spacenone_hovered.png.meta @@ -3,10 +3,10 @@ guid: 2a3cae985750fbe42b55efd784cf2757 TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 0 - enableMipMap: 1 + enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 @@ -25,7 +25,7 @@ TextureImporter: streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 - ignoreMasterTextureLimit: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -37,10 +37,10 @@ TextureImporter: filterMode: 1 aniso: 1 mipBias: 0 - wrapU: 0 - wrapV: 0 - wrapW: 0 - nPOTScale: 1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 0 @@ -54,7 +54,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 2 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 @@ -65,17 +65,32 @@ TextureImporter: ignorePngGamma: 0 applyGammaDecoding: 0 swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -84,16 +99,16 @@ TextureImporter: outline: [] physicsShape: [] bones: [] - spriteID: + spriteID: internalID: 0 vertices: [] - indices: + indices: edges: [] weights: [] secondaryTextures: [] nameFileIdTable: {} - spritePackingTag: + mipmapLimitGroupName: pSDRemoveMatte: 0 - userData: - assetBundleName: - assetBundleVariant: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/spaceworld.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/spaceworld.png.meta index 4f41862fba8..11fb156d5aa 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/spaceworld.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/spaceworld.png.meta @@ -1,14 +1,13 @@ fileFormatVersion: 2 guid: 4a4e1ef9bae46664e9d4ceddf657236f -timeCreated: 1493050470 -licenseType: Pro TextureImporter: - fileIDToRecycleName: {} - serializedVersion: 4 + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 mipmaps: mipMapMode: 0 enableMipMap: 0 - sRGBTexture: 0 + sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 @@ -21,7 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -32,7 +36,7 @@ TextureImporter: serializedVersion: 2 filterMode: 1 aniso: 1 - mipBias: -1 + mipBias: 0 wrapU: 1 wrapV: 1 wrapW: 1 @@ -44,87 +48,145 @@ TextureImporter: spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - - buildTarget: DefaultTexturePlatform + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Standalone + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: iPhone + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: iPhone maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: tvOS + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: tvOS maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: WebGL + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: WebGL maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: XboxOne + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: XboxOne maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Windows Store Apps + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: Windows Store Apps maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Nintendo Switch + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: Nintendo Switch maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] - spritePackingTag: + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/spaceworld_hovered.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/spaceworld_hovered.png.meta index 9729ef99531..c4eb78d9aae 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/spaceworld_hovered.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/spaceworld_hovered.png.meta @@ -3,10 +3,10 @@ guid: a493f7a6f6f341e44a691831d286a035 TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 0 - enableMipMap: 1 + enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 @@ -25,7 +25,7 @@ TextureImporter: streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 - ignoreMasterTextureLimit: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -37,10 +37,10 @@ TextureImporter: filterMode: 1 aniso: 1 mipBias: 0 - wrapU: 0 - wrapV: 0 - wrapW: 0 - nPOTScale: 1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 0 @@ -54,7 +54,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 2 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 @@ -65,17 +65,32 @@ TextureImporter: ignorePngGamma: 0 applyGammaDecoding: 0 swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -84,16 +99,16 @@ TextureImporter: outline: [] physicsShape: [] bones: [] - spriteID: + spriteID: internalID: 0 vertices: [] - indices: + indices: edges: [] weights: [] secondaryTextures: [] nameFileIdTable: {} - spritePackingTag: + mipmapLimitGroupName: pSDRemoveMatte: 0 - userData: - assetBundleName: - assetBundleVariant: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/subgraph-block.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/subgraph-block.png.meta index 71b2502f7b3..b656588665f 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/subgraph-block.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/subgraph-block.png.meta @@ -3,10 +3,10 @@ guid: 0cbd6553e14e2414ea7a3d4cda9e729d TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 0 - enableMipMap: 1 + enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 @@ -25,7 +25,7 @@ TextureImporter: streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 - ignoreMasterTextureLimit: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -37,10 +37,10 @@ TextureImporter: filterMode: 1 aniso: 1 mipBias: 0 - wrapU: 0 - wrapV: 0 - wrapW: 0 - nPOTScale: 1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 0 @@ -54,7 +54,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 2 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 @@ -65,17 +65,32 @@ TextureImporter: ignorePngGamma: 0 applyGammaDecoding: 0 swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -92,7 +107,7 @@ TextureImporter: weights: [] secondaryTextures: [] nameFileIdTable: {} - spritePackingTag: + mipmapLimitGroupName: pSDRemoveMatte: 0 userData: assetBundleName: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/subgraph-operator.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/subgraph-operator.png.meta index b75c366d038..3e4ff32d906 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/subgraph-operator.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/subgraph-operator.png.meta @@ -3,10 +3,10 @@ guid: 5a87a30c78bcd944fa2653c3b7b81220 TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 0 - enableMipMap: 1 + enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 @@ -25,7 +25,7 @@ TextureImporter: streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 - ignoreMasterTextureLimit: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -37,10 +37,10 @@ TextureImporter: filterMode: 1 aniso: 1 mipBias: 0 - wrapU: 0 - wrapV: 0 - wrapW: 0 - nPOTScale: 1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 0 @@ -54,7 +54,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 2 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 @@ -65,17 +65,32 @@ TextureImporter: ignorePngGamma: 0 applyGammaDecoding: 0 swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -92,7 +107,7 @@ TextureImporter: weights: [] secondaryTextures: [] nameFileIdTable: {} - spritePackingTag: + mipmapLimitGroupName: pSDRemoveMatte: 0 userData: assetBundleName: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/title-local.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/title-local.png.meta index be31b98021c..5ef014c84bf 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/title-local.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/title-local.png.meta @@ -1,14 +1,13 @@ fileFormatVersion: 2 guid: e1aade3d2d19bb14d997331051688744 -timeCreated: 1493741090 -licenseType: Pro TextureImporter: - fileIDToRecycleName: {} - serializedVersion: 4 + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 mipmaps: mipMapMode: 0 enableMipMap: 0 - sRGBTexture: 0 + sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 @@ -21,7 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -32,7 +36,7 @@ TextureImporter: serializedVersion: 2 filterMode: 1 aniso: 1 - mipBias: -1 + mipBias: 0 wrapU: 1 wrapV: 1 wrapW: 1 @@ -44,87 +48,145 @@ TextureImporter: spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - - buildTarget: DefaultTexturePlatform + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Standalone + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: iPhone + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: iPhone maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: tvOS + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: tvOS maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: XboxOne + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: XboxOne maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Windows Store Apps + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: Windows Store Apps maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: WebGL + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: WebGL maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Nintendo Switch + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: Nintendo Switch maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] - spritePackingTag: + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/title-local@2x.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/title-local@2x.png.meta index 7d3999e7e4d..89a61829fd9 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/title-local@2x.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/title-local@2x.png.meta @@ -1,14 +1,13 @@ fileFormatVersion: 2 guid: 3c60df67c374b7f44bf987c68120d858 -timeCreated: 1493741090 -licenseType: Pro TextureImporter: - fileIDToRecycleName: {} - serializedVersion: 4 + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 mipmaps: mipMapMode: 0 enableMipMap: 0 - sRGBTexture: 0 + sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 @@ -21,7 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -32,7 +36,7 @@ TextureImporter: serializedVersion: 2 filterMode: 1 aniso: 1 - mipBias: -1 + mipBias: 0 wrapU: 1 wrapV: 1 wrapW: 1 @@ -44,87 +48,145 @@ TextureImporter: spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - - buildTarget: DefaultTexturePlatform + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Standalone + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: iPhone + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: iPhone maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: tvOS + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: tvOS maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: XboxOne + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: XboxOne maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Windows Store Apps + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: Windows Store Apps maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: WebGL + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: WebGL maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Nintendo Switch + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: Nintendo Switch maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] - spritePackingTag: + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/title-world.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/title-world.png.meta index 64450298a66..adeb9501554 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/title-world.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/title-world.png.meta @@ -1,14 +1,13 @@ fileFormatVersion: 2 guid: 548900deb53117d46a19730415f9e1a3 -timeCreated: 1493741906 -licenseType: Pro TextureImporter: - fileIDToRecycleName: {} - serializedVersion: 4 + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 mipmaps: mipMapMode: 0 enableMipMap: 0 - sRGBTexture: 0 + sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 @@ -21,7 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -30,9 +34,9 @@ TextureImporter: maxTextureSize: 2048 textureSettings: serializedVersion: 2 - filterMode: -1 + filterMode: 1 aniso: 1 - mipBias: -1 + mipBias: 0 wrapU: 1 wrapV: 1 wrapW: 1 @@ -44,87 +48,145 @@ TextureImporter: spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - - buildTarget: DefaultTexturePlatform + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Standalone + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: iPhone + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: iPhone maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: tvOS + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: tvOS maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: XboxOne + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: XboxOne maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Windows Store Apps + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: Windows Store Apps maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: WebGL + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: WebGL maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Nintendo Switch + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: Nintendo Switch maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] - spritePackingTag: + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/title-world@2x.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/title-world@2x.png.meta index 5679c49df19..ec752348baa 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/title-world@2x.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/title-world@2x.png.meta @@ -1,14 +1,13 @@ fileFormatVersion: 2 guid: 5b42e7bf9fe184d48ab50a5bebfddd89 -timeCreated: 1493741906 -licenseType: Pro TextureImporter: - fileIDToRecycleName: {} - serializedVersion: 4 + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 mipmaps: mipMapMode: 0 enableMipMap: 0 - sRGBTexture: 0 + sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 @@ -21,7 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -30,9 +34,9 @@ TextureImporter: maxTextureSize: 2048 textureSettings: serializedVersion: 2 - filterMode: -1 + filterMode: 1 aniso: 1 - mipBias: -1 + mipBias: 0 wrapU: 1 wrapV: 1 wrapW: 1 @@ -44,87 +48,145 @@ TextureImporter: spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 - alphaIsTransparency: 1 + alphaIsTransparency: 0 spriteTessellationDetail: -1 textureType: 2 textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - - buildTarget: DefaultTexturePlatform + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Standalone + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: iPhone + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: iPhone maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: tvOS + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: tvOS maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: XboxOne + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: XboxOne maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Windows Store Apps + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: Windows Store Apps maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: WebGL + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: WebGL maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 - - buildTarget: Nintendo Switch + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: Nintendo Switch maxTextureSize: 2048 + resizeAlgorithm: 0 textureFormat: -1 textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] - spritePackingTag: + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/variableswindow.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/variableswindow.png.meta index f32b6816524..e4cbf2ab839 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/variableswindow.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/variableswindow.png.meta @@ -3,10 +3,10 @@ guid: 43c65c4df0bf6ff4f93a010c9e7cf7b3 TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 0 - enableMipMap: 1 + enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 @@ -20,11 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 - ignoreMasterTextureLimit: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -36,10 +37,10 @@ TextureImporter: filterMode: 1 aniso: 1 mipBias: 0 - wrapU: 0 - wrapV: 0 - wrapW: 0 - nPOTScale: 1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 0 @@ -53,7 +54,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 2 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 @@ -63,17 +64,33 @@ TextureImporter: textureFormatSet: 0 ignorePngGamma: 0 applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -90,9 +107,8 @@ TextureImporter: weights: [] secondaryTextures: [] nameFileIdTable: {} - spritePackingTag: + mipmapLimitGroupName: pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/variableswindow@2x.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/variableswindow@2x.png.meta index 9a9434074a0..ead5adc329b 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/variableswindow@2x.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/variableswindow@2x.png.meta @@ -3,10 +3,10 @@ guid: d860cd8d626229d448d2e4979fdd6a1c TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 13 mipmaps: mipMapMode: 0 - enableMipMap: 1 + enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 @@ -20,11 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 - ignoreMasterTextureLimit: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -36,10 +37,10 @@ TextureImporter: filterMode: 1 aniso: 1 mipBias: 0 - wrapU: 0 - wrapV: 0 - wrapW: 0 - nPOTScale: 1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 0 @@ -53,7 +54,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 2 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 @@ -63,17 +64,33 @@ TextureImporter: textureFormatSet: 0 ignorePngGamma: 0 applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -90,9 +107,8 @@ TextureImporter: weights: [] secondaryTextures: [] nameFileIdTable: {} - spritePackingTag: + mipmapLimitGroupName: pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/vfx_graph_icon_gray_dark.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/vfx_graph_icon_gray_dark.png.meta index 27f5086c021..a42b0d5704b 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/vfx_graph_icon_gray_dark.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/vfx_graph_icon_gray_dark.png.meta @@ -3,10 +3,10 @@ guid: dbf0a247eda3c834b86a04d35558ba9f TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 10 + serializedVersion: 13 mipmaps: mipMapMode: 0 - enableMipMap: 1 + enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 @@ -20,10 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -32,13 +34,13 @@ TextureImporter: maxTextureSize: 2048 textureSettings: serializedVersion: 2 - filterMode: -1 - aniso: -1 - mipBias: -100 - wrapU: -1 - wrapV: -1 - wrapW: -1 - nPOTScale: 1 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 0 @@ -52,24 +54,43 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 2 textureShape: 1 singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -85,9 +106,9 @@ TextureImporter: edges: [] weights: [] secondaryTextures: [] - spritePackingTag: + nameFileIdTable: {} + mipmapLimitGroupName: pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/vfx_graph_icon_gray_light.png.meta b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/vfx_graph_icon_gray_light.png.meta index 238f47dba48..29d3a815f90 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/vfx_graph_icon_gray_light.png.meta +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/vfx_graph_icon_gray_light.png.meta @@ -3,10 +3,10 @@ guid: 613e0ccdaf11df041bdc23a5818cfa58 TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 10 + serializedVersion: 13 mipmaps: mipMapMode: 0 - enableMipMap: 1 + enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 @@ -20,10 +20,12 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 + flipGreenChannel: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 + ignoreMipmapLimit: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 @@ -32,13 +34,13 @@ TextureImporter: maxTextureSize: 2048 textureSettings: serializedVersion: 2 - filterMode: -1 - aniso: -1 - mipBias: -100 - wrapU: -1 - wrapV: -1 - wrapW: -1 - nPOTScale: 1 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 0 @@ -52,24 +54,43 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 2 textureShape: 1 singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 + ignorePlatformSupport: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: @@ -85,9 +106,9 @@ TextureImporter: edges: [] weights: [] secondaryTextures: [] - spritePackingTag: + nameFileIdTable: {} + mipmapLimitGroupName: pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/uss/VFXToolbar.uss b/Packages/com.unity.visualeffectgraph/Editor/UIResources/uss/VFXToolbar.uss index 3dc73fb5966..1f742d90d7e 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/uss/VFXToolbar.uss +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/uss/VFXToolbar.uss @@ -96,7 +96,7 @@ Button Button:hover, Toggle:hover { - background-color: var(--unity-colors-highlight-background); + background-color: var(--unity-colors-toolbar_button-background-hover); } Button:disabled diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/uss/VFXView.uss b/Packages/com.unity.visualeffectgraph/Editor/UIResources/uss/VFXView.uss index 748270eb4fb..09a58ff0eeb 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/uss/VFXView.uss +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/uss/VFXView.uss @@ -42,6 +42,14 @@ VFXView .unity-toolbar ToolbarToggle { border-right-width: 0px; + justify-content:space-around; + align-items: center; +} + +ToolbarToggle .unity-image +{ + width: 16px; + height: 16px; } EditorToolbarDropdown @@ -70,19 +78,26 @@ EditorToolbarDropdown:disabled, ToolbarToggle:disabled #lock-auto-attach { - width: 20px; - height: 17px; /* Don't know why the real height is one pixel less than specified here */ - padding:1px 0 4px 0; + padding: 1px 4px 0px 4px; align-self: center; + align-items: center; border-left-width: 0; border-right-width: 1px; +} + +#lock-auto-attach .unity-toggle__checkmark { background-image: var(--unity-icons-lock); - -unity-background-scale-mode: scale-to-fit; + width: 16px; + height: 16px; + margin-top: 2px; } #lock-auto-attach:checked { background-color: var(--unity-colors-toolbar_button-background-checked); +} + +#lock-auto-attach:checked .unity-toggle__checkmark { background-image: var(--unity-icons-lock-checked); } From 23a50499262665e18702ae7adcaa7ede57cc41e1 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Mon, 10 Mar 2025 14:12:19 +0000 Subject: [PATCH 27/41] [Port] [2022.3] [URP] DecalProjector: Fixed material-properties updates for Animation-clips --- .../Runtime/Decal/DecalProjector.cs | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Decal/DecalProjector.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Decal/DecalProjector.cs index 9c730542222..6da40f393df 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Decal/DecalProjector.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Decal/DecalProjector.cs @@ -246,6 +246,16 @@ public float fadeFactor } private Material m_OldMaterial = null; + private float m_OldDrawDistance = 1000.0f; + private float m_OldFadeScale = 0.9f; + private float m_OldStartAngleFade = 180.0f; + private float m_OldEndAngleFade = 180.0f; + private Vector2 m_OldUVScale = new Vector2(1, 1); + private Vector2 m_OldUVBias = new Vector2(0, 0); + private DecalScaleMode m_OldScaleMode = DecalScaleMode.ScaleInvariant; + private Vector3 m_OldOffset = new Vector3(0, 0, 0.5f); + private Vector3 m_OldSize = new Vector3(1, 1, 1); + private float m_OldFadeFactor = 1.0f; /// A scale that should be used for rendering and handles. internal Vector3 effectiveScale => m_ScaleMode == DecalScaleMode.InheritFromHierarchy ? transform.lossyScale : Vector3.one; @@ -318,6 +328,36 @@ internal void OnValidate() } else onDecalPropertyChange?.Invoke(this); + + m_OldDrawDistance = m_DrawDistance; + m_OldFadeScale = m_FadeScale; + m_OldStartAngleFade = m_StartAngleFade; + m_OldEndAngleFade = m_EndAngleFade; + m_OldUVScale = m_UVScale; + m_OldUVBias = m_UVBias; + m_OldScaleMode = m_ScaleMode; + m_OldOffset = m_Offset; + m_OldSize = m_Size; + m_OldFadeFactor = m_FadeFactor; + } + + void Update() + { + // Needed to be able to update state properly for animated serialized-properties. + if (m_OldMaterial != m_Material || + Math.Abs(m_OldDrawDistance - m_DrawDistance) > float.Epsilon || + Math.Abs(m_OldFadeScale - m_FadeScale) > float.Epsilon || + Math.Abs(m_OldStartAngleFade - m_StartAngleFade) > float.Epsilon || + Math.Abs(m_OldEndAngleFade - m_EndAngleFade) > float.Epsilon || + m_OldUVScale != m_UVScale || + m_OldUVBias != m_UVBias || + m_OldScaleMode != m_ScaleMode || + m_OldOffset != m_Offset || + m_OldSize != m_Size || + Math.Abs(m_OldFadeFactor - m_FadeFactor) > float.Epsilon) + { + OnValidate(); + } } /// From 4c43f180c14faa335b7ec706abd94e61abf6c76b Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Wed, 12 Mar 2025 07:37:49 +0000 Subject: [PATCH 28/41] [Port] [2022.3] ShaderGraph: remove duplicate LIGHTMAP_ON and DIRLIGHTMAP_COMBINED variants for builtin-deferred --- .../BuiltIn/Editor/ShaderGraph/Targets/BuiltInLitSubTarget.cs | 2 -- 1 file changed, 2 deletions(-) diff --git a/Packages/com.unity.shadergraph/Editor/Generation/Targets/BuiltIn/Editor/ShaderGraph/Targets/BuiltInLitSubTarget.cs b/Packages/com.unity.shadergraph/Editor/Generation/Targets/BuiltIn/Editor/ShaderGraph/Targets/BuiltInLitSubTarget.cs index 0d220023de4..58a26978735 100644 --- a/Packages/com.unity.shadergraph/Editor/Generation/Targets/BuiltIn/Editor/ShaderGraph/Targets/BuiltInLitSubTarget.cs +++ b/Packages/com.unity.shadergraph/Editor/Generation/Targets/BuiltIn/Editor/ShaderGraph/Targets/BuiltInLitSubTarget.cs @@ -572,8 +572,6 @@ static class LitKeywords public static readonly KeywordCollection Deferred = new KeywordCollection { - { CoreKeywordDescriptors.Lightmap }, - { CoreKeywordDescriptors.DirectionalLightmapCombined }, { CoreKeywordDescriptors.MainLightShadows }, { CoreKeywordDescriptors.ShadowsSoft }, { CoreKeywordDescriptors.LightmapShadowMixing }, From 55e533f029938b519c99b1c350ff4638b06da3b3 Mon Sep 17 00:00:00 2001 From: Erik Hakala Date: Wed, 12 Mar 2025 18:08:32 +0000 Subject: [PATCH 29/41] [Port] [2022.3] Fix water memleak on domain reload. --- .../Runtime/Water/HDRenderPipeline.WaterSystem.cs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Packages/com.unity.render-pipelines.high-definition/Runtime/Water/HDRenderPipeline.WaterSystem.cs b/Packages/com.unity.render-pipelines.high-definition/Runtime/Water/HDRenderPipeline.WaterSystem.cs index dc5a75d81f1..67302d1a491 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Runtime/Water/HDRenderPipeline.WaterSystem.cs +++ b/Packages/com.unity.render-pipelines.high-definition/Runtime/Water/HDRenderPipeline.WaterSystem.cs @@ -132,9 +132,9 @@ void InitializeWaterSystem() void ReleaseWaterSystem() { - // Grab all the water surfaces in the scene - var waterSurfaces = WaterSurface.instancesAsArray; - int numWaterSurfaces = WaterSurface.instanceCount; + // Grab all the water surfaces in the scene. Including disabled ones (i.e. not in WaterSurface.instances). + var waterSurfaces = Object.FindObjectsByType(FindObjectsSortMode.None); + int numWaterSurfaces = waterSurfaces.Length; // Loop through them and display them for (int surfaceIdx = 0; surfaceIdx < numWaterSurfaces; ++surfaceIdx) From 93f6fa2c88a49fcefebe2eb92e92836dc5e68691 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Thu, 13 Mar 2025 15:51:00 +0000 Subject: [PATCH 30/41] [Port] [2022.3][UUM-99455] Fix post processing resolve for Renderer2D --- .../Runtime/2D/Renderer2D.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/2D/Renderer2D.cs b/Packages/com.unity.render-pipelines.universal/Runtime/2D/Renderer2D.cs index ba58afa2bea..141d48ba087 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/2D/Renderer2D.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/2D/Renderer2D.cs @@ -389,7 +389,7 @@ public override void Setup(ScriptableRenderContext context, ref RenderingData re // Don't resolve during post processing if there are passes after or pixel perfect camera is used bool pixelPerfectCameraEnabled = ppc != null && ppc.enabled; bool hasCaptureActions = cameraData.captureActions != null && lastCameraInStack; - bool resolvePostProcessingToCameraTarget = !hasCaptureActions && !hasPassesAfterPostProcessing && !requireFinalPostProcessPass && !pixelPerfectCameraEnabled; + bool resolvePostProcessingToCameraTarget = lastCameraInStack && !hasCaptureActions && !hasPassesAfterPostProcessing && !requireFinalPostProcessPass && !pixelPerfectCameraEnabled; if (hasPostProcess) { From 216ff38b0648dc825280d6d93a2617a71b33e54c Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Tue, 18 Mar 2025 11:34:05 +0000 Subject: [PATCH 31/41] [Port] [2022.3] [UUM-11350] Fix runtime light2d not created with target sorting layers --- .../Runtime/2D/Light2D.cs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/2D/Light2D.cs b/Packages/com.unity.render-pipelines.universal/Runtime/2D/Light2D.cs index f1aa5950aa5..25cf40d5f21 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/2D/Light2D.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/2D/Light2D.cs @@ -400,11 +400,13 @@ internal bool IsLitLayer(int layer) private void Awake() { -#if UNITY_EDITOR // Default target sorting layers to "All" if (m_ApplyToSortingLayers == null) - m_ApplyToSortingLayers = SortingLayer.layers.Select(x => x.id).ToArray(); -#endif + { + m_ApplyToSortingLayers = new int[SortingLayer.layers.Length]; + for (int i = 0; i < m_ApplyToSortingLayers.Length; ++i) + m_ApplyToSortingLayers[i] = SortingLayer.layers[i].id; + } } void OnEnable() From 5c5a634e673c46c6004f7211c72d255a4476dc91 Mon Sep 17 00:00:00 2001 From: Kenny Tan Date: Tue, 18 Mar 2025 11:34:05 +0000 Subject: [PATCH 32/41] [2022.3][UUM-95754] Add layer mask in renderer 2d data --- .../Editor/2D/Renderer2DDataEditor.cs | 20 + .../Runtime/2D/Passes/Utility/LayerUtility.cs | 2 +- .../Runtime/2D/Renderer2DData.cs | 4 + .../CommonAssets/UniversalRPAsset.asset | 50 +- .../Assets/Scenes/063_LayerMask.meta | 8 + .../Assets/Scenes/063_LayerMask.unity | 888 ++++++++++++++++++ .../Assets/Scenes/063_LayerMask.unity.meta | 7 + .../063_LayerMaskRendererData.asset | 104 ++ .../063_LayerMaskRendererData.asset.meta | 8 + .../063_LayerMask/Sprite_Coral_round.png | Bin 0 -> 262907 bytes .../063_LayerMask/Sprite_Coral_round.png.meta | 118 +++ .../063_LayerMask/Sprite_Coral_round_mask.png | Bin 0 -> 111946 bytes .../Sprite_Coral_round_mask.png.meta | 114 +++ .../063_LayerMask/Sprite_Coral_round_n.png | Bin 0 -> 286727 bytes .../Sprite_Coral_round_n.png.meta | 114 +++ .../ProjectSettings/EditorBuildSettings.asset | 3 + 16 files changed, 1436 insertions(+), 4 deletions(-) create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask.unity create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask.unity.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask/063_LayerMaskRendererData.asset create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask/063_LayerMaskRendererData.asset.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask/Sprite_Coral_round.png create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask/Sprite_Coral_round.png.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask/Sprite_Coral_round_mask.png create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask/Sprite_Coral_round_mask.png.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask/Sprite_Coral_round_n.png create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask/Sprite_Coral_round_n.png.meta diff --git a/Packages/com.unity.render-pipelines.universal/Editor/2D/Renderer2DDataEditor.cs b/Packages/com.unity.render-pipelines.universal/Editor/2D/Renderer2DDataEditor.cs index 3808e25438c..e1aebb81aad 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/2D/Renderer2DDataEditor.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/2D/Renderer2DDataEditor.cs @@ -13,6 +13,9 @@ class Styles public static readonly GUIContent lightBlendStylesHeader = EditorGUIUtility.TrTextContent("Light Blend Styles", "A Light Blend Style is a collection of properties that describe a particular way of applying lighting."); public static readonly GUIContent postProcessHeader = EditorGUIUtility.TrTextContent("Post-processing"); + public static readonly GUIContent filteringSectionLabel = EditorGUIUtility.TrTextContent("Filtering", "Settings that controls and define which layers the renderer draws."); + public static readonly GUIContent layerMask = EditorGUIUtility.TrTextContent("Layer Mask", "Controls which transparent layers this renderer draws."); + public static readonly GUIContent transparencySortMode = EditorGUIUtility.TrTextContent("Transparency Sort Mode", "Default sorting mode used for transparent objects"); public static readonly GUIContent transparencySortAxis = EditorGUIUtility.TrTextContent("Transparency Sort Axis", "Axis used for custom axis sorting mode"); public static readonly GUIContent hdrEmulationScale = EditorGUIUtility.TrTextContent("HDR Emulation Scale", "Describes the scaling used by lighting to remap dynamic range between LDR and HDR"); @@ -43,6 +46,7 @@ struct LightBlendStyleProps public SerializedProperty blendFactorAdditive; } + SerializedProperty m_LayerMask; SerializedProperty m_TransparencySortMode; SerializedProperty m_TransparencySortAxis; SerializedProperty m_HDREmulationScale; @@ -60,6 +64,7 @@ struct LightBlendStyleProps SerializedProperty m_CameraSortingLayersTextureBound; SerializedProperty m_CameraSortingLayerDownsamplingMethod; + SavedBool m_FilteringFoldout; SavedBool m_GeneralFoldout; SavedBool m_LightRenderTexturesFoldout; SavedBool m_LightBlendStylesFoldout; @@ -88,6 +93,7 @@ void OnEnable() m_WasModified = false; m_Renderer2DData = (Renderer2DData)serializedObject.targetObject; + m_LayerMask = serializedObject.FindProperty("m_LayerMask"); m_TransparencySortMode = serializedObject.FindProperty("m_TransparencySortMode"); m_TransparencySortAxis = serializedObject.FindProperty("m_TransparencySortAxis"); m_HDREmulationScale = serializedObject.FindProperty("m_HDREmulationScale"); @@ -125,6 +131,7 @@ void OnEnable() m_DefaultMaterialType = serializedObject.FindProperty("m_DefaultMaterialType"); m_DefaultCustomMaterial = serializedObject.FindProperty("m_DefaultCustomMaterial"); + m_FilteringFoldout = new SavedBool($"{target.GetType()}.FilteringFoldout", true); m_GeneralFoldout = new SavedBool($"{target.GetType()}.GeneralFoldout", true); m_LightRenderTexturesFoldout = new SavedBool($"{target.GetType()}.LightRenderTexturesFoldout", true); m_LightBlendStylesFoldout = new SavedBool($"{target.GetType()}.LightBlendStylesFoldout", true); @@ -141,6 +148,7 @@ public override void OnInspectorGUI() { serializedObject.Update(); + DrawFiltering(); DrawGeneral(); DrawLightRenderTextures(); DrawLightBlendStyles(); @@ -188,6 +196,18 @@ public void DrawCameraSortingLayerTexture() EditorGUI.EndDisabledGroup(); } + private void DrawFiltering() + { + CoreEditorUtils.DrawSplitter(); + m_FilteringFoldout.value = CoreEditorUtils.DrawHeaderFoldout(Styles.filteringSectionLabel, m_FilteringFoldout.value); + if (!m_FilteringFoldout.value) + return; + + EditorGUILayout.PropertyField(m_LayerMask, Styles.layerMask); + + EditorGUILayout.Space(); + } + private void DrawGeneral() { CoreEditorUtils.DrawSplitter(); diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/2D/Passes/Utility/LayerUtility.cs b/Packages/com.unity.render-pipelines.universal/Runtime/2D/Passes/Utility/LayerUtility.cs index b0d78df3691..32cf05fc7c0 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/2D/Passes/Utility/LayerUtility.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/2D/Passes/Utility/LayerUtility.cs @@ -204,7 +204,7 @@ public static void GetFilterSettings(Renderer2DData rendererData, ref LayerBatch { filterSettings = FilteringSettings.defaultValue; filterSettings.renderQueueRange = RenderQueueRange.all; - filterSettings.layerMask = -1; + filterSettings.layerMask = rendererData.layerMask; filterSettings.renderingLayerMask = 0xFFFFFFFF; filterSettings.sortingLayerRange = layerBatch.layerRange; } diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/2D/Renderer2DData.cs b/Packages/com.unity.render-pipelines.universal/Runtime/2D/Renderer2DData.cs index 2761ae350f5..d0905518283 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/2D/Renderer2DData.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/2D/Renderer2DData.cs @@ -25,6 +25,9 @@ internal enum Renderer2DDefaultMaterialType Custom } + [SerializeField] + LayerMask m_LayerMask = -1; + [SerializeField] TransparencySortMode m_TransparencySortMode = TransparencySortMode.Default; @@ -138,6 +141,7 @@ internal enum Renderer2DDefaultMaterialType internal bool useCameraSortingLayerTexture => m_UseCameraSortingLayersTexture; internal int cameraSortingLayerTextureBound => m_CameraSortingLayersTextureBound; internal Downsampling cameraSortingLayerDownsamplingMethod => m_CameraSortingLayerDownsamplingMethod; + internal LayerMask layerMask => m_LayerMask; /// /// Creates the instance of the Renderer2D. diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/CommonAssets/UniversalRPAsset.asset b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/CommonAssets/UniversalRPAsset.asset index f74b5486803..0f3c17fc7da 100644 --- a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/CommonAssets/UniversalRPAsset.asset +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/CommonAssets/UniversalRPAsset.asset @@ -12,8 +12,8 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: bf2edee5c58d82540a51f03df9d42094, type: 3} m_Name: UniversalRPAsset m_EditorClassIdentifier: - k_AssetVersion: 9 - k_AssetPreviousVersion: 9 + k_AssetVersion: 11 + k_AssetPreviousVersion: 11 m_RendererType: 1 m_RendererData: {fileID: 0} m_RendererDataList: @@ -25,14 +25,22 @@ MonoBehaviour: - {fileID: 11400000, guid: 04618ff2d33c0432a81d00fdee3fae55, type: 2} - {fileID: 11400000, guid: eae387d1d2a20a946ae2441e0319f1a0, type: 2} - {fileID: 11400000, guid: ab4527fe9ad5ef949bffe9447fabcfa2, type: 2} + - {fileID: 11400000, guid: 7e00a3afba9ad5549a7362d0e20ff254, type: 2} m_DefaultRendererIndex: 2 m_RequireDepthTexture: 1 m_RequireOpaqueTexture: 1 m_OpaqueDownsampling: 1 m_SupportsTerrainHoles: 1 m_SupportsHDR: 1 + m_HDRColorBufferPrecision: 0 m_MSAA: 4 m_RenderScale: 1 + m_UpscalingFilter: 0 + m_FsrOverrideSharpness: 0 + m_FsrSharpness: 0.92 + m_EnableLODCrossFade: 1 + m_LODCrossFadeDitheringType: 1 + m_ShEvalMode: 0 m_MainLightRenderingMode: 1 m_MainLightShadowsSupported: 1 m_MainLightShadowmapResolution: 2048 @@ -53,26 +61,62 @@ MonoBehaviour: m_CascadeBorder: 0.1 m_ShadowDepthBias: 1 m_ShadowNormalBias: 1 + m_AnyShadowsSupported: 1 m_SoftShadowsSupported: 1 m_ConservativeEnclosingSphere: 0 m_NumIterationsEnclosingSphere: 64 + m_SoftShadowQuality: 2 m_AdditionalLightsCookieResolution: 2048 m_AdditionalLightsCookieFormat: 3 m_UseSRPBatcher: 1 m_SupportsDynamicBatching: 0 m_MixedLightingSupported: 1 + m_SupportsLightCookies: 1 m_SupportsLightLayers: 0 m_DebugLevel: 0 m_StoreActionsOptimization: 0 + m_EnableRenderGraph: 0 m_UseAdaptivePerformance: 1 m_ColorGradingMode: 0 m_ColorGradingLutSize: 32 m_UseFastSRGBLinearConversion: 0 + m_SupportDataDrivenLensFlare: 1 m_ShadowType: 0 m_LocalShadowsSupported: 1 m_LocalShadowsAtlasResolution: 512 m_MaxPixelLights: 4 m_ShadowAtlasResolution: 2048 - m_ShaderVariantLogLevel: 0 m_VolumeFrameworkUpdateMode: 0 + m_Textures: + blueNoise64LTex: {fileID: 2800000, guid: e3d24661c1e055f45a7560c033dbb837, type: 3} + bayerMatrixTex: {fileID: 2800000, guid: f9ee4ed84c1d10c49aabb9b210b0fc44, type: 3} + m_PrefilteringModeMainLightShadows: 1 + m_PrefilteringModeAdditionalLight: 4 + m_PrefilteringModeAdditionalLightShadows: 1 + m_PrefilterXRKeywords: 0 + m_PrefilteringModeForwardPlus: 1 + m_PrefilteringModeDeferredRendering: 1 + m_PrefilteringModeScreenSpaceOcclusion: 1 + m_PrefilterDebugKeywords: 0 + m_PrefilterWriteRenderingLayers: 0 + m_PrefilterHDROutput: 0 + m_PrefilterSSAODepthNormals: 0 + m_PrefilterSSAOSourceDepthLow: 0 + m_PrefilterSSAOSourceDepthMedium: 0 + m_PrefilterSSAOSourceDepthHigh: 0 + m_PrefilterSSAOInterleaved: 0 + m_PrefilterSSAOBlueNoise: 0 + m_PrefilterSSAOSampleCountLow: 0 + m_PrefilterSSAOSampleCountMedium: 0 + m_PrefilterSSAOSampleCountHigh: 0 + m_PrefilterDBufferMRT1: 0 + m_PrefilterDBufferMRT2: 0 + m_PrefilterDBufferMRT3: 0 + m_PrefilterSoftShadowsQualityLow: 0 + m_PrefilterSoftShadowsQualityMedium: 0 + m_PrefilterSoftShadowsQualityHigh: 0 + m_PrefilterSoftShadows: 0 + m_PrefilterScreenCoord: 0 + m_PrefilterNativeRenderPass: 0 + m_ShaderVariantLogLevel: 0 m_ShadowCascades: 3 diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask.meta new file mode 100644 index 00000000000..264d1d764d1 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: eb21ea57563156148be42c11d76ea6b4 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask.unity b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask.unity new file mode 100644 index 00000000000..b679fca3748 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask.unity @@ -0,0 +1,888 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 3 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 12 + m_GIWorkflowMode: 1 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 0 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 1 + m_PVRFilteringGaussRadiusAO: 1 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 20201, guid: 0000000000000000f000000000000000, type: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &341861053 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 341861056} + - component: {fileID: 341861055} + - component: {fileID: 341861054} + - component: {fileID: 341861057} + - component: {fileID: 341861058} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &341861054 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 341861053} + m_Enabled: 1 +--- !u!20 &341861055 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 341861053} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 2 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 1} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 1 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &341861056 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 341861053} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &341861057 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 341861053} + 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: 8 + m_VolumeLayerMask: + serializedVersion: 2 + m_Bits: 1 + m_VolumeTrigger: {fileID: 0} + m_VolumeFrameworkUpdateModeOption: 2 + m_RenderPostProcessing: 0 + m_Antialiasing: 0 + m_AntialiasingQuality: 2 + m_StopNaN: 0 + m_Dithering: 0 + m_ClearDepth: 1 + m_AllowXRRendering: 1 + m_AllowHDROutput: 1 + m_UseScreenCoordOverride: 0 + m_ScreenSizeOverride: {x: 0, y: 0, z: 0, w: 0} + m_ScreenCoordScaleBias: {x: 0, y: 0, z: 0, w: 0} + m_RequiresDepthTexture: 0 + m_RequiresColorTexture: 0 + m_Version: 2 + m_TaaSettings: + m_Quality: 3 + m_FrameInfluence: 0.1 + m_JitterScale: 1 + m_MipBias: 0 + m_VarianceClampScale: 0.9 + m_ContrastAdaptiveSharpening: 0 +--- !u!114 &341861058 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 341861053} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 73231aa468d81ea49bc3d914080de185, type: 3} + m_Name: + m_EditorClassIdentifier: + ImageComparisonSettings: + TargetWidth: 512 + TargetHeight: 512 + TargetMSAASamples: 1 + PerPixelCorrectnessThreshold: 0.001 + PerPixelGammaThreshold: 0.003921569 + PerPixelAlphaThreshold: 0.003921569 + RMSEThreshold: 0 + AverageCorrectnessThreshold: 0.005 + IncorrectPixelsThreshold: 0.0000038146973 + UseHDR: 0 + UseBackBuffer: 0 + ImageResolution: 0 + ActiveImageTests: 1 + ActivePixelTests: 7 + WaitFrames: 0 + XRCompatible: 0 + CheckMemoryAllocation: 1 +--- !u!1 &346946190 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 346946192} + - component: {fileID: 346946191} + m_Layer: 5 + m_Name: Sprite_Coral_round UI + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!212 &346946191 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 346946190} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 98bcab42289c5d5479b2adcdb8708c95, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 5.12, y: 3.87} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &346946192 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 346946190} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0.8, y: 0.8, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &382873719 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 382873721} + - component: {fileID: 382873720} + m_Layer: 0 + m_Name: Sprite_Coral_round Default + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!212 &382873720 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 382873719} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 98bcab42289c5d5479b2adcdb8708c95, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 5.12, y: 3.87} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &382873721 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 382873719} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -2.5, y: 2.5, z: 0} + m_LocalScale: {x: 0.8, y: 0.8, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &828209526 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 828209528} + - component: {fileID: 828209527} + m_Layer: 8 + m_Name: Sprite_Coral_round VolumeLayer1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!212 &828209527 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 828209526} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 98bcab42289c5d5479b2adcdb8708c95, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 5.12, y: 3.87} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &828209528 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 828209526} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 2.5, y: 2.5, z: 0} + m_LocalScale: {x: 0.8, y: 0.8, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1001430797 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1001430799} + - component: {fileID: 1001430798} + m_Layer: 10 + m_Name: Sprite_Coral_round VolumeLayer3 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!212 &1001430798 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1001430797} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 9dfc825aed78fcd4ba02077103263b40, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 98bcab42289c5d5479b2adcdb8708c95, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 5.12, y: 3.87} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &1001430799 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1001430797} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 2.5, y: -2.5, z: 0} + m_LocalScale: {x: 0.8, y: 0.8, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1057205553 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1057205555} + - component: {fileID: 1057205554} + m_Layer: 0 + m_Name: Global Light 2D + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1057205554 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1057205553} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 073797afb82c5a1438f328866b10b3f0, type: 3} + m_Name: + m_EditorClassIdentifier: + m_ComponentVersion: 1 + m_LightType: 4 + m_BlendStyleIndex: 0 + m_FalloffIntensity: 0.5 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 0.5 + m_LightVolumeIntensity: 1 + m_LightVolumeIntensityEnabled: 0 + m_ApplyToSortingLayers: eb0feddf00000000e980ef06 + m_LightCookieSprite: {fileID: 0} + m_DeprecatedPointLightCookieSprite: {fileID: 0} + m_LightOrder: 0 + m_AlphaBlendOnOverlap: 0 + m_OverlapOperation: 0 + m_NormalMapDistance: 3 + m_NormalMapQuality: 2 + m_UseNormalMap: 0 + m_ShadowIntensityEnabled: 0 + m_ShadowIntensity: 0.75 + m_ShadowVolumeIntensityEnabled: 0 + m_ShadowVolumeIntensity: 0.75 + m_LocalBounds: + m_Center: {x: 0, y: -0.00000011920929, z: 0} + m_Extent: {x: 0.9985302, y: 0.99853027, z: 0} + m_PointLightInnerAngle: 360 + m_PointLightOuterAngle: 360 + m_PointLightInnerRadius: 0 + m_PointLightOuterRadius: 1 + m_ShapeLightParametricSides: 5 + m_ShapeLightParametricAngleOffset: 0 + m_ShapeLightParametricRadius: 1 + m_ShapeLightFalloffSize: 0.5 + m_ShapeLightFalloffOffset: {x: 0, y: 0} + m_ShapePath: + - {x: -0.5, y: -0.5, z: 0} + - {x: 0.5, y: -0.5, z: 0} + - {x: 0.5, y: 0.5, z: 0} + - {x: -0.5, y: 0.5, z: 0} +--- !u!4 &1057205555 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1057205553} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1108011138 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1108011140} + - component: {fileID: 1108011139} + m_Layer: 0 + m_Name: Light 2D + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1108011139 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1108011138} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 073797afb82c5a1438f328866b10b3f0, type: 3} + m_Name: + m_EditorClassIdentifier: + m_ComponentVersion: 1 + m_LightType: 3 + m_BlendStyleIndex: 3 + m_FalloffIntensity: 0.5 + m_Color: {r: 0, g: 0.9014871, b: 1, a: 1} + m_Intensity: 5 + m_LightVolumeIntensity: 1 + m_LightVolumeIntensityEnabled: 0 + m_ApplyToSortingLayers: eb0feddf00000000e980ef06 + m_LightCookieSprite: {fileID: 0} + m_DeprecatedPointLightCookieSprite: {fileID: 0} + m_LightOrder: 0 + m_AlphaBlendOnOverlap: 0 + m_OverlapOperation: 0 + m_NormalMapDistance: 3 + m_NormalMapQuality: 1 + m_UseNormalMap: 0 + m_ShadowIntensityEnabled: 0 + m_ShadowIntensity: 0.75 + m_ShadowVolumeIntensityEnabled: 0 + m_ShadowVolumeIntensity: 0.75 + m_LocalBounds: + m_Center: {x: 0, y: -0.00000011920929, z: 0} + m_Extent: {x: 0.9985302, y: 0.99853027, z: 0} + m_PointLightInnerAngle: 360 + m_PointLightOuterAngle: 360 + m_PointLightInnerRadius: 3 + m_PointLightOuterRadius: 5 + m_ShapeLightParametricSides: 5 + m_ShapeLightParametricAngleOffset: 0 + m_ShapeLightParametricRadius: 1 + m_ShapeLightFalloffSize: 0.5 + m_ShapeLightFalloffOffset: {x: 0, y: 0} + m_ShapePath: + - {x: -0.5, y: -0.5, z: 0} + - {x: 0.5, y: -0.5, z: 0} + - {x: 0.5, y: 0.5, z: 0} + - {x: -0.5, y: 0.5, z: 0} +--- !u!4 &1108011140 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1108011138} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1352176290 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1352176292} + - component: {fileID: 1352176291} + m_Layer: 9 + m_Name: Sprite_Coral_round VolumeLayer2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!212 &1352176291 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1352176290} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 9dfc825aed78fcd4ba02077103263b40, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 98bcab42289c5d5479b2adcdb8708c95, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 5.12, y: 3.87} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &1352176292 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1352176290} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -2.5, y: -2.5, z: 0} + m_LocalScale: {x: 0.8, y: 0.8, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 341861056} + - {fileID: 1108011140} + - {fileID: 1057205555} + - {fileID: 382873721} + - {fileID: 828209528} + - {fileID: 1352176292} + - {fileID: 1001430799} + - {fileID: 346946192} diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask.unity.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask.unity.meta new file mode 100644 index 00000000000..14238e98738 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 589fffe344f1a3847910fd1b61c8404c +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask/063_LayerMaskRendererData.asset b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask/063_LayerMaskRendererData.asset new file mode 100644 index 00000000000..3097594676e --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask/063_LayerMaskRendererData.asset @@ -0,0 +1,104 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &-954026676257832205 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 6b3d386ba5cd94485973aee1479b272e, type: 3} + m_Name: RenderObjects + m_EditorClassIdentifier: + m_Active: 1 + settings: + passTag: RenderObjects + Event: 500 + filterSettings: + RenderQueueType: 1 + LayerMask: + serializedVersion: 2 + m_Bits: 1536 + PassNames: [] + overrideMaterial: {fileID: 0} + overrideMaterialPassIndex: 0 + overrideShader: {fileID: 0} + overrideShaderPassIndex: 0 + overrideMode: 1 + overrideDepthState: 0 + depthCompareFunction: 4 + enableWrite: 1 + stencilSettings: + overrideStencilState: 0 + stencilReference: 0 + stencilCompareFunction: 8 + passOperation: 0 + failOperation: 0 + zFailOperation: 0 + cameraSettings: + overrideCamera: 0 + restoreCamera: 1 + offset: {x: 0, y: 0, z: 0, w: 0} + cameraFieldOfView: 60 +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 11145981673336645838492a2d98e247, type: 3} + m_Name: 063_LayerMaskRendererData + m_EditorClassIdentifier: + debugShaders: + debugReplacementPS: {fileID: 4800000, guid: cf852408f2e174538bcd9b7fda1c5ae7, + type: 3} + hdrDebugViewPS: {fileID: 4800000, guid: 573620ae32aec764abd4d728906d2587, type: 3} + probeVolumeSamplingDebugComputeShader: {fileID: 7200000, guid: 53626a513ea68ce47b59dc1299fe3959, + type: 3} + probeVolumeResources: + probeVolumeDebugShader: {fileID: 0} + probeVolumeFragmentationDebugShader: {fileID: 0} + probeVolumeOffsetDebugShader: {fileID: 0} + probeVolumeSamplingDebugShader: {fileID: 0} + probeSamplingDebugMesh: {fileID: 0} + probeSamplingDebugTexture: {fileID: 0} + probeVolumeBlendStatesCS: {fileID: 0} + m_RendererFeatures: + - {fileID: -954026676257832205} + m_RendererFeatureMap: f3c267e7ca9dc2f2 + m_UseNativeRenderPass: 0 + m_LayerMask: + serializedVersion: 2 + m_Bits: 257 + m_TransparencySortMode: 0 + m_TransparencySortAxis: {x: 0, y: 1, z: 0} + m_HDREmulationScale: 1 + m_LightRenderTextureScale: 0.5 + m_LightBlendStyles: + - name: Multiply + maskTextureChannel: 0 + blendMode: 1 + - name: Additive + maskTextureChannel: 0 + blendMode: 0 + - name: Multiply with Mask + maskTextureChannel: 1 + blendMode: 1 + - name: Additive with Mask + maskTextureChannel: 1 + blendMode: 0 + m_UseDepthStencilBuffer: 1 + m_UseCameraSortingLayersTexture: 0 + m_CameraSortingLayersTextureBound: -1 + m_CameraSortingLayerDownsamplingMethod: 0 + m_MaxLightRenderTextureCount: 16 + m_MaxShadowRenderTextureCount: 1 + m_PostProcessData: {fileID: 11400000, guid: 41439944d30ece34e96484bdb6645b55, type: 2} + m_DefaultMaterialType: 0 + m_DefaultCustomMaterial: {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, + type: 2} diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask/063_LayerMaskRendererData.asset.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask/063_LayerMaskRendererData.asset.meta new file mode 100644 index 00000000000..a4e5ef7f178 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask/063_LayerMaskRendererData.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7e00a3afba9ad5549a7362d0e20ff254 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask/Sprite_Coral_round.png b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask/Sprite_Coral_round.png new file mode 100644 index 0000000000000000000000000000000000000000..b82a0c7a6e5001ba773b34c6f2b5b6066b210a02 GIT binary patch literal 262907 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%0D8%k5lM2sDMCMfEdPp!+N~u)k-3 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 P00000NkvXXu0mjfS-FbR literal 0 HcmV?d00001 diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask/Sprite_Coral_round.png.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask/Sprite_Coral_round.png.meta new file mode 100644 index 00000000000..5b5a252d971 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask/Sprite_Coral_round.png.meta @@ -0,0 +1,118 @@ +fileFormatVersion: 2 +guid: 98bcab42289c5d5479b2adcdb8708c95 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 1537655665 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: + - texture: {fileID: 2800000, guid: ce1f4a55dec9be741ad309bf819ab2e7, type: 3} + name: _NormalMap + - texture: {fileID: 2800000, guid: 6f7f625dda5c0d94da9379c11c2a8390, type: 3} + name: _MaskTex + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask/Sprite_Coral_round_mask.png b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask/Sprite_Coral_round_mask.png new file mode 100644 index 0000000000000000000000000000000000000000..4b2629f54f34a1b1802a8fc4d76fe1e71d52f844 GIT binary patch literal 111946 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
  • PwjX3s|M2 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℘edWwZp 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

    >)`3MMCx=Ue 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

    5^o9D}~1DVg&LlRHh9UEf+dldQ2Tb=~vw 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

    <&`r@)ho@kAIB3>*u% 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 D05cc& literal 0 HcmV?d00001 diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask/Sprite_Coral_round_n.png.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask/Sprite_Coral_round_n.png.meta new file mode 100644 index 00000000000..7988f7ffda3 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/063_LayerMask/Sprite_Coral_round_n.png.meta @@ -0,0 +1,114 @@ +fileFormatVersion: 2 +guid: ce1f4a55dec9be741ad309bf819ab2e7 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 1 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/ProjectSettings/EditorBuildSettings.asset b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/ProjectSettings/EditorBuildSettings.asset index d530e81caba..b199de0f7d5 100644 --- a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/ProjectSettings/EditorBuildSettings.asset +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/ProjectSettings/EditorBuildSettings.asset @@ -212,6 +212,9 @@ EditorBuildSettings: - enabled: 1 path: Assets/Scenes/060_2D_Renderer_Feature.unity guid: 685e926d45059124dbe53d3d229ea876 + - enabled: 1 + path: Assets/Scenes/063_LayerMask.unity + guid: 589fffe344f1a3847910fd1b61c8404c - enabled: 1 path: Assets/Scenes/069_2D_Forward_Shader_Compatibility_Forward.unity guid: 4387c323b80b3f8479359d07b90f0031 From 47372e9c62ef3548e132a15fc66a8f1f6ce6b5c2 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Tue, 18 Mar 2025 11:34:06 +0000 Subject: [PATCH 33/41] [Port] [2022.3] [VFX] Add support for Shader Graph BakedGI node in VFX graph code generation --- .../Editor/Data/Nodes/Input/Lighting/BakedGINode.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Packages/com.unity.shadergraph/Editor/Data/Nodes/Input/Lighting/BakedGINode.cs b/Packages/com.unity.shadergraph/Editor/Data/Nodes/Input/Lighting/BakedGINode.cs index 3c2e861c097..0cde32f1a8e 100644 --- a/Packages/com.unity.shadergraph/Editor/Data/Nodes/Input/Lighting/BakedGINode.cs +++ b/Packages/com.unity.shadergraph/Editor/Data/Nodes/Input/Lighting/BakedGINode.cs @@ -76,7 +76,7 @@ public sealed override void UpdateNodeAfterDeserialization() public void GenerateNodeCode(ShaderStringBuilder sb, GenerationMode generationMode) { - if (generationMode == GenerationMode.ForReals) + if (generationMode == GenerationMode.ForReals || generationMode == GenerationMode.VFX) { sb.AppendLine("$precision3 {6} = SHADERGRAPH_BAKED_GI({0}, {1}, IN.{2}.xy, {3}, {4}, {5});", GetSlotValue(kPositionWSInputSlotId, generationMode), From d58c81f6fe9656416b26e4aa5ea94e92d72fb56f Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Tue, 18 Mar 2025 11:34:06 +0000 Subject: [PATCH 34/41] [Port] [2022.3] [URP] Fixed emission-enabling evaluation. --- .../Editor/ShaderGUI/BaseShaderGUI.cs | 3 +-- .../Editor/UniversalRenderPipelineMaterialUpgrader.cs | 2 +- .../Scenes/161_FP16_BackBuffer/ParticleWhiteTransparent.mat | 6 +++++- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/Packages/com.unity.render-pipelines.universal/Editor/ShaderGUI/BaseShaderGUI.cs b/Packages/com.unity.render-pipelines.universal/Editor/ShaderGUI/BaseShaderGUI.cs index 57d54a62259..5d75bcf04b8 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/ShaderGUI/BaseShaderGUI.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/ShaderGUI/BaseShaderGUI.cs @@ -840,8 +840,7 @@ public static void SetMaterialKeywords(Material material, Action shadi if (material.HasProperty(Property.EmissionColor)) MaterialEditor.FixupEmissiveFlag(material); - bool shouldEmissionBeEnabled = - (material.globalIlluminationFlags & MaterialGlobalIlluminationFlags.EmissiveIsBlack) == 0; + bool shouldEmissionBeEnabled = (material.globalIlluminationFlags & MaterialGlobalIlluminationFlags.AnyEmissive) != 0; // Not sure what this is used for, I don't see this property declared by any Unity shader in our repo... // I'm guessing it is some kind of legacy material upgrade support thing? Or maybe just dead code now... diff --git a/Packages/com.unity.render-pipelines.universal/Editor/UniversalRenderPipelineMaterialUpgrader.cs b/Packages/com.unity.render-pipelines.universal/Editor/UniversalRenderPipelineMaterialUpgrader.cs index 15f93c2d219..287c1658e2e 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/UniversalRenderPipelineMaterialUpgrader.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/UniversalRenderPipelineMaterialUpgrader.cs @@ -598,7 +598,7 @@ internal static void UpdateMaterialKeywords(Material material) // or is enabled and may be modified at runtime. This state depends on the values of the current flag and emissive color. // The fixup routine makes sure that the material is in the correct state if/when changes are made to the mode or color. MaterialEditor.FixupEmissiveFlag(material); - bool shouldEmissionBeEnabled = (material.globalIlluminationFlags & MaterialGlobalIlluminationFlags.EmissiveIsBlack) == 0; + bool shouldEmissionBeEnabled = (material.globalIlluminationFlags & MaterialGlobalIlluminationFlags.AnyEmissive) != 0; CoreUtils.SetKeyword(material, "_EMISSION", shouldEmissionBeEnabled); UniversalRenderPipelineMaterialUpgrader.DisableKeywords(material); } diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/161_FP16_BackBuffer/ParticleWhiteTransparent.mat b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/161_FP16_BackBuffer/ParticleWhiteTransparent.mat index 37ce54e1baf..f77f45ba9ee 100644 --- a/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/161_FP16_BackBuffer/ParticleWhiteTransparent.mat +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/161_FP16_BackBuffer/ParticleWhiteTransparent.mat @@ -15,7 +15,7 @@ Material: - _EMISSION - _SURFACE_TYPE_TRANSPARENT m_InvalidKeywords: [] - m_LightmapFlags: 0 + m_LightmapFlags: 2 m_EnableInstancingVariants: 0 m_DoubleSidedGI: 0 m_CustomRenderQueue: 3000 @@ -86,7 +86,9 @@ Material: m_Offset: {x: 0, y: 0} m_Ints: [] m_Floats: + - _AddPrecomputedVelocity: 0 - _AlphaClip: 0 + - _AlphaToMask: 0 - _Blend: 0 - _BlendModePreserveSpecular: 0 - _BumpScale: 1 @@ -114,6 +116,7 @@ Material: - _SrcBlendAlpha: 1 - _Surface: 1 - _WorkflowMode: 1 + - _XRMotionVectorsPass: 1 - _ZWrite: 0 m_Colors: - _BaseColor: {r: 1, g: 1, b: 1, a: 0.12941177} @@ -121,6 +124,7 @@ Material: - _EmissionColor: {r: 1, g: 1, b: 1, a: 1} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &6421356677785975880 MonoBehaviour: m_ObjectHideFlags: 11 From 412832e5dce01a388d8c6ec99c752a2074c3e6ee Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Thu, 20 Mar 2025 10:27:07 +0000 Subject: [PATCH 35/41] [Port] [2022.3] Switch to OnDidApplyAnimationProperties instead of Update --- .../Runtime/Decal/DecalProjector.cs | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Decal/DecalProjector.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Decal/DecalProjector.cs index 6da40f393df..e74c895630e 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Decal/DecalProjector.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Decal/DecalProjector.cs @@ -341,20 +341,20 @@ internal void OnValidate() m_OldFadeFactor = m_FadeFactor; } - void Update() + void OnDidApplyAnimationProperties() { // Needed to be able to update state properly for animated serialized-properties. if (m_OldMaterial != m_Material || - Math.Abs(m_OldDrawDistance - m_DrawDistance) > float.Epsilon || - Math.Abs(m_OldFadeScale - m_FadeScale) > float.Epsilon || - Math.Abs(m_OldStartAngleFade - m_StartAngleFade) > float.Epsilon || - Math.Abs(m_OldEndAngleFade - m_EndAngleFade) > float.Epsilon || + Mathf.Abs(m_OldDrawDistance - m_DrawDistance) > Mathf.Epsilon || + Mathf.Abs(m_OldFadeScale - m_FadeScale) > Mathf.Epsilon || + Mathf.Abs(m_OldStartAngleFade - m_StartAngleFade) > Mathf.Epsilon || + Mathf.Abs(m_OldEndAngleFade - m_EndAngleFade) > Mathf.Epsilon || m_OldUVScale != m_UVScale || m_OldUVBias != m_UVBias || m_OldScaleMode != m_ScaleMode || m_OldOffset != m_Offset || m_OldSize != m_Size || - Math.Abs(m_OldFadeFactor - m_FadeFactor) > float.Epsilon) + Mathf.Abs(m_OldFadeFactor - m_FadeFactor) > Mathf.Epsilon) { OnValidate(); } From f6f029660274a4cb0b5246f61c9bee9effa17779 Mon Sep 17 00:00:00 2001 From: Catalina Vartic Date: Thu, 20 Mar 2025 10:27:12 +0000 Subject: [PATCH 36/41] [22.3] - Remove local reference of code coverage package from SRP --- .../local.code.coverage.references/package.json | 14 -------------- .../package.json.meta | 7 ------- .../Projects/HDRP_Tests/Packages/manifest.json | 3 +-- .../Projects/SRP_SmokeTest/Packages/manifest.json | 3 +-- .../Projects/ShaderGraph/Packages/manifest.json | 3 +-- .../Packages/manifest.json | 3 +-- .../Packages/manifest.json | 3 +-- .../Packages/manifest.json | 3 +-- .../Packages/manifest.json | 3 +-- .../Packages/manifest.json | 3 +-- .../VisualEffectGraph_HDRP/Packages/manifest.json | 1 - .../VisualEffectGraph_URP/Packages/manifest.json | 1 - 12 files changed, 8 insertions(+), 39 deletions(-) delete mode 100644 Tests/SRPTests/Packages/local.code.coverage.references/package.json delete mode 100644 Tests/SRPTests/Packages/local.code.coverage.references/package.json.meta diff --git a/Tests/SRPTests/Packages/local.code.coverage.references/package.json b/Tests/SRPTests/Packages/local.code.coverage.references/package.json deleted file mode 100644 index ebe7a6119fe..00000000000 --- a/Tests/SRPTests/Packages/local.code.coverage.references/package.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "displayName": "Local Code Coverage references", - "name": "local.code.coverage.references", - "version": "1.0.0", - "unity": "2019.1", - "description": "This is a dummy package that contains references to other packages needed for tests in the repository.", - "keywords": [ - "test" - ], - "category": "Libraries", - "dependencies": { - "com.unity.testtools.codecoverage": "1.2.3" - } - } \ No newline at end of file diff --git a/Tests/SRPTests/Packages/local.code.coverage.references/package.json.meta b/Tests/SRPTests/Packages/local.code.coverage.references/package.json.meta deleted file mode 100644 index 8dedda951b4..00000000000 --- a/Tests/SRPTests/Packages/local.code.coverage.references/package.json.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 66e0272e0e254d74590f6cea02eecd53 -PackageManifestImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Tests/SRPTests/Projects/HDRP_Tests/Packages/manifest.json b/Tests/SRPTests/Projects/HDRP_Tests/Packages/manifest.json index 23acf92f8ac..98095b25cc4 100644 --- a/Tests/SRPTests/Projects/HDRP_Tests/Packages/manifest.json +++ b/Tests/SRPTests/Projects/HDRP_Tests/Packages/manifest.json @@ -7,7 +7,6 @@ "com.unity.render-pipelines.high-definition": "file:../../../../../Packages/com.unity.render-pipelines.high-definition", "com.unity.render-pipelines.high-definition-config": "file:../../../../../Packages/com.unity.render-pipelines.high-definition-config", "com.unity.shadergraph": "file:../../../../../Packages/com.unity.shadergraph", - "local.code.coverage.references": "file:../../../Packages/local.code.coverage.references", "local.utf.references": "file:../../../Packages/local.utf.references", "local.gtf.references": "file:../../../Packages/local.gtf.references", "com.unity.testing.hdrp": "file:../../../Packages/com.unity.testing.hdrp", @@ -55,4 +54,4 @@ "com.unity.testing.xr", "com.unity.shadergraph" ] -} \ No newline at end of file +} diff --git a/Tests/SRPTests/Projects/SRP_SmokeTest/Packages/manifest.json b/Tests/SRPTests/Projects/SRP_SmokeTest/Packages/manifest.json index 72adc942880..574b44908fc 100644 --- a/Tests/SRPTests/Projects/SRP_SmokeTest/Packages/manifest.json +++ b/Tests/SRPTests/Projects/SRP_SmokeTest/Packages/manifest.json @@ -13,7 +13,6 @@ "com.unity.render-pipelines.universal": "file:../../../../../Packages/com.unity.render-pipelines.universal", "com.unity.render-pipelines.universal-config": "file:../../../../../Packages/com.unity.render-pipelines.universal-config", "com.unity.shadergraph": "file:../../../../../Packages/com.unity.shadergraph", - "local.code.coverage.references": "file:../../../Packages/local.code.coverage.references", "local.utf.references": "file:../../../Packages/local.utf.references", "local.gtf.references": "file:../../../Packages/local.gtf.references", "com.unity.textmeshpro": "3.0.6", @@ -58,4 +57,4 @@ "com.unity.render-pipelines.high-definition", "com.unity.testframework.graphics" ] -} \ No newline at end of file +} diff --git a/Tests/SRPTests/Projects/ShaderGraph/Packages/manifest.json b/Tests/SRPTests/Projects/ShaderGraph/Packages/manifest.json index d7a3da2c914..d496280883e 100644 --- a/Tests/SRPTests/Projects/ShaderGraph/Packages/manifest.json +++ b/Tests/SRPTests/Projects/ShaderGraph/Packages/manifest.json @@ -6,7 +6,6 @@ "com.unity.render-pipelines.universal-config": "file:../../../../../Packages/com.unity.render-pipelines.universal-config", "com.unity.shadergraph": "file:../../../../../Packages/com.unity.shadergraph", "com.unity.visualeffectgraph": "file:../../../../../Packages/com.unity.visualeffectgraph", - "local.code.coverage.references": "file:../../../Packages/local.code.coverage.references", "local.utf.references": "file:../../../Packages/local.utf.references", "local.gtf.references": "file:../../../Packages/local.gtf.references", "com.unity.testtools.codecoverage": "1.1.0", @@ -50,4 +49,4 @@ "com.unity.shadergraph", "com.unity.testframework.graphics" ] -} \ No newline at end of file +} diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Packages/manifest.json b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Packages/manifest.json index 0d29ec317ef..428079d149b 100644 --- a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Packages/manifest.json +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Packages/manifest.json @@ -15,7 +15,6 @@ "com.unity.shadergraph": "file:../../../../../Packages/com.unity.shadergraph", "com.unity.testing.urp": "file:../../../Packages/com.unity.testing.urp", "com.unity.visualeffectgraph": "file:../../../../../Packages/com.unity.visualeffectgraph", - "local.code.coverage.references": "file:../../../Packages/local.code.coverage.references", "local.utf.references": "file:../../../Packages/local.utf.references", "local.gtf.references": "file:../../../Packages/local.gtf.references", "com.unity.testing.xr": "file:../../../Packages/com.unity.testing.xr", @@ -59,4 +58,4 @@ "com.unity.testing.xr", "com.unity.testing.urp" ] -} \ No newline at end of file +} diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Packages/manifest.json b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Packages/manifest.json index 1c2ff342e61..0a271b1d2a0 100644 --- a/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Packages/manifest.json +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Packages/manifest.json @@ -13,7 +13,6 @@ "com.unity.render-pipelines.universal-config": "file:../../../../../Packages/com.unity.render-pipelines.universal-config", "com.unity.shadergraph": "file:../../../../../Packages/com.unity.shadergraph", "com.unity.testing.urp": "file:../../../Packages/com.unity.testing.urp", - "local.code.coverage.references": "file:../../../Packages/local.code.coverage.references", "local.utf.references": "file:../../../Packages/local.utf.references", "local.gtf.references": "file:../../../Packages/local.gtf.references", "com.unity.testing.xr": "file:../../../Packages/com.unity.testing.xr", @@ -57,4 +56,4 @@ "com.unity.testing.xr", "com.unity.testing.urp" ] -} \ No newline at end of file +} diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Packages/manifest.json b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Packages/manifest.json index 1c2ff342e61..0a271b1d2a0 100644 --- a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Packages/manifest.json +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Packages/manifest.json @@ -13,7 +13,6 @@ "com.unity.render-pipelines.universal-config": "file:../../../../../Packages/com.unity.render-pipelines.universal-config", "com.unity.shadergraph": "file:../../../../../Packages/com.unity.shadergraph", "com.unity.testing.urp": "file:../../../Packages/com.unity.testing.urp", - "local.code.coverage.references": "file:../../../Packages/local.code.coverage.references", "local.utf.references": "file:../../../Packages/local.utf.references", "local.gtf.references": "file:../../../Packages/local.gtf.references", "com.unity.testing.xr": "file:../../../Packages/com.unity.testing.xr", @@ -57,4 +56,4 @@ "com.unity.testing.xr", "com.unity.testing.urp" ] -} \ No newline at end of file +} diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_PostPro/Packages/manifest.json b/Tests/SRPTests/Projects/UniversalGraphicsTest_PostPro/Packages/manifest.json index 0854ea68c01..12a744f481a 100644 --- a/Tests/SRPTests/Projects/UniversalGraphicsTest_PostPro/Packages/manifest.json +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_PostPro/Packages/manifest.json @@ -14,7 +14,6 @@ "com.unity.testing.hdr-faking": "file:../../../Packages/com.unity.testing.hdr-faking", "com.unity.shadergraph": "file:../../../../../Packages/com.unity.shadergraph", "com.unity.testing.urp": "file:../../../Packages/com.unity.testing.urp", - "local.code.coverage.references": "file:../../../Packages/local.code.coverage.references", "local.utf.references": "file:../../../Packages/local.utf.references", "local.gtf.references": "file:../../../Packages/local.gtf.references", "com.unity.testing.xr": "file:../../../Packages/com.unity.testing.xr", @@ -58,4 +57,4 @@ "com.unity.testing.xr", "com.unity.testing.urp" ] -} \ No newline at end of file +} diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Terrain/Packages/manifest.json b/Tests/SRPTests/Projects/UniversalGraphicsTest_Terrain/Packages/manifest.json index 7472085949f..8505c02a53e 100644 --- a/Tests/SRPTests/Projects/UniversalGraphicsTest_Terrain/Packages/manifest.json +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Terrain/Packages/manifest.json @@ -12,7 +12,6 @@ "com.unity.render-pipelines.universal": "file:../../../../../Packages/com.unity.render-pipelines.universal", "com.unity.render-pipelines.universal-config": "file:../../../../../Packages/com.unity.render-pipelines.universal-config", "com.unity.shadergraph": "file:../../../../../Packages/com.unity.shadergraph", - "local.code.coverage.references": "file:../../../Packages/local.code.coverage.references", "local.utf.references": "file:../../../Packages/local.utf.references", "local.gtf.references": "file:../../../Packages/local.gtf.references", "com.unity.testing.urp": "file:../../../Packages/com.unity.testing.urp", @@ -57,4 +56,4 @@ "com.unity.testing.xr", "com.unity.testing.urp" ] -} \ No newline at end of file +} diff --git a/Tests/SRPTests/Projects/VisualEffectGraph_HDRP/Packages/manifest.json b/Tests/SRPTests/Projects/VisualEffectGraph_HDRP/Packages/manifest.json index 1da1f5602bb..e4c5c1e2073 100644 --- a/Tests/SRPTests/Projects/VisualEffectGraph_HDRP/Packages/manifest.json +++ b/Tests/SRPTests/Projects/VisualEffectGraph_HDRP/Packages/manifest.json @@ -9,7 +9,6 @@ "com.unity.render-pipelines.high-definition-config": "file:../../../../../Packages/com.unity.render-pipelines.high-definition-config", "com.unity.shaderanalysis": "file:../../../../../Packages/com.unity.shaderanalysis", "com.unity.shadergraph": "file:../../../../../Packages/com.unity.shadergraph", - "local.code.coverage.references": "file:../../../Packages/local.code.coverage.references", "local.utf.references": "file:../../../Packages/local.utf.references", "local.gtf.references": "file:../../../Packages/local.gtf.references", "com.unity.testing.graphics-performance": "file:../../../Packages/com.unity.testing.graphics-performance", diff --git a/Tests/SRPTests/Projects/VisualEffectGraph_URP/Packages/manifest.json b/Tests/SRPTests/Projects/VisualEffectGraph_URP/Packages/manifest.json index 65ccbbb7ff8..34059a9248a 100644 --- a/Tests/SRPTests/Projects/VisualEffectGraph_URP/Packages/manifest.json +++ b/Tests/SRPTests/Projects/VisualEffectGraph_URP/Packages/manifest.json @@ -12,7 +12,6 @@ "com.unity.testing.visualeffectgraph": "file:../../../Packages/com.unity.testing.visualeffectgraph", "com.unity.testing.xr": "file:../../../Packages/com.unity.testing.xr", "com.unity.ugui": "1.0.0", - "local.code.coverage.references": "file:../../../Packages/local.code.coverage.references", "local.utf.references": "file:../../../Packages/local.utf.references", "local.gtf.references": "file:../../../Packages/local.gtf.references", "com.unity.visualeffectgraph": "file:../../../../../Packages/com.unity.visualeffectgraph", From a6dd3efa908c160d3b6ba8ef63ca07b1649cc1b7 Mon Sep 17 00:00:00 2001 From: Julien Amsellem Date: Sat, 22 Mar 2025 07:44:33 +0000 Subject: [PATCH 37/41] [Backport][2022.3][VFX] Help link color --- .../GraphView/Views/VFXHelpDropdownButton.cs | 16 ---------------- .../Editor/UIResources/uss/VFXToolbar.uss | 18 ------------------ .../UIResources/uxml/VFXHelpDropdownPanel.uxml | 8 ++++---- 3 files changed, 4 insertions(+), 38 deletions(-) diff --git a/Packages/com.unity.visualeffectgraph/Editor/GraphView/Views/VFXHelpDropdownButton.cs b/Packages/com.unity.visualeffectgraph/Editor/GraphView/Views/VFXHelpDropdownButton.cs index 79f7bdc32a6..6354dda092a 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/GraphView/Views/VFXHelpDropdownButton.cs +++ b/Packages/com.unity.visualeffectgraph/Editor/GraphView/Views/VFXHelpDropdownButton.cs @@ -14,10 +14,6 @@ class VFXHelpDropdownButton : DropDownButtonBase const string k_AdditionalSamples = "VisualEffectGraph Additions"; const string k_AdditionalHelpers = "OutputEvent Helpers"; const string k_ManualUrl = @"https://docs.unity3d.com/Packages/com.unity.visualeffectgraph@{0}/index.html"; - const string k_ForumUrl = @"https://forum.unity.com/forums/visual-effect-graph.428/"; - const string k_SpaceShipUrl = @"https://github.com/Unity-Technologies/SpaceshipDemo"; - const string k_SamplesUrl = @"https://github.com/Unity-Technologies/VisualEffectGraph-Samples"; - const string k_VfxGraphUrl = @"https://unity.com/visual-effect-graph"; readonly Button m_installSamplesButton; readonly Button m_installHelpersButton; @@ -39,18 +35,6 @@ public VFXHelpDropdownButton(VFXView vfxView) m_installHelpersButton = m_PopupContent.Q