From 90e4662b14f26094c2d5df9045f6ab87a9f64ad9 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Fri, 26 Jun 2026 17:52:28 +0000 Subject: [PATCH 01/52] [Port] [6000.5] [UUM-144446] Fixed VFX operator reciprocal docs --- .../Documentation~/Operator-Reciprocal.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Reciprocal.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Reciprocal.md index 4a74d9e1601..d6871dcf7d1 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Reciprocal.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Reciprocal.md @@ -14,7 +14,7 @@ This Operator accepts a number of input values of various types. For the list of | **Output** | **Type** | **Description** | | ---------- | --------- | ------------------------------------------------------------ | -| **Out** | Dependent | The value of the input subtracted from one.
The **Type** changes to match the type of **X**. | +| **Out** | Dependent | The value of one divided by the input.
The **Type** changes to match the type of **X**. | ## Operator configuration From bf266520310adf92086090bceae2abf449df4806 Mon Sep 17 00:00:00 2001 From: Evergreen Date: Fri, 26 Jun 2026 17:52:28 +0000 Subject: [PATCH 02/52] [UUM-145751] Disable unstable Lighting Playmode test --- .../HDRP_DXR_Tests/Assets/Tests/HDRP_DXR_Graphics_Tests.cs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Tests/SRPTests/Projects/HDRP_DXR_Tests/Assets/Tests/HDRP_DXR_Graphics_Tests.cs b/Tests/SRPTests/Projects/HDRP_DXR_Tests/Assets/Tests/HDRP_DXR_Graphics_Tests.cs index 77d4e09e4a5..b85fdd0cb2b 100644 --- a/Tests/SRPTests/Projects/HDRP_DXR_Tests/Assets/Tests/HDRP_DXR_Graphics_Tests.cs +++ b/Tests/SRPTests/Projects/HDRP_DXR_Tests/Assets/Tests/HDRP_DXR_Graphics_Tests.cs @@ -114,6 +114,11 @@ public class HDRP_Graphics_Tests "Disabled for Instability https://jira.unity3d.com/browse/UUM-143001", RuntimePlatform.GameCoreXboxSeries, RuntimePlatform.WindowsEditor )] + [IgnoreGraphicsTest( + "902_Materials_SG_Variants_Lit|2006_Debug_ScreenSpaceShadows|902_Materials_SG_Variants_StackLit|1000_RaytracingQualityKeyword_RR_Default|902_Materials_SG_Variants_Unlit", + "Disabled for Instability https://jira.unity3d.com/browse/UUM-145751", + RuntimePlatform.GameCoreXboxSeries + )] public IEnumerator Run(SceneGraphicsTestCase testCase) { yield return HDRP_GraphicTestRunner.Run(testCase); From 7600971e8e1a33f6f7136d5f6ba50eca94618b29 Mon Sep 17 00:00:00 2001 From: Mahadevprasad M B Date: Sat, 27 Jun 2026 08:14:47 +0000 Subject: [PATCH 03/52] [6000.5] Fixed a memory leak issue in URP standalone player builds that generated leak warnings in the Player log --- .../Runtime/GPUDriven/GPUResidentDrawer.cs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Packages/com.unity.render-pipelines.core/Runtime/GPUDriven/GPUResidentDrawer.cs b/Packages/com.unity.render-pipelines.core/Runtime/GPUDriven/GPUResidentDrawer.cs index 87eeefdb770..3c662065833 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/GPUDriven/GPUResidentDrawer.cs +++ b/Packages/com.unity.render-pipelines.core/Runtime/GPUDriven/GPUResidentDrawer.cs @@ -344,6 +344,8 @@ internal static void Reinitialize() private static void Cleanup() { + RenderPipelineManager.activeRenderPipelineDisposed -= Cleanup; + if (s_Instance == null) return; @@ -361,6 +363,7 @@ private static void Recreate(GPUResidentDrawerSettings settings) if (IsGPUResidentDrawerSupportedBySRP(settings, out var message, out var severity)) { s_Instance = new GPUResidentDrawer(settings); + RenderPipelineManager.activeRenderPipelineDisposed += Cleanup; ++s_InstanceVersion; } else From dc1bcd06d3ffcd5fe3c1ef7dc19683c5578298f1 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Sat, 27 Jun 2026 08:14:47 +0000 Subject: [PATCH 04/52] [Port] [6000.5] [URP] [UUM-141980] Fix Bloom missing in Player when Dirt Texture is None --- .../Runtime/Passes/PostProcess/UberPostProcessPass.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Passes/PostProcess/UberPostProcessPass.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Passes/PostProcess/UberPostProcessPass.cs index e9ca2d16de5..7353087a583 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Passes/PostProcess/UberPostProcessPass.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Passes/PostProcess/UberPostProcessPass.cs @@ -412,7 +412,8 @@ public static void CalcBloomParams(Bloom bloom, in TextureDesc srcDesc, out Vect float dirtRatio = dirtTexture.width / (float)dirtTexture.height; float screenRatio = srcDesc.width / (float)srcDesc.height; dirtScaleOffset = new Vector4(1f, 1f, 0f, 0f); - dirtIntensity = bloom.dirtIntensity.value; + // Must match _DIRT variant stripping in ShaderBuildPreprocessor. + dirtIntensity = bloom.dirtTexture.value == null ? 0f : bloom.dirtIntensity.value; if (dirtRatio > screenRatio) { From 475919e963517dc73faf9aed856d9f8a6ef2ca27 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Sat, 27 Jun 2026 08:14:48 +0000 Subject: [PATCH 05/52] [Port] [6000.5] [ShaderGraph] Fix issue where subgraph float enum dropdowns were not updating properly --- .../Data/Graphs/Vector1MaterialEnumSlot.cs | 66 ++++++++++++++++--- 1 file changed, 58 insertions(+), 8 deletions(-) diff --git a/Packages/com.unity.shadergraph/Editor/Data/Graphs/Vector1MaterialEnumSlot.cs b/Packages/com.unity.shadergraph/Editor/Data/Graphs/Vector1MaterialEnumSlot.cs index 61255e09051..93f12015451 100644 --- a/Packages/com.unity.shadergraph/Editor/Data/Graphs/Vector1MaterialEnumSlot.cs +++ b/Packages/com.unity.shadergraph/Editor/Data/Graphs/Vector1MaterialEnumSlot.cs @@ -18,6 +18,10 @@ class Vector1MaterialEnumSlot : Vector1MaterialSlot [SerializeField] List values; + // Raised when CopyDefaultValue swaps in new entries; EnumSlotControlView rebuilds the dropdown. + [NonSerialized] + internal Action entriesChanged; + internal Vector1MaterialEnumSlot() { } public Vector1MaterialEnumSlot( @@ -54,6 +58,35 @@ public override void CopyValuesFrom(MaterialSlot foundSlot) value = 0; } + // AddSlot's modify-in-place path calls this; copy entries so Sub Graph property edits propagate. + public override void CopyDefaultValue(MaterialSlot other) + { + base.CopyDefaultValue(other); + if (other is Vector1MaterialEnumSlot enumSlot && !EntriesEqual(enumSlot)) + { + options = enumSlot.options != null ? new List(enumSlot.options) : new List(); + values = enumSlot.values != null ? new List(enumSlot.values) : new List(); + if (!values.Contains((int)value)) + value = values.Count > 0 ? values[0] : 0; + entriesChanged?.Invoke(); + } + } + + bool EntriesEqual(Vector1MaterialEnumSlot other) + { + if (options == null || other.options == null || values == null || other.values == null) + return options == other.options && values == other.values; + if (options.Count != other.options.Count || values.Count != other.values.Count) + return false; + for (int i = 0; i < options.Count; i++) + if (options[i] != other.options[i]) + return false; + for (int i = 0; i < values.Count; i++) + if (values[i] != other.values[i]) + return false; + return true; + } + public override VisualElement InstantiateControl() { return new EnumSlotControlView(this); @@ -62,28 +95,45 @@ public override VisualElement InstantiateControl() class EnumSlotControlView : VisualElement { Vector1MaterialEnumSlot m_Slot; + DropdownField m_DropdownField; public EnumSlotControlView(Vector1MaterialEnumSlot slot) { m_Slot = slot; + BuildDropdown(); + + RegisterCallback(_ => m_Slot.entriesChanged += RebuildDropdown); + RegisterCallback(_ => m_Slot.entriesChanged -= RebuildDropdown); + } - int idx = m_Slot.values.FindIndex(e => e == (int)slot.value); - if (idx < 0 || idx >= slot.options.Count) + void BuildDropdown() + { + int idx = m_Slot.values.FindIndex(e => e == (int)m_Slot.value); + if (idx < 0 || idx >= m_Slot.options.Count) idx = 0; - var dropdownField = slot.hideConnector - ? new DropdownField(slot.RawDisplayName(), slot.options, idx) - : new DropdownField(slot.options, idx); + m_DropdownField = m_Slot.hideConnector + ? new DropdownField(m_Slot.RawDisplayName(), new List(m_Slot.options), idx) + : new DropdownField(new List(m_Slot.options), idx); - dropdownField.RegisterValueChangedCallback(OnValueChange); - Add(dropdownField); + m_DropdownField.RegisterValueChangedCallback(OnValueChange); + Add(m_DropdownField); + } + + void RebuildDropdown() + { + if (m_DropdownField != null) + Remove(m_DropdownField); + BuildDropdown(); } void OnValueChange(ChangeEvent evt) { int newIndex = m_Slot.options.FindIndex(e => e == evt.newValue); + if (newIndex < 0 || newIndex >= m_Slot.values.Count) + return; - int newValue = m_Slot.values[newIndex]; // TODO Safety + int newValue = m_Slot.values[newIndex]; if (newValue != m_Slot.value) { From e29b8b584390fc1858725b9f48139918a1f833b4 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Tue, 30 Jun 2026 07:53:51 +0000 Subject: [PATCH 06/52] [Port] [6000.5] [2d] Validate all euler angle inputs for QuaternionEulerField --- .../Editor/QuaternionPropertyDrawer.cs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/Packages/com.unity.render-pipelines.core/Editor/QuaternionPropertyDrawer.cs b/Packages/com.unity.render-pipelines.core/Editor/QuaternionPropertyDrawer.cs index ebaaef784e8..3b9b4f646bf 100644 --- a/Packages/com.unity.render-pipelines.core/Editor/QuaternionPropertyDrawer.cs +++ b/Packages/com.unity.render-pipelines.core/Editor/QuaternionPropertyDrawer.cs @@ -14,7 +14,15 @@ public override void OnGUI(Rect position, SerializedProperty property, GUIConten euler = EditorGUI.Vector3Field(position, label, euler); EditorGUIUtility.wideMode = w; if (EditorGUI.EndChangeCheck()) - property.quaternionValue = Quaternion.Euler(euler); + { + bool isFinite = (!float.IsNaN(euler.x) && !float.IsInfinity(euler.x) && + !float.IsNaN(euler.y) && !float.IsInfinity(euler.y) && + !float.IsNaN(euler.z) && !float.IsInfinity(euler.z)); + if (isFinite) + { + property.quaternionValue = Quaternion.Euler(euler.x, euler.y, euler.z); + } + } } } } From 4232a2452640513fbe88a18e128cc621230b55c7 Mon Sep 17 00:00:00 2001 From: Alexandre Thibodeau Date: Tue, 30 Jun 2026 07:53:53 +0000 Subject: [PATCH 07/52] Backport UUM-145855 to 6000.5 --- .../Generation/Targets/UITK/UISubTarget.cs | 8 + .../ShaderGraph/Assets/Scenes/UITKNodes.unity | 398 ------------------ .../Assets/Scenes/UITKNodes.unity.meta | 7 - 3 files changed, 8 insertions(+), 405 deletions(-) delete mode 100644 Tests/SRPTests/Projects/ShaderGraph/Assets/Scenes/UITKNodes.unity delete mode 100644 Tests/SRPTests/Projects/ShaderGraph/Assets/Scenes/UITKNodes.unity.meta diff --git a/Packages/com.unity.shadergraph/Editor/Generation/Targets/UITK/UISubTarget.cs b/Packages/com.unity.shadergraph/Editor/Generation/Targets/UITK/UISubTarget.cs index 791af02fe9c..72ac9f4c12a 100644 --- a/Packages/com.unity.shadergraph/Editor/Generation/Targets/UITK/UISubTarget.cs +++ b/Packages/com.unity.shadergraph/Editor/Generation/Targets/UITK/UISubTarget.cs @@ -469,6 +469,14 @@ static class UITKRequiredFields StructFields.Varyings.texCoord1, StructFields.Varyings.texCoord3, StructFields.Varyings.texCoord4, + + // uie_custom_frag always computes AA coverage and rect clipping from these, so they must be + // copied into SurfaceDescriptionInputs even when no graph node reads them. Otherwise they stay + // zero (a constant-color graph loses arc carving and edge AA) — the requiresUITK ConditionalFields + // in GenerationUtils only populate them when an IMayRequireUITK node happens to be present. + StructFields.SurfaceDescriptionInputs.typeTexSettings, + StructFields.SurfaceDescriptionInputs.circle, + StructFields.SurfaceDescriptionInputs.uvClip, }; } #endregion diff --git a/Tests/SRPTests/Projects/ShaderGraph/Assets/Scenes/UITKNodes.unity b/Tests/SRPTests/Projects/ShaderGraph/Assets/Scenes/UITKNodes.unity deleted file mode 100644 index b875fc50a65..00000000000 --- a/Tests/SRPTests/Projects/ShaderGraph/Assets/Scenes/UITKNodes.unity +++ /dev/null @@ -1,398 +0,0 @@ -%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: 0 - m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} - m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 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: 1 - 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: 500 - m_PVRBounces: 2 - m_PVREnvironmentSampleCount: 500 - m_PVREnvironmentReferencePointCount: 2048 - m_PVRFilteringMode: 2 - m_PVRDenoiserTypeDirect: 0 - m_PVRDenoiserTypeIndirect: 0 - m_PVRDenoiserTypeAO: 0 - m_PVRFilterTypeDirect: 0 - m_PVRFilterTypeIndirect: 0 - m_PVRFilterTypeAO: 0 - m_PVREnvironmentMIS: 0 - m_PVRCulling: 1 - m_PVRFilteringGaussRadiusDirect: 1 - m_PVRFilteringGaussRadiusIndirect: 5 - m_PVRFilteringGaussRadiusAO: 2 - m_PVRFilteringAtrousPositionSigmaDirect: 0.5 - m_PVRFilteringAtrousPositionSigmaIndirect: 2 - m_PVRFilteringAtrousPositionSigmaAO: 1 - m_ExportTrainingData: 0 - m_TrainingDataDestination: TrainingData - m_LightProbeSampleCountMultiplier: 4 - m_LightingDataAsset: {fileID: 0} - m_LightingSettings: {fileID: 4890085278179872738, guid: 4595b9edbfc54e94491cc97bfdbb3a8d, - type: 2} ---- !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 &487053996 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 487053999} - - component: {fileID: 487053998} - - component: {fileID: 487053997} - - component: {fileID: 487054000} - 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 &487053997 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 487053996} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 7de28847c8d6a2f4b9e5e48e2f1e59aa, type: 3} - m_Name: - m_EditorClassIdentifier: - ImageComparisonSettings: - TargetWidth: 960 - TargetHeight: 720 - TargetMSAASamples: 1 - PerPixelCorrectnessThreshold: 0.00075 - PerPixelGammaThreshold: 0.003921569 - PerPixelAlphaThreshold: 0.003921569 - RMSEThreshold: 0 - AverageCorrectnessThreshold: 0.0001 - IncorrectPixelsThreshold: 0.0000038146973 - UseHDR: 0 - UseBackBuffer: 0 - ImageResolution: 0 - ActiveImageTests: 1 - ActivePixelTests: 7 - WaitFrames: 5 ---- !u!20 &487053998 -Camera: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 487053996} - m_Enabled: 1 - serializedVersion: 2 - m_ClearFlags: 2 - m_BackGroundColor: {r: 0, g: 0.4745098, b: 1, 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: 3 - 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 &487053999 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 487053996} - 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!114 &487054000 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 487053996} - 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_TaaSettings: - m_Quality: 3 - m_FrameInfluence: 0.1 - m_JitterScale: 1 - m_MipBias: 0 - m_VarianceClampScale: 0.9 - m_ContrastAdaptiveSharpening: 0 - m_Version: 2 ---- !u!1 &1438391547 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1438391549} - - component: {fileID: 1438391548} - m_Layer: 5 - m_Name: ForceGammaUIDocument - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!114 &1438391548 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1438391547} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 19102, guid: 0000000000000000e000000000000000, type: 0} - m_Name: - m_EditorClassIdentifier: UnityEngine.dll::UnityEngine.UIElements.UIDocument - m_PanelSettings: {fileID: 11400000, guid: af67b323ce2f14d40bd2caeb52ad9162, type: 2} - m_ParentUI: {fileID: 0} - sourceAsset: {fileID: 9197481963319205126, guid: d8dc22d8d3549e04aba1de4abc23fe71, - type: 3} - m_SortingOrder: 0 - m_Position: 0 - m_WorldSpaceSizeMode: 1 - m_WorldSpaceWidth: 1920 - m_WorldSpaceHeight: 1080 - m_PivotReferenceSize: 0 - m_Pivot: 0 - m_WorldSpaceCollider: {fileID: 0} ---- !u!4 &1438391549 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1438391547} - 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 &1725550268 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1725550270} - - component: {fileID: 1725550269} - m_Layer: 5 - m_Name: UIDocument - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!114 &1725550269 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1725550268} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 19102, guid: 0000000000000000e000000000000000, type: 0} - m_Name: - m_EditorClassIdentifier: UnityEngine.dll::UnityEngine.UIElements.UIDocument - m_PanelSettings: {fileID: 11400000, guid: 62880d4a601aff54e9b303c46d9394cc, type: 2} - m_ParentUI: {fileID: 0} - sourceAsset: {fileID: 9197481963319205126, guid: c7c9fccf64ec284419c7460dc8d13bbd, - type: 3} - m_SortingOrder: 0 - m_Position: 0 - m_WorldSpaceSizeMode: 1 - m_WorldSpaceWidth: 760 - m_WorldSpaceHeight: 560 - m_PivotReferenceSize: 0 - m_Pivot: 0 - m_WorldSpaceCollider: {fileID: 0} ---- !u!4 &1725550270 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1725550268} - serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 7} - 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!1660057539 &9223372036854775807 -SceneRoots: - m_ObjectHideFlags: 0 - m_Roots: - - {fileID: 487053999} - - {fileID: 1725550270} - - {fileID: 1438391549} diff --git a/Tests/SRPTests/Projects/ShaderGraph/Assets/Scenes/UITKNodes.unity.meta b/Tests/SRPTests/Projects/ShaderGraph/Assets/Scenes/UITKNodes.unity.meta deleted file mode 100644 index a1f687e5db2..00000000000 --- a/Tests/SRPTests/Projects/ShaderGraph/Assets/Scenes/UITKNodes.unity.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 587454b5942ef6342a58025a454326f3 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: From be12d396f0f14088afe383d4c1f9c45671b54a94 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Tue, 30 Jun 2026 07:53:53 +0000 Subject: [PATCH 08/52] [Port] [6000.5] [ShaderGraph] update documentation on expression node. --- .../com.unity.shadergraph/Documentation~/Expression-Node.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Packages/com.unity.shadergraph/Documentation~/Expression-Node.md b/Packages/com.unity.shadergraph/Documentation~/Expression-Node.md index b5f16f0adce..af3afdcee33 100644 --- a/Packages/com.unity.shadergraph/Documentation~/Expression-Node.md +++ b/Packages/com.unity.shadergraph/Documentation~/Expression-Node.md @@ -2,6 +2,9 @@ Use the Expression node to specify a complex mathematical expression as a string instead of using multiple [Math nodes](Math-Nodes.md). +> [!NOTE] +> Unity injects the provided expression into the shader code as HLSL and validates it through preview shader compilation. Ensure that the provided expression conforms to HLSL syntax. + ## Input ports The number and type of input ports automatically adjust to the values of the [node controls](#controls). Unity adds an input port for each variable in the expression in the text field. From c27bdb3ae42e5b7c18d380a7832cecc0289206e8 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Tue, 30 Jun 2026 21:36:47 +0000 Subject: [PATCH 09/52] [Port] [6000.5] UUM-143151: Add SuspendValidation to batch graph validation --- .../Editor/ProviderSystem/Model/ProviderNode.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Packages/com.unity.shadergraph/Editor/ProviderSystem/Model/ProviderNode.cs b/Packages/com.unity.shadergraph/Editor/ProviderSystem/Model/ProviderNode.cs index 6df4f197150..fa04fa19fac 100644 --- a/Packages/com.unity.shadergraph/Editor/ProviderSystem/Model/ProviderNode.cs +++ b/Packages/com.unity.shadergraph/Editor/ProviderSystem/Model/ProviderNode.cs @@ -137,7 +137,7 @@ internal void UpdateModel() foreach(var param in parameters) { var paramHeader = new ParameterHeader(param, Provider); - ParamHeaders.Add(param.Name, paramHeader); + ParamHeaders.TryAdd(param.Name, paramHeader); paramOrder.Add(paramHeader); if (oldSlotMap.TryGetValue(param.Name, out var idTuple)) { From 31455dee9f99dd3dcb709fe9c1f0a6b42075da69 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Tue, 30 Jun 2026 21:36:47 +0000 Subject: [PATCH 10/52] [Port] [6000.5] DOCG-8892 Fix render graph variable name in example render pipeline --- .../Documentation~/render-graph-writing-a-render-pipeline.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Packages/com.unity.render-pipelines.core/Documentation~/render-graph-writing-a-render-pipeline.md b/Packages/com.unity.render-pipelines.core/Documentation~/render-graph-writing-a-render-pipeline.md index 8578643b1d8..2901db57ee5 100644 --- a/Packages/com.unity.render-pipelines.core/Documentation~/render-graph-writing-a-render-pipeline.md +++ b/Packages/com.unity.render-pipelines.core/Documentation~/render-graph-writing-a-render-pipeline.md @@ -124,7 +124,7 @@ public class ExampleRenderPipeline : RenderPipeline } catch (Exception e) { - if (renderGraph.ResetGraphAndLogException(e)) + if (myRenderGraph.ResetGraphAndLogException(e)) throw; } From 9e1b95faaa0fc81f3973fb142463591b492cbebb Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Thu, 2 Jul 2026 07:14:16 +0000 Subject: [PATCH 11/52] [Port] [6000.5] [ShaderGraph] Fix issue with float enum names changing on value changes --- .../Inspector/PropertyDrawers/ShaderInputPropertyDrawer.cs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/Packages/com.unity.shadergraph/Editor/Drawing/Inspector/PropertyDrawers/ShaderInputPropertyDrawer.cs b/Packages/com.unity.shadergraph/Editor/Drawing/Inspector/PropertyDrawers/ShaderInputPropertyDrawer.cs index 48cfd26f2d7..5927cfd5e8e 100644 --- a/Packages/com.unity.shadergraph/Editor/Drawing/Inspector/PropertyDrawers/ShaderInputPropertyDrawer.cs +++ b/Packages/com.unity.shadergraph/Editor/Drawing/Inspector/PropertyDrawers/ShaderInputPropertyDrawer.cs @@ -1928,12 +1928,15 @@ void EnumAddCallbacks() EditorGUI.BeginChangeCheck(); var name = EditorGUI.DelayedTextField(displayRect, entry.name, EditorStyles.label); - var value = EditorGUI.IntField(new Rect(rect.x + rect.width / 2, rect.y, rect.width / 2, EditorGUIUtility.singleLineHeight), entry.value); + var value = EditorGUI.DelayedIntField(new Rect(rect.x + rect.width / 2, rect.y, rect.width / 2, EditorGUIUtility.singleLineHeight), entry.value); if (EditorGUI.EndChangeCheck()) { this._preChangeValueCallback("Edit Enum Entry"); - name = GraphUtil.SanitizeName(vector1Property.enumNames, "{0} {1}", name, m_DisplayNameDisallowedPattern); + var otherNames = new List(vector1Property.enumNames.Count - 1); + for (int i = 0; i < vector1Property.enumNames.Count; i++) + if (i != index) otherNames.Add(vector1Property.enumNames[i]); + name = GraphUtil.SanitizeName(otherNames, "{0} {1}", name, m_DisplayNameDisallowedPattern); if (string.IsNullOrWhiteSpace(name)) Debug.LogWarning("Invalid display name. Display names cannot be empty or all whitespace."); else if (int.TryParse(name, out int intVal) || float.TryParse(name, out float floatVal)) From cf518903361db70ccc4b1caa3d98a524824ca1ef Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Thu, 2 Jul 2026 07:14:17 +0000 Subject: [PATCH 12/52] [Port] [6000.5] [2d] Handle Tile flip using TransformVertices --- .../093_TilemapRenderer_NormalFlip.meta | 8 + .../093_TilemapRenderer_NormalFlip.unity | 1670 +++++++++++++++++ .../093_TilemapRenderer_NormalFlip.unity.meta | 7 + .../Sprites.meta | 8 + .../Sprites/Square-tile-broken.png | Bin 0 -> 12623 bytes .../Sprites/Square-tile-broken.png.meta | 116 ++ .../Sprites/Square-tile-broken_n.png | Bin 0 -> 14177 bytes .../Sprites/Square-tile-broken_n.png.meta | 114 ++ .../Sprites/sample-atlas.mat | 140 ++ .../Sprites/sample-atlas.mat.meta | 8 + .../Sprites/sample-atlas.png | Bin 0 -> 23183 bytes .../Sprites/sample-atlas.png.meta | 232 +++ .../Sprites/sample-atlas_n.png | Bin 0 -> 22043 bytes .../Sprites/sample-atlas_n.png.meta | 114 ++ .../Square-tile-atlas.asset | 36 + .../Square-tile-atlas.asset.meta | 8 + .../Square-tile-broken-atlas.asset | 36 + .../Square-tile-broken-atlas.asset.meta | 8 + .../Square-tile-broken.asset | 36 + .../Square-tile-broken.asset.meta | 8 + 20 files changed, 2549 insertions(+) create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip.unity create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip.unity.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/Square-tile-broken.png create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/Square-tile-broken.png.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/Square-tile-broken_n.png create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/Square-tile-broken_n.png.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/sample-atlas.mat create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/sample-atlas.mat.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/sample-atlas.png create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/sample-atlas.png.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/sample-atlas_n.png create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/sample-atlas_n.png.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Square-tile-atlas.asset create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Square-tile-atlas.asset.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Square-tile-broken-atlas.asset create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Square-tile-broken-atlas.asset.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Square-tile-broken.asset create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Square-tile-broken.asset.meta diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip.meta new file mode 100644 index 00000000000..b7a24dcc141 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 574fbee0faef3f84e8121373acd9ab0a +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip.unity b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip.unity new file mode 100644 index 00000000000..d998d29b83d --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip.unity @@ -0,0 +1,1670 @@ +%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: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 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 &333899630 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 333899632} + - component: {fileID: 333899631} + m_Layer: 0 + m_Name: Blue + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &333899631 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 333899630} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 073797afb82c5a1438f328866b10b3f0, type: 3} + m_Name: + m_EditorClassIdentifier: + m_ComponentVersion: 3 + m_LightType: 3 + m_BlendStyleIndex: 0 + m_Light2DProvider: + rid: -2 + m_SelectionSources: + rid: 6116595536818340054 + m_FalloffIntensity: 1 + m_Color: {r: 0, g: 0.021628141, b: 1, a: 1} + m_Intensity: 16.49 + m_LightVolumeIntensity: 1 + m_LightVolumeEnabled: 0 + m_ApplyToSortingLayers: {_typeName: int, _data: 00000000} + 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_ShadowsEnabled: 0 + m_ShadowIntensity: 0.75 + m_ShadowSoftness: 0 + 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: 2.1 + m_PointLightOuterRadius: 10.13 + 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} + references: + version: 2 + RefIds: + - rid: -2 + type: {class: , ns: , asm: } + - rid: 6116595536818340054 + type: {class: Light2DProviderSources, ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.2D.Runtime} + data: + m_SelectedHashCode: 3 + m_SelectedSource: + rid: -2 + m_Provider2DCache: + rid: 6116595536818340055 + - rid: 6116595536818340055 + type: {class: 'Provider2DCache`1[[UnityEngine.Rendering.Universal.Light2DProvider, Unity.RenderPipelines.Universal.2D.Runtime]]', ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.2D.Runtime} + data: + m_Cache: [] +--- !u!4 &333899632 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 333899630} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -8.04, y: -3.59, 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 &426420772 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 426420774} + - component: {fileID: 426420773} + m_Layer: 0 + m_Name: Red + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &426420773 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 426420772} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 073797afb82c5a1438f328866b10b3f0, type: 3} + m_Name: + m_EditorClassIdentifier: + m_ComponentVersion: 3 + m_LightType: 3 + m_BlendStyleIndex: 0 + m_Light2DProvider: + rid: -2 + m_SelectionSources: + rid: 6116595536818340054 + m_FalloffIntensity: 1 + m_Color: {r: 1, g: 0, b: 0, a: 1} + m_Intensity: 16.49 + m_LightVolumeIntensity: 1 + m_LightVolumeEnabled: 0 + m_ApplyToSortingLayers: {_typeName: int, _data: 00000000} + 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_ShadowsEnabled: 0 + m_ShadowIntensity: 0.75 + m_ShadowSoftness: 0 + 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: 2.1 + m_PointLightOuterRadius: 10.13 + 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} + references: + version: 2 + RefIds: + - rid: -2 + type: {class: , ns: , asm: } + - rid: 6116595536818340054 + type: {class: Light2DProviderSources, ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.2D.Runtime} + data: + m_SelectedHashCode: 3 + m_SelectedSource: + rid: -2 + m_Provider2DCache: + rid: 6116595536818340055 + - rid: 6116595536818340055 + type: {class: 'Provider2DCache`1[[UnityEngine.Rendering.Universal.Light2DProvider, Unity.RenderPipelines.Universal.2D.Runtime]]', ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.2D.Runtime} + data: + m_Cache: [] +--- !u!4 &426420774 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 426420772} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -1.026, y: -3.769, 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 &925930535 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 925930536} + - component: {fileID: 925930538} + - component: {fileID: 925930537} + m_Layer: 0 + m_Name: Individual + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &925930536 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 925930535} + 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: 1198427863} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!483693784 &925930537 +TilemapRenderer: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 925930535} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 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_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: -1 + m_MaskInteraction: 0 + m_ChunkSize: {x: 32, y: 32, z: 32} + m_ChunkCullingBounds: {x: 0.001953125, y: 0.16375, z: 0} + m_MaxChunkCount: 16 + m_MaxFrameAge: 16 + m_SortOrder: 3 + m_Mode: 1 + m_DetectChunkCullingBounds: 0 +--- !u!1839735485 &925930538 +Tilemap: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 925930535} + m_Enabled: 1 + m_Tiles: + - first: {x: -7, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 2 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -8, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 3 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -9, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 1 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -10, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 1 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -9, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -8, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 1 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -11, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 1 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -10, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -9, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 1 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -12, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 1 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -11, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -10, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 1 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -13, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 3 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -11, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 1 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -14, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 2 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + m_AnimatedTiles: {} + m_TileAssetArray: + - serializedVersion: 2 + m_RefCount: 15 + m_Data: {fileID: 11400000, guid: a224aa798cf736e43b65b93cd6c783b7, type: 2} + - serializedVersion: 2 + m_RefCount: 0 + m_Data: {fileID: 11400000, guid: cde599397cd0fdc4d88c08918adcb3ed, type: 2} + m_TileSpriteArray: + - serializedVersion: 2 + m_RefCount: 15 + m_Data: {fileID: -1599052531, guid: 04234695f0f02cb4e90fc10804f6da03, type: 3} + - serializedVersion: 2 + m_RefCount: 0 + m_Data: {fileID: 21300000, guid: 2af9ce7b8c3457c4dba73abf739aa8f4, type: 3} + m_TileMatrixArray: + - serializedVersion: 2 + m_RefCount: 3 + m_Data: + e00: -1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + - serializedVersion: 2 + m_RefCount: 8 + m_Data: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + - serializedVersion: 2 + m_RefCount: 2 + m_Data: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: -1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + - serializedVersion: 2 + m_RefCount: 2 + m_Data: + e00: -1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: -1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_TileColorArray: + - serializedVersion: 2 + m_RefCount: 0 + m_Data: {r: -1.0178457e-30, g: -1.0178457e-30, b: -1.0178457e-30, a: -1.0178457e-30} + - serializedVersion: 2 + m_RefCount: 15 + m_Data: {r: 1, g: 1, b: 1, a: 1} + m_TileObjectToInstantiateArray: [] + m_AnimationFrameRate: 1 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Origin: {x: -15, y: -7, z: 0} + m_Size: {x: 15, y: 11, z: 1} + m_TileAnchor: {x: 0, y: 0, z: 0} + m_TileOrientation: 0 + m_TileOrientationMatrix: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 +--- !u!1 &1143167946 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1143167947} + - component: {fileID: 1143167949} + - component: {fileID: 1143167948} + m_Layer: 0 + m_Name: Chunk + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1143167947 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1143167946} + 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: 1198427863} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!483693784 &1143167948 +TilemapRenderer: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1143167946} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 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_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_ChunkSize: {x: 32, y: 32, z: 32} + m_ChunkCullingBounds: {x: 0.001953125, y: 0.16375, z: 0} + m_MaxChunkCount: 16 + m_MaxFrameAge: 16 + m_SortOrder: 3 + m_Mode: 0 + m_DetectChunkCullingBounds: 0 +--- !u!1839735485 &1143167949 +Tilemap: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1143167946} + m_Enabled: 1 + m_Tiles: + - first: {x: -10, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 2 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -11, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 3 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -12, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 1 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -13, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 1 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -12, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -11, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 1 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -14, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 1 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -13, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -12, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 1 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -15, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 1 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -14, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -13, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 1 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -16, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 3 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -14, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 1 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -17, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 2 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + m_AnimatedTiles: {} + m_TileAssetArray: + - serializedVersion: 2 + m_RefCount: 15 + m_Data: {fileID: 11400000, guid: a224aa798cf736e43b65b93cd6c783b7, type: 2} + - serializedVersion: 2 + m_RefCount: 0 + m_Data: {fileID: 11400000, guid: cde599397cd0fdc4d88c08918adcb3ed, type: 2} + m_TileSpriteArray: + - serializedVersion: 2 + m_RefCount: 15 + m_Data: {fileID: -1599052531, guid: 04234695f0f02cb4e90fc10804f6da03, type: 3} + - serializedVersion: 2 + m_RefCount: 0 + m_Data: {fileID: 21300000, guid: 2af9ce7b8c3457c4dba73abf739aa8f4, type: 3} + m_TileMatrixArray: + - serializedVersion: 2 + m_RefCount: 3 + m_Data: + e00: -1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + - serializedVersion: 2 + m_RefCount: 8 + m_Data: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + - serializedVersion: 2 + m_RefCount: 2 + m_Data: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: -1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + - serializedVersion: 2 + m_RefCount: 2 + m_Data: + e00: -1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: -1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_TileColorArray: + - serializedVersion: 2 + m_RefCount: 0 + m_Data: {r: -1.0178457e-30, g: -1.0178457e-30, b: -1.0178457e-30, a: -1.0178457e-30} + - serializedVersion: 2 + m_RefCount: 15 + m_Data: {r: 1, g: 1, b: 1, a: 1} + m_TileObjectToInstantiateArray: [] + m_AnimationFrameRate: 1 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Origin: {x: -18, y: -11, z: 0} + m_Size: {x: 18, y: 15, z: 1} + m_TileAnchor: {x: 0, y: 0, z: 0} + m_TileOrientation: 0 + m_TileOrientationMatrix: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 +--- !u!1 &1198427861 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1198427863} + - component: {fileID: 1198427862} + m_Layer: 0 + m_Name: Grid + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!156049354 &1198427862 +Grid: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1198427861} + m_Enabled: 1 + m_CellSize: {x: 1, y: 0.5, z: 1} + m_CellGap: {x: 0, y: 0, z: 0} + m_CellLayout: 3 + m_CellSwizzle: 0 +--- !u!4 &1198427863 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1198427861} + 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: 1143167947} + - {fileID: 1624973169} + - {fileID: 925930536} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1624973168 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1624973169} + - component: {fileID: 1624973171} + - component: {fileID: 1624973170} + m_Layer: 0 + m_Name: SRPBatch + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1624973169 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1624973168} + 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: 1198427863} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!483693784 &1624973170 +TilemapRenderer: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1624973168} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 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_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 1 + m_MaskInteraction: 0 + m_ChunkSize: {x: 32, y: 32, z: 32} + m_ChunkCullingBounds: {x: 0.001953125, y: 0.16375, z: 0} + m_MaxChunkCount: 16 + m_MaxFrameAge: 16 + m_SortOrder: 3 + m_Mode: 2 + m_DetectChunkCullingBounds: 0 +--- !u!1839735485 &1624973171 +Tilemap: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1624973168} + m_Enabled: 1 + m_Tiles: + - first: {x: -13, y: -11, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 3 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -14, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 2 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -15, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 1 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -16, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 1 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -15, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -14, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 1 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -17, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 1 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -16, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -15, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 1 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -18, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 1 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -17, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -16, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 1 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -19, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 2 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -17, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 1 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -20, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 3 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + m_AnimatedTiles: {} + m_TileAssetArray: + - serializedVersion: 2 + m_RefCount: 15 + m_Data: {fileID: 11400000, guid: a224aa798cf736e43b65b93cd6c783b7, type: 2} + - serializedVersion: 2 + m_RefCount: 0 + m_Data: {fileID: 11400000, guid: cde599397cd0fdc4d88c08918adcb3ed, type: 2} + m_TileSpriteArray: + - serializedVersion: 2 + m_RefCount: 15 + m_Data: {fileID: -1599052531, guid: 04234695f0f02cb4e90fc10804f6da03, type: 3} + - serializedVersion: 2 + m_RefCount: 0 + m_Data: {fileID: 21300000, guid: 2af9ce7b8c3457c4dba73abf739aa8f4, type: 3} + m_TileMatrixArray: + - serializedVersion: 2 + m_RefCount: 3 + m_Data: + e00: -1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + - serializedVersion: 2 + m_RefCount: 8 + m_Data: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + - serializedVersion: 2 + m_RefCount: 2 + m_Data: + e00: -1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: -1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + - serializedVersion: 2 + m_RefCount: 2 + m_Data: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: -1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_TileColorArray: + - serializedVersion: 2 + m_RefCount: 0 + m_Data: {r: -1.0178457e-30, g: -1.0178457e-30, b: -1.0178457e-30, a: -1.0178457e-30} + - serializedVersion: 2 + m_RefCount: 15 + m_Data: {r: 1, g: 1, b: 1, a: 1} + m_TileObjectToInstantiateArray: [] + m_AnimationFrameRate: 1 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Origin: {x: -20, y: -11, z: 0} + m_Size: {x: 20, y: 15, z: 1} + m_TileAnchor: {x: 0, y: 0, z: 0} + m_TileOrientation: 0 + m_TileOrientationMatrix: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 +--- !u!1 &1793714796 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1793714801} + - component: {fileID: 1793714800} + - component: {fileID: 1793714799} + - component: {fileID: 1793714798} + - component: {fileID: 1793714797} + 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 &1793714797 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1793714796} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 73231aa468d81ea49bc3d914080de185, type: 3} + m_Name: + m_EditorClassIdentifier: + ImageComparisonSettings: + TargetWidth: 640 + TargetHeight: 360 + TargetMSAASamples: 1 + PerPixelCorrectnessThreshold: 0.001 + PerPixelGammaThreshold: 0.003921569 + PerPixelAlphaThreshold: 0.003921569 + RMSEThreshold: 0 + AverageCorrectnessThreshold: 0.005 + IncorrectPixelsThreshold: 0.0000038146973 + UseHDR: 0 + UseBackBuffer: 0 + ActiveImageTests: 1 + ActivePixelTests: -1 + WaitFrames: 0 + XRCompatible: 0 + gpuDrivenCompatible: 1 + CheckMemoryAllocation: 1 + renderBackendCompatibility: 2 + amdMinThreshold: 0.002 + SetBackBufferResolution: 0 +--- !u!114 &1793714798 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1793714796} + 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_TaaSettings: + m_Quality: 3 + m_FrameInfluence: 0.1 + m_JitterScale: 1 + m_MipBias: 0 + m_VarianceClampScale: 0.9 + m_ContrastAdaptiveSharpening: 0 + m_Version: 2 +--- !u!81 &1793714799 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1793714796} + m_Enabled: 1 +--- !u!20 &1793714800 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1793714796} + 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: 3 + 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 &1793714801 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1793714796} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -4.5, y: -4, 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!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 1793714801} + - {fileID: 1198427863} + - {fileID: 333899632} + - {fileID: 426420774} diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip.unity.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip.unity.meta new file mode 100644 index 00000000000..a78e9789b0f --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 26d4d04f1f94daa4093606fcbad0b499 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites.meta new file mode 100644 index 00000000000..79f6b35752f --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 565de2d1e5fa01449bc741abc748d57c +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/Square-tile-broken.png b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/Square-tile-broken.png new file mode 100644 index 0000000000000000000000000000000000000000..e69de19add43a5ce39f1368fb55b6f695390d447 GIT binary patch literal 12623 zcmW+-2RNJG7e=gT>`|MhR%r>bYSWliqpC)0#0W)IslB3vfVezr>F0( zRg8Q%l&Ckd^mhyYyyGqX_ji+s<)86c+xp>Dqd%6%c^8_eo3(_S{!U+dU7^1D7=BLd zj`i&_K`0h;VV!tSQuKw6_I)cWyOw+1y!_ha$B!S|s|g&bCI+xzG~ zoR+h5@kU0EM4Kpd|Ha72eVH_);IL!_)ZWf6H?WQ7a*+N@{`pxDbl-L&)2{VrmvQTu zWXx&4{(-u>y1iWH+m&M#6_sYs%CFr`OR2ZXJMr{PLK>TVI(Bvf*tS0C-6vK}`x2#K z+~laDRRTU25TnXigzeLpFB0Qk_p`FI|EAuS#x^u4_Wbo_OYBPk2Shxw$Bgv9+~b`h8m_4VadVjm^z`d1zG3E*~#1Ilpx1QRmLZ%awgzc6Ro~ z4<9}Vv13CKE{o}|o02H1Zrg|K@raqp>FKk{y`YCE6pEaeFL<$#D037Vi0Hq{o2)S} z+KxhNLztL;j*a0iRL_rEqd;6a=|j&`pkl-vEI3*p4W16atkf@LqnThx#4g) z<=h^ZZE!3Y9^iIF3#VMv#TqQxO;1mc4mcC~`}3Gj{d)<0vz4U8Yl330-~;%A4v0augmk~C|k|2fl^9Exgte@e@RAkvWn>mdzET|Lh|BJ-K68FO=UznY&%UR3Fz zssU?~0FNrrrEQAKL_d&^#|tImBa?nCW?X4lTYKcN3HT6JTz$>3N&4K$D3cOP$@uzs zba*(1XX!E*7cBZ1gU{Jes+q!pzqBD)zg}aDpGq|r%Vtpl-}Kh_CNutTqq3==0NP9= zB@X6LqFxbJ2-%d+0t4gv=ImL6;~3e0>fgN6%Ee+Sco~B)-B@2gfB*IC$*8J|$^r)5 zHn;&*ELq2$FG^ieZkc4RyCTP~?TjE@wht=2h|ts55075o+)OIDTkcsqzM1`L-0K5| zj8AwO&>!;WxmGD_C5;U;JnH9yKcKBTa<%iWfQeEvR zVQmgH&+bgTZBP}UXn)|okbK?Kd?n*oJqCXZ`l-3-(jv9Zga#;?P{$F_rm%Qc;j{(je9C;)CHqcy;B!ZLH!jxYMNWqb zMa)HAsd^uwlb!RPN|z_Qby?>GwE{?E1CPghDQ16@!co=NgZUiA%yOT_gd<=Yi#fDC-lvA#^D`54Jm)B-tV~Ux57a`f1 zyVc5@152TlD437ny%dR|KwE|-y<@#(8HJ#PfITP`K(V(P^C?lS{spWZ0|NsH>5Nme zS8y1d9>!kgWk3oqe)sM#%N0$h(Ub6k&x>xoM49W?NzhjXn_N-OTnD7AKYv2PBT6h{ z>uFJ~3iGwU-DRWW?9GfevAQzG|}kb20lDbw!`BH5Pf`2Ku| zV-Y5Qimu~IgZiQyj&jt)-Q8UypU@(M=TUZ}MNy@7{L)>L0ivYJwJq08Q;^tKeR@+u zzqQq^AaBTG$Q{gdZwmGPu@i?9E@Q1k z*y0nfVgE3y(-Zwogr2gW4`m~n)Kbc|8Bdb?EOOujNUB+9T5<#+z)e5^D+DYitECl1 z6>2I!hF=6FCnsACZVahD1>r`DKbK;m0fOW_+Mm%&TuMpyvz;yQc9fQj7L|D)TFI?pF=r#8B2M> zm6VA|428?f%iBnBY;#}+a*JtNU^t9Ua9lbmp0u9LnDjyv3?dtGCbcT;xt98@7u+&pXMLxEZB53FcB3 z6xyI7FOWF24Ld6=y8tyXKEAes)YH@ZowqVA2EC}@(x}R8-5wN!?wE+ZR=N_=ool?s z8X#9{I#%^UHT_SO8Vr?$mSBVnyP35^Xw?W!mWb~U`||%77m&@CPq#}-N;KD2S1~L{ zew2^QBqO>>e;OQrSPnyi9H}7em}P@8wk{-XadB}-FKfj9X(FB*U-@}RM? z(Mg`xG0K>(%vW&67GmAz-nW8)YgM%wxIhh@8_el!Cpc~4NbL$h4XhLBY0^R zLqj5_MTR;ZvSa!vhOFR@!AhuB7z><*6&n5I{=P1ZeN1I@I#M5sCDq=Ow5&pET7V=E)&P1eGb#U3t*Be-aW`#5(0kb_n zN<&g6X_^-9xEzNRzVrrXi%{0ZQt}mkH$MDkG*gr zhdMbeP_kZ$B7Hk+u0~Or#(euSBbf5z39?s+OVjPJ=2~g|>=;8fEc&zu9*+l|K1KFX zM=*g~K8v!&KWJ)da()*Q0q!Q>pYZgeQvltUy6e_DfL6GQqwMMI>FK%nmGl~;_9f%; zn6XyOR^XEqKnBBicfprVlc!PYaC&HTB&2taF7zq%Y+w*(EF6Vd6%!ZVVP1zs)Mf8<=(5lCb}Dr(?tL!3 zTaNN*xwelCmihMmklbxwjA|{BL(pQ9@xm^&vzM`-6YytEdm|6!C_67=gVZA2B-1=B z_8wqU%&)E5vwP4!L+IX&juZ>I@tNm~Bb8V8#XsO7eJiWcE9pDX2rW{~8U0L1MDbnv zY)W1Ix;yKTgkE$}@lN{UjnPkF*mBEF!ITyN?bPPpQ8gg#Y4Z>*W(hBrqccg#Mu0%Mv6&zTP@f%uEP#v6Y*fTX8@ZA=95`F0Qn-RIDhyf3fRDg{6ek zdj;z~YYll(US7UK$BCKDx>F{~UdG&ht_om9Tb@Z`_ia(KSKe%yV#27H+QGoBb8$!b zy>!{35z~B)vv2}&rumObv@I;^pYUX)zMGrdC9vj<&(n5O)0G;a6^iBhgB*48ZbyXo zZKbyWzE#)kFq7aAq-VouPW9^FCk6cgo~s8{(cdpCXdBK zmigBQQd}*_VK&Iqc&~U`{3YRtYwJCS#zuA69+&fRqMFIQe;(z(%EL|kJy?W0JtjmeZofrD0=M!J6VZtVHzxXuU9D8S+H$QA(6`LljC zM=S?!eA-M0myw?AtgaeBebp_GKK+s=cBMq``E_+Z8CJpM2&5c7TX#C(4pq4wLFg6( z!nRCiUS1wUzs-`t(I+?j#!qs{$MsOpTemu91O5HK3G*g*^BnI+jkOYgN>!;v@+XShK^GMa1(Gi(>9oq-O4X$ZBRf2cK^7ARmC@zh8y6 zT!kk7ZG5AuK-sYUy`rXOZ#kNdS@A_zxhpjx}b-Kg;Pj1pjU|k z)t%r6>RM%qno;LUw9`~jP*@F~>A)I@tON^svYmgxK)jECdMgR;6dcr)m#>wir>E<6 zn#xrD@V^qlcBT1g2P}d$mMTU4h+Dtt#QYOA9F$EtjY?GhP*q=l zm`2CMZvbns+Jh5J@yOBx-tLh>f0~#BZUD}^c4C6WVGrlDy`^9G_@LUK#N&rUWWJ_@ zA1094<2#d^Z&tW0%zj*5#JRDzAU7e;bPt8UQnI~x_WrN6#1FHmGBiF6g%bM=xV=7f z|D-<8;p3cJB7Qajzv%Dpuf+C=rN}G-Kl-7v@uw1{{S>4X77**5bjzHjNc6XKTnUWr z!07wj?tDiLaFF!4)Qwnj$O!q)b;(W&>cE0+!RQrR$#S+uv*}O8pBR5i^2$fxw4tvC zXnu^lhjhS_4hNHO`+I)!eZ&Btt1r9j;iLCMGbaCs587d>bcMJ_#}>np zWE#ZU&E0Iy_FP23hiB&che8;AEUl`c2Y2i*mZ$8GYrkO1D88kIUO>*7p^S?1V3UUt zh378~=3IMR_Jh^pE1J&lm+dWJ89bdMhgzVQS8t>_8$TBhclVL7lGd|3Z~Dym z)VI3DR1nA90H|q6y11{T*+rcgv$AObPdm#{K;_5QA_xoT^`Y-C$FZITmSLh~Oagj%x<16t7LZ@6Lu~!Bn_QpFY zWng_4n7Vqb7LFiP&Qo^9k@kQLp(CkF72|z9#$kM-I6$sttun;Ov+sXll=jSLh0a^U zJnglSbXi>xxy;^602pCrC;b83RVU;rbyXtg>Kf%!B9zSZdf@Awyg0D?8Jy-;3?I1^ zM_JkJ*9XWJ{)~P4naY+YX6JL_wtb9ux!&7az38PK>*mg5cSRf)L+I=4%Xp~u)=(n} zO()j6udl-p5k0irPY?1edY3VGZ&P?clmS)g;Z{&|r}z z3UvW00%s{X+Tct5~M-cMQwhFQ1n~1rZb&Wq$kJ=j5CLhs1b!w^kyI z83J0Y#<#*oXr~LV%0G|b&U!M!!lF5_u_0D+K+%5FBZ4~n0swVFz!-ibP zs_{zeS_ zHHBe<5W31cVy|25Jd~@snhh%u3z|RLNEBb# zh_AA=hRd`(nMgm0hHCrd!9nwjC!|mvZay*YdZv(qZ^Z(2zb7X*tQMf|sev3zd&GsG z+Ki|1?FyUvWHO_G3R7LcbZ1?geZ+9{HiRr z>O#B8je`1qu1(5nM{%GT?_5%o0KD~D{VF}3t0E-;kI_6VvSYBeGWqre@%3o~aza9W zDzY<$YmlMvLORi*I0avcpz8AKg0%b7;wV?Re9U`zVD)7;L2ytp8+~HF;^}H}%DxlgHl4?v#_1ZIo*?Ev zIA|KN&p!J|7G%d?$XDpd->BKd1zUU70c*HzO@`Rr)I>Kl+3dj)!fQ89$B36L(yz5| zu_=P2@wO-}(<)DPU>@XbJUWN+k|+*KUy*UN!HmllW)JP+w93)!>4JisKX4qAIZmp7 zrE_huV7>Lob=r1gwX+M%yGNpI5_-3S`(oL|SZ$HC^jS4&+j&1<0J#kBpB8!h9Ffw8 z!{rv|ciQA}u}f}^r1&H$ixkK;l6^5m5D29ktX!H~Ddid}f)m0Eqi0G+@%aWEd&Ieu zx+k5c`j(UnR?Xqb)CuPBfqJk9?ZcoV8auA?%dhwl2C=IrH<2ygKF=TR@}hTT>7lfF zKL~$Vz64Jp;GnC<*5o=R6_HNU2ZMR}ksAxSPJ2Teo-Yfm$*SrP3Z^>y{}LoOFuP80 z`W-jG+&rr^e-^WY1#f}9vtIr>a3Y?N`0{>D-5@N|VjUby(-?eRo%6NHbvIP#C$1QJ z?wi&L*uDGV_iWvy%e1s(cF@F<-1WHrcc;*tK2=Xbkd&wy+!2E&zHf4(U9VJ@QKAkk zvC^O0%;4s#-}VzO^kug=~h!(!wlh=3rN zn*}2iuMOtS?vG5ZOrQ#S0=8Vw!#VjwwavFjJY9K!nj2aFWTmN4NiZ#zKW5zG1) zP#DBIG@?@Bc&^+ud_8ud6lRc-_4?{uz0qTeyBnMCzxF(CSqZQEx;)IsYyG&$f=eiZ z&WxC~7r_M4p;d{SBaC;0UwU)ix!3B~BQ^FfW*^AyC!NTWs!1Jx8yink5**^dA}``O z61sM9HmBHDUz%pD`nxd*_r)On2pl9JC>+4cYAD9b`VC{EAZJ`4yZ=f!wE!Kzv-W87 z`irevEJ>z?ye~ey{(dj@5P1Dt1gNLltyT ztG~?czLi2S)A}r3Y>t&Ov!H(>)Mp0ro8LJ&uyH1qk>aaK@14(`_MEG;3hYeD2V}_z z{cf@++fv(oV13o6G49X;xvuAbK;|sfdbCTlL4vi^@+yym)Kc=|JB#!3IyVLeFifz^ zXES5G8}SZGSzvwZhbz^j69K|v-uk}dC}4~^6DJ>dOdR+?`d#n;b4vC(w55}oH3x5a zVtf{V|G{`Uwi6%ccl1TS`fBnpFd$in454XXV7|QNBZO&gcaF#_RS=YpJL6*!r4I5B z3_M30bU-hI@Nk4bEqKbewQSGh;F9YvD)@1&LttsS4LUK+2zmTa>3;wp&u3YL;N*Vg4Q zQ}FUTz9K55RLj-pjvm-6pybS%_-+$Z6w2pi-vN2zbzJQkCZGDs=-tqW8>_zIy)A}L z3J%xrF(veAr5H&mf|4Qf+V32C#CJpU^rJ;$MCyR(LtolSh3Expr*~PD zJ5^sA9J(BuIX{meSD%$9pB&T7QWxDPd{^}nle3nI0u)&BUxn&!fXeU3%`Bg&H%>-v z$1IGlqvJQ=Kz#s~DPywyorI0cLd`t(W9*f?wbd;P5@S9ER1z;CBM-98 zB<1MyCq8BuIx;mgJzw-^UAx~~Kzd`(b+~JR-+t^t0wMm>S+~0g7elkNJNkm;7IMWl zwt6I9eZHb8p4ymf8Ry0sZK<=jjqgICtyzPv!L{bRx+?U&u&R!$TF}&%TljC^zD0Dl z&N@prbLmy5lRCtY0HM2q{QG0R(=r9di)!UK)i)gAav5 zRB`WX_|{s`vzosTw{C!O6>g$Vk-x9Ucm-?NAb#1QIul2}M z7g2s^7E06eO^JP8&VpRM_ASJ$^pLC&{aEI{)Eku-JaAlI-jNXE64|&<>p7CDedWW^ zf@H)w?cN3q8ix4%c+SRRY$D3Gcnm^69?!s{@J*$bik$Q+PgjkX1{$Fg$*H-lRg{8% z?p_#l)?yCFfrlkMXz$jQUb#ixeTbliaKbgK)ljeHI$j*&W@@^G5AG+EN5MTKL(g z(~xGBTQmY1W5(D}99S8m*XpB1u#lhXG;W1Wbtg_xK|6eS;glUd0>H~YrT3zZNh^&1 z$A7BBF*;e4vBQThwXN;`!R?4-v}+t=hYbTxtDo&w z>^zsd#wz(S`_0k9E7l^b^0E(%ytuvD71({a6Dc6zb!rCAT@6Ubm=FVsDt2BG2qD2s zK&K7)XyljVmLHD&hacvk_xYTtNk3jy*aEU0)1%^;Nb%a)l5!9?Lp_3SEEkwNw%EGn z6;k=7o9d;T#>!N6?gKWP)XVVc?rzeVduqJ zh*VA}q3orGbeI>NH>0=29l0xC!-3~N*Z9#r{E^xon~7euPR0;9`ej5Ly63n;T5hoU z2+mS7+`sO`-M^5nWe2l#-q?-*D?s_&2YtQ96~owZ$4eQor?W*2pox_u_UZ)L zz#3!$acmR4VNExu79d%(VJ$MJ_TL;;0;sS^Wuxi@c_+G5-q=M)Ds#TejqzLJbBb+u z_sebw`*I}Z>p5oks-$pU`kLe|dDqHn<=;D>OpNY-##Pi^m4kr1B<9o<`C->(SC#+Y z=YKE%f2X*DqPu?6g}Xnsi+Um80`MWSGv3LG$Em|7t+8yG#>-$%I$$TayEZ|)qe$!X z-W|t3haVidnT9Z6`EDm!LlHJEF5cLy1;;^C`Rwi@*MdC4!loR|NB;czTP5pYV}lLT zh>ZC570F#s*1FE{=|KljB}T8IuzemC7LptFssr z=E};-f6T0zoLE(c7dk)2#>P%x3aAF87gC88pd1IIkoOcN&;R`k$;{17J3o&wEFC&_ zs~vZX$3IEHoAPYKH#7W4n64+_CxO)&r zt0n;*y1KY5?R*;F{0rTuVm-+?w0EwJK67O~@goqK?%cWat+uL4=Cw)b*_D{AC?t32 zrG+Q%?z?`0LqkKpn`5$_7v&G70}+S_Q^Y?dVr)a!-c`AvjFsTWZv8o5SAZ0P9KgM4 zV*M}2(lHiZw=!C;5poXDU@lS#D@}+cF;<@GpV?#H6Plr`1BKbZr3w^)G{}U03{eYUvN^ePk%Ca47zj1JI@ZjI+>17Em z7|>=viZp0}C23|8R+tm<$xykv*B2ij(opouL|~BZfR!syv}q}vw3ZskJyR1Cxn&0d zKE6|Hjr=EsZPT>JPvy{9@Q6vrTLUiWFz0zMm+?;C0R1t5(0|JgxLPA614283JHks#_3Pc%>U;4ao5I&y* zJXAkA??RC^bN1J9t=liq$(($hne!N^jpZ3FQ0<+}dX-qte9cJ)ZJ`4ylTH7$U- zxX)@cmXcx*_KeZo3bsE5tRZlAcIGAvV0AArahuIv)p3J9AjOA}LbCY{(1t=BH1fqa zBa1OPjGRX9@A`#D3O{k zwtUkF#p1^eMD|yD<4gbt{ZLi)garFEz%BTB`qzD zbg|2Y3jTStndoo*Cr5Efa>iN z&4A4@DwNj3tDLCq*KXXWj0>g5`PtdTA7p@+;L!KiS6_FD^RML2^o{qT-}`A$KJLE0 z`;ULT6!>LqY)rDb4+lAGn(x)d38`P~?(Sv)Rbv@WY~)pFid9End4skhYFERT7U0M2 zy#4b01t*HO+aAdFs7I>gp6>vRIT7-CE+*$=3E$m{%!cdP*&GZnM)vle2IxxzC4*4P z1#y}B>gs}p3tz=-U2@AW9>G6B?C;g5zw>XtoYK(HIDh)7df5Io4%wEP8D%bgkGwf) zI;N?tOwt6_`e4CImC>G5z1)i4$RQ(+lG7Tfo>@ov_Ez(7dpe7Dcv@UPkBW+_a;+UN z#o${i(q%97h9^2zH$KjC=Vb5B{}2qluK$7y<>+>U_d%3mG$|uJ{b1nb6PMcY4**XF z>f4+yjjFgm>x23E7}vJCx+=~i21uQ)-Id?t61JDG;=j%(B_)Nq2vq)D#UQx zQChkgnNfuc4)*rxKZGLr_aZ}sgHJMamtH{k%Pw8U*E@yX7oEoa`YX*ZDEOVw+iG`@ z4AeW*0Ql~6cP9|2ufPvKYGg-bOJC&Fxdn-I3z3e%gI2mrA*?6nG|gS%9scZQ zuxP7_%1ZlmlhT&;BA#JMTU{dpp(Z#wI+`6|U&W9|Stv8sz7hGFR1fmW!(_Jp^Qj}= z2Ej@00H2{IQ``0VE^CkhIR%4%fLO||bjVHyxFY_@ zg|c}zg)sSrytS$yMfzOioby(`-AA04ei(K6U~S^)Nj64!Tie)t^#=A8EU>G!@Q;^p z9SaH&SA1`3P68gNoZp860_{~4#e)uG$56F_;o*Y=AhKk={iK2I;+Bgh}L~0>su0tKLb2kINeU8(mQbj+cNUmyXI=y|_?%CixFtpXX zp|uNrmsYlWAs>yBA$5qx->N3LE29(VZEbDsz;y@eTf>X4f%j7XZ2kE&L8j!M#z%Kl` z7JGd#jp?)eg4}5i?2EB9I7153Uk20hpy4I7BRCSn;{}RU0q+OL^lD|bVlPFY&-^OH|{YU z1ALd|m6h=?e@$4wR#DC5v9=o*$OS8x!AWU=W2A_)#jo7^^}cI2bw-O^O0^eR4m@K{ z1+ZC{wOPLg045%di;LUI%gJfxg}Zxt5@+RW!D(`?C1A~1*~P`hFwyyATB)syuwLr- zXuwaVf&1g1KYup#_4G6X{vE7+U=~mj0XVS{Y>zdsf*4P2q}p(iPoM6U0`$ficlm#r zI)$&QihgYZoIFcJc=*}bN!Ym!aK{47rY3;HlNZJF%-=s(Df(Li1h*)@S-O&s!?jX> z7jiij5-v2vrrg=FqyySgQ|Vg+YkRi5sw#3B02NP6Oid%50HDB-1QfZvv$er{wSzx5 z5KE!|_-BeOk1UxLb**1iTT$vfdGh39gwyKbQ`bVXpl&=K6X{JQF8TQH+@HSwp172a zg^%A~in_2gYOCHJ4WOfAl0^@v-yK$p_&(}2({C@6TIy8VnpF?uU@d7gLz z+M5OFx?u_ynNZ)BjpG6?fE?=dO#6<(+-3vu=YMe16xj_im;#m#$@NRNZWkfdzBAvX z^fWyq<7Qp-%!R|lmZSQZOs&UqygBW?*v*T0{M^CX(08!#W_>S(#bAfc&8YYmK7M}k z&;9*DSygc{vF+`xEjw2lA@vs2>B{nQ%=|4NoErnM{1tyR zCdc=z{VN*aZyP@qu_`ok7Z4JP43CVwz({Z2^j{xd0eC8jA@+Ry10KrH|A4<3>LE1D sB{-~miM;)5>{xxf76}t5^g>APO|_$z%ldENj}jDyx+aK99mnVY1LWy_vH$=8 literal 0 HcmV?d00001 diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/Square-tile-broken.png.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/Square-tile-broken.png.meta new file mode 100644 index 00000000000..89624c2969f --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/Square-tile-broken.png.meta @@ -0,0 +1,116 @@ +fileFormatVersion: 2 +guid: 2af9ce7b8c3457c4dba73abf739aa8f4 +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: 0 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 9 + spritePivot: {x: 0.5012655, y: 0.18665306} + spritePixelsToUnits: 256 + 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: 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: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 1537655665 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: + - texture: {fileID: 2800000, guid: 310f426fafdfbef4ea5ed15aecbd0158, type: 3} + name: _NormalMap + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/Square-tile-broken_n.png b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/Square-tile-broken_n.png new file mode 100644 index 0000000000000000000000000000000000000000..eac276d0a42c69ab46ce5802e5ac3bf3a444084e GIT binary patch literal 14177 zcmXwgby!s26Zh@{OD$bXN{4`SNq0(1$I>A!4Z_l0ihy*8@I|^+Vrc}FZiI!Ulm;bN zc-P~rs&&u3=N+;h&InVY1qt4>5fM*si-h%_}+3;_Tj5c6Zk17ohVG7NhG z0L%bQ6-DFV!lNSGV5^KkEwzt;h=RxFBaHAf5zPm!nuag43yE6fa6yBWMC0yCoTpv0Y zk{bT=e^q%R&?`XE(1d>2v9`jxjeRhwWb#`y@tCAcnzNat)Yho`4u!%JRu>*NXAKVit5Q;5JXDvnfHbF0J z+mqFuj59i(6*dWyBC@b?gz`kR(Gmr||e?3{bu#G7D^bk6S6IG7S?T>5@WtxtY?G$wD zd-iwS_nRvoO-P`CWXC$Xg?|&rc9kjMRfT+1iIPfj+DMm6RiFr~?G(GyphqHrU@e8f3IQG@qN%Tnjldn@T_POuf56`C`-KqV_pJ8uq=FXLT$K1 z6-!5f=8WlUv4skXTq(d3oVD)Gy7lN)RH{+=fv;%m}6W1@*?a<qBAz- z?BGA$o!_35$GkZ`-p4bMA`!3m`@QysZ9U?pY4soVFBR7YHVT9FSfWN$4y0807+`(B z`iX0P9%lPt=|?u%pIr0~?!_8ahEpFrGCa_eKT)GO{r3)H_el&aVCOaJGYxy6Xa3k# zi;Sm*$4ilu=}TME?eQx;k<9UTA|Wc;S$)&gPsuJY8siw%z#Z&*rEstzok-JhqpK5F z`Bs8(Z1|BND$@Fqx`J@TQ4;-w%J3j_P#!cq?3B_Ra`->!!;ZFni(*4w_UyktCtMnbpK{C|xVI)SYlpK_u?G+6 zg9>M2ALA2|y^j)62LSuZI@R)XX0mE#GdF>c z<{ec)Bha_My5YO@2hkFC%RoZ9zi>|6)MkEJdbw~v2>rLsGmi%kjK&|xW6Ch@)ksZ> z+NBJ8sIzYRULXO^k6aUpZs24QpfGb(7>^x`QYnpw&A)0VYh^m$THSd1@;b(Bg{T!W z$`wOyq98c_p(1Hh;Q{ah4L1q0 zzTwuTqow7{WO?e?LwIKWlZ80_Ps7jC12#)w-vUeRpc?d1u0O7QTbpEG0cgpXjBw1S zv4yU?#$zWF=uiK~RH3Y!@F=i;XpQt)ez7N%?_OR!k5Tqr%T-zS0>$B6fRhk1ed!V+ zC<*7NQev0;nmV6F`WJycgj^@U8BS&-t$gpdXN{yLMHSO5W=T0BoZt||Y|Nz8(e=6y zo7a&oPth|oH+fg9pOXGArXHIv;2_iVb=0v5Mr5Ón_g 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 JUI`Zce*k`LcB}vZ literal 0 HcmV?d00001 diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/Square-tile-broken_n.png.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/Square-tile-broken_n.png.meta new file mode 100644 index 00000000000..02236026db8 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/Square-tile-broken_n.png.meta @@ -0,0 +1,114 @@ +fileFormatVersion: 2 +guid: 310f426fafdfbef4ea5ed15aecbd0158 +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: 0 + 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: 256 + 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: 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: [] + 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/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/sample-atlas.mat b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/sample-atlas.mat new file mode 100644 index 00000000000..ef4b464d023 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/sample-atlas.mat @@ -0,0 +1,140 @@ +%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: sample-atlas + m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _ALPHAPREMULTIPLY_ON + - _NORMALMAP + - _SURFACE_TYPE_TRANSPARENT + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: 3000 + stringTagMap: + RenderType: Transparent + disabledShaderPasses: + - DepthOnly + - SHADOWCASTER + - MOTIONVECTORS + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BaseMap: + m_Texture: {fileID: 2800000, guid: 04234695f0f02cb4e90fc10804f6da03, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _BumpMap: + m_Texture: {fileID: 2800000, guid: e7d02bfd2d6bfe64a8aa3e4592301412, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 2800000, guid: 04234695f0f02cb4e90fc10804f6da03, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _SpecGlossMap: + 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: + - _AlphaClip: 0 + - _AlphaToMask: 0 + - _Blend: 0 + - _BlendModePreserveSpecular: 1 + - _BumpScale: 1 + - _ClearCoatMask: 0 + - _ClearCoatSmoothness: 0 + - _Cull: 2 + - _Cutoff: 0.5 + - _DetailAlbedoMapScale: 1 + - _DetailNormalMapScale: 1 + - _DstBlend: 10 + - _DstBlendAlpha: 10 + - _EnvironmentReflections: 1 + - _GlossMapScale: 0 + - _Glossiness: 0 + - _GlossyReflections: 0 + - _Metallic: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.005 + - _QueueOffset: 0 + - _ReceiveShadows: 1 + - _Smoothness: 0.5 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _SrcBlendAlpha: 1 + - _Surface: 1 + - _WorkflowMode: 1 + - _ZWrite: 0 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} + m_BuildTextureStacks: [] + m_AllowLocking: 1 +--- !u!114 &9046241169405415828 +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: 10 diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/sample-atlas.mat.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/sample-atlas.mat.meta new file mode 100644 index 00000000000..04c44ff8d29 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/sample-atlas.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6cf25b621c389ae47b12c7aa610001f7 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/sample-atlas.png b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/sample-atlas.png new file mode 100644 index 0000000000000000000000000000000000000000..8b7804834418ce57e5ae9d7c7edd8f0de387828e GIT binary patch literal 23183 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 H zwG{DM@>Q=x*3ZrMXS{L1i}P!cYA|O#vnGd(1t7#&C}LNh-+HqDpW81HImCKgpG@{J zF*QBrMKq?R?xPuovp#JX@<(T}3Ct?D6Pw4*9i}zdQ07gXCSTuWMFA-l`kL7XfM9SQ zv`poblvP^EI0?y2T%)#Ykr2(g6`&GHl1^`~;&Qn|HmnbCW;SN~W`IDc+MdpGn*WcZ z{jQQ1r)2b2G{=?JA8U8N4zcA!)tkU%7UR=T#_nYM-JD|lb9S_#z}(zCHp7s0nC43y z!g01Y8fje}o$#$X+*b(X$$qXnDeDWlz6-5Yiv5IE*xiZt;wA!OC&la`ZWkiAJvR`) z)78-TWl(J?W*M-mGTk%>R|KCpPM@qhdQm+_B- literal 0 HcmV?d00001 diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/sample-atlas.png.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/sample-atlas.png.meta new file mode 100644 index 00000000000..900077b3631 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/sample-atlas.png.meta @@ -0,0 +1,232 @@ +fileFormatVersion: 2 +guid: 04234695f0f02cb4e90fc10804f6da03 +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: 0 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 2 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 256 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationMethod: 0 + spriteTessellationDetail: -1 + spriteGeometrySubdivision: -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: 4 + 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: 4 + 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 + - serializedVersion: 4 + buildTarget: CloudRendering + 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: 4 + buildTarget: Android + 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: 4 + buildTarget: GameCoreXboxOne + 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: 4 + buildTarget: GameCoreScarlett + 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: 4 + buildTarget: WindowsStoreApps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: + - serializedVersion: 2 + name: Square-tile + rect: + serializedVersion: 2 + x: 8 + y: 216 + width: 257 + height: 288 + alignment: 9 + pivot: {x: 0.5, y: 0.59} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: 541d666c45466aa4c8c0188371df02c4 + internalID: 1667832366 + vertices: [] + indices: {_typeName: int, _data: } + edges: [] + weights: [] + - serializedVersion: 2 + name: Square-tile-broken + rect: + serializedVersion: 2 + x: 277 + y: 216 + width: 257 + height: 288 + alignment: 9 + pivot: {x: 0.5, y: 0.59} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: e5d1f6dc3d8e7c04f821d17bb83f2e4d + internalID: -1599052531 + vertices: [] + indices: {_typeName: int, _data: } + edges: [] + weights: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: 3936a26ff44a0de41a7f5118dba5e540 + internalID: 0 + vertices: [] + indices: {_typeName: int, _data: } + edges: [] + weights: [] + secondaryTextures: + - texture: {fileID: 2800000, guid: e7d02bfd2d6bfe64a8aa3e4592301412, type: 3} + name: _NormalMap + spriteCustomMetadata: + entries: [] + nameFileIdTable: + Square-tile: 1667832366 + Square-tile-broken: -1599052531 + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/sample-atlas_n.png b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/093_TilemapRenderer_NormalFlip/Sprites/sample-atlas_n.png new file mode 100644 index 0000000000000000000000000000000000000000..e17104e1b3b231860c09349383e06b6052b90c42 GIT binary patch literal 22043 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 Date: Thu, 2 Jul 2026 07:14:18 +0000 Subject: [PATCH 13/52] [Port] [6000.5] [UUM-136214][URP 2D] Refresh light batching debugger on sorting layer change --- .../2D/Converter/MaterialUpgraderDefinitions.cs | 2 +- .../LightBatchingDebugger/LightBatchingDebugger.cs | 12 ++++++++++-- .../Editor/2D/Shadows/ShadowCaster2DEditor.cs | 4 ++-- .../Editor/2D/SortingLayerDropDown.cs | 5 +---- 4 files changed, 14 insertions(+), 9 deletions(-) diff --git a/Packages/com.unity.render-pipelines.universal/Editor/2D/Converter/MaterialUpgraderDefinitions.cs b/Packages/com.unity.render-pipelines.universal/Editor/2D/Converter/MaterialUpgraderDefinitions.cs index 2a15d8d6fff..60b9cab724a 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/2D/Converter/MaterialUpgraderDefinitions.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/2D/Converter/MaterialUpgraderDefinitions.cs @@ -37,7 +37,7 @@ public SpritesDefaultUpgrader(string shaderName) Shader newShader = null; Renderer2DData data = Light2DEditorUtility.GetRenderer2DData(); if (data != null) - newShader = data.GetDefaultMaterial(DefaultMaterialType.Sprite).shader; + newShader = data.GetDefaultMaterial(UnityEngine.Rendering.Universal.DefaultMaterialType.Sprite).shader; else newShader = Shader.Find("Universal Render Pipeline/2D/Sprite-Lit-Default"); 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 835c9b2fb17..5256d2fb334 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 @@ -41,7 +41,7 @@ public static void ShowExample() private int shadowCount = 0; // Variables used for refresh view - private bool doRefresh; + static bool doRefresh; private SceneHandle cachedSceneHandle; private Vector3 cachedCamPos; private int totalLightCount; @@ -356,11 +356,19 @@ private void CreateGUI() private void OnEnable() { EditorApplication.playModeStateChanged += OnPlayModeStateChanged; + +#if UNITY_EDITOR + SortingLayer.onLayerChanged += QueueRefresh; +#endif } private void OnDisable() { EditorApplication.playModeStateChanged -= OnPlayModeStateChanged; + +#if UNITY_EDITOR + SortingLayer.onLayerChanged -= QueueRefresh; +#endif } void OnPlayModeStateChanged(PlayModeStateChange playModeState) @@ -528,7 +536,7 @@ private void ResetDirty() doRefresh = false; } - public void QueueRefresh() + internal static void QueueRefresh() { doRefresh = true; } diff --git a/Packages/com.unity.render-pipelines.universal/Editor/2D/Shadows/ShadowCaster2DEditor.cs b/Packages/com.unity.render-pipelines.universal/Editor/2D/Shadows/ShadowCaster2DEditor.cs index 8438ed18065..5079f303abf 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/2D/Shadows/ShadowCaster2DEditor.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/2D/Shadows/ShadowCaster2DEditor.cs @@ -168,7 +168,7 @@ public void SetCastingSourceSelection(Provider2D provider, Component component) #if USING_2DCOMMON public void RestorePreviousTool() { - if (EditorToolManager.IsActiveTool()) + if (U2D.Common.Path.EditorToolManager.IsActiveTool()) ToolManager.RestorePreviousTool(); } @@ -233,7 +233,7 @@ public override void OnInspectorGUI() #if USING_2DCOMMON if ((ShadowCaster2D.ShadowCastingSources)m_CastingSource.intValue == ShadowCaster2D.ShadowCastingSources.ShapeEditor) ShadowCaster2DInspectorGUI(); - else if (EditorToolManager.IsActiveTool()) + else if (U2D.Common.Path.EditorToolManager.IsActiveTool()) ToolManager.RestorePreviousTool(); #else var clicked = GUILayout.Button(Styles.buttonText); diff --git a/Packages/com.unity.render-pipelines.universal/Editor/2D/SortingLayerDropDown.cs b/Packages/com.unity.render-pipelines.universal/Editor/2D/SortingLayerDropDown.cs index f07dfd37d32..b68875b1cf6 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/2D/SortingLayerDropDown.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/2D/SortingLayerDropDown.cs @@ -70,10 +70,7 @@ void UpdateApplyToSortingLayersArray(object layerSelectionDataObject) } if (EditorWindow.HasOpenInstances()) - { - var debugger = EditorWindow.GetWindow(); - debugger?.QueueRefresh(); - } + LightBatchingDebugger.QueueRefresh(); } void OnNoSortingLayerSelected(object selectionData) From 108dc3ec7486a58bc9826360e7652a82dcac521c Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Thu, 2 Jul 2026 07:14:18 +0000 Subject: [PATCH 14/52] [Port] [6000.5] [UUM-144776] [APV] Fix Global Illumination task left Not Responding on cancel --- .../ProbeVolume/AdaptiveProbeVolumes.BakePipelineDriver.cs | 3 +++ .../Lighting/ProbeVolume/ProbeGIBaking.LightTransport.cs | 1 + 2 files changed, 4 insertions(+) diff --git a/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/AdaptiveProbeVolumes.BakePipelineDriver.cs b/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/AdaptiveProbeVolumes.BakePipelineDriver.cs index 0ae9763b993..50fa857ae4a 100644 --- a/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/AdaptiveProbeVolumes.BakePipelineDriver.cs +++ b/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/AdaptiveProbeVolumes.BakePipelineDriver.cs @@ -45,6 +45,9 @@ internal bool RunInProgress() internal void Step(ref float progress, ref StageName stage) => Update(true, true, true, out progress, out stage); + internal void ClearProgress() => + InvokeMethod(new object[] { }, out _); + void SetEnableBakedLightmaps(bool enable) => InvokeMethod(new object[] { enable }, out _); diff --git a/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeGIBaking.LightTransport.cs b/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeGIBaking.LightTransport.cs index 561a3569f50..8b74b755d58 100644 --- a/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeGIBaking.LightTransport.cs +++ b/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeGIBaking.LightTransport.cs @@ -206,6 +206,7 @@ public override void Dispose() occlusionResults.Dispose(); renderingLayerMasks.Dispose(); + bakePipelineDriver?.ClearProgress(); bakePipelineDriver?.Dispose(); } } From b09f03032b0161e9487e2960b34ddfe24d28149b Mon Sep 17 00:00:00 2001 From: Evergreen Date: Sun, 5 Jul 2026 11:13:45 +0000 Subject: [PATCH 15/52] [UUM-145751] Disable unstable Lighting Playmode test --- .../Assets/Tests/HDRP_DXR_Graphics_Tests.cs | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/Tests/SRPTests/Projects/HDRP_DXR_Tests/Assets/Tests/HDRP_DXR_Graphics_Tests.cs b/Tests/SRPTests/Projects/HDRP_DXR_Tests/Assets/Tests/HDRP_DXR_Graphics_Tests.cs index b85fdd0cb2b..aa40c9834d2 100644 --- a/Tests/SRPTests/Projects/HDRP_DXR_Tests/Assets/Tests/HDRP_DXR_Graphics_Tests.cs +++ b/Tests/SRPTests/Projects/HDRP_DXR_Tests/Assets/Tests/HDRP_DXR_Graphics_Tests.cs @@ -119,6 +119,21 @@ public class HDRP_Graphics_Tests "Disabled for Instability https://jira.unity3d.com/browse/UUM-145751", RuntimePlatform.GameCoreXboxSeries )] + [IgnoreGraphicsTest( + "905_Materials_SG_TransparentRTR", + "Disabled for Instability https://jira.unity3d.com/browse/UUM-145751", + RuntimePlatform.GameCoreXboxSeries + )] + [IgnoreGraphicsTest( + "3002_AreaShadowsDeferred_Denoiser", + "Disabled for Instability https://jira.unity3d.com/browse/UUM-145751", + RuntimePlatform.GameCoreXboxSeries + )] + [IgnoreGraphicsTest( + "2006_Debug_ScreenSpaceShadows", + "Disabled for Instability https://jira.unity3d.com/browse/UUM-145751", + RuntimePlatform.GameCoreXboxSeries + )] public IEnumerator Run(SceneGraphicsTestCase testCase) { yield return HDRP_GraphicTestRunner.Run(testCase); From 6f49f38315764968c484d4fc72ef6b12dee0635c Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Sun, 5 Jul 2026 15:28:41 +0000 Subject: [PATCH 16/52] [Port] [6000.5] Refactored Custom Function Node page --- .../Documentation~/Custom-Function-Node.md | 213 +---------------- ...-nodes-hlsl-create-custom-function-node.md | 225 ++++++++++++++++++ .../Custom-nodes-hlsl-landing.md | 1 + .../Documentation~/TableOfContents.md | 1 + 4 files changed, 229 insertions(+), 211 deletions(-) create mode 100644 Packages/com.unity.shadergraph/Documentation~/Custom-nodes-hlsl-create-custom-function-node.md diff --git a/Packages/com.unity.shadergraph/Documentation~/Custom-Function-Node.md b/Packages/com.unity.shadergraph/Documentation~/Custom-Function-Node.md index 38580a49ede..dd8de9f8df6 100644 --- a/Packages/com.unity.shadergraph/Documentation~/Custom-Function-Node.md +++ b/Packages/com.unity.shadergraph/Documentation~/Custom-Function-Node.md @@ -15,215 +15,6 @@ You can either write small functions directly into graphs by using the string mo | **Source** | When you set **Type** to **File**, the reference to the HLSL file that includes the custom functions. The file can be anywhere in your Unity project and must have the `.hlsl` extension. For more details, refer to [file content syntax](#file-content-syntax-details-and-examples). | | **Body** | When you set **Type** to **String**, the HLSL code that defines the contents of the custom functions. Unity handles the arguments, braces, and indent scope automatically. | +## Additional resources -## Set up a Custom Function node - -To set up a Custom Function node: - -1. [Create a new node](Create-Node-Menu.md) of **Custom Function** type (from the **Utility** category). -1. In the [Graph Inspector](Internal-Inspector.md), select **Node Settings**. -1. [Define custom **Inputs** and **Outputs**](Custom-Port-Menu.md) to set the node's ports and the corresponding variables to use in the custom function. -1. Define the custom function according to your needs, either with a [file](#define-the-custom-function-with-a-file) or a [string](#define-the-custom-function-with-a-string). - -### Define the custom function with a string - -In **String** mode, the graph generates the shader function. - -To define the function with a string: - -1. In the Graph Inspector, in the Node Settings, Set **Type** to **String**. -1. In the **Name** field, specify a name for the function. -1. In the **Body** field, write the contents of the function. Unity handles the arguments, braces, and indent scope automatically. - -In **String** mode, you may use the token `$precision` instead of `half` or `float` in the **Body** field. Unity replaces this with the correct type when the node is processed, based on that node's precision. - -![04](images/Custom-Function-Node-String-wFunction.png) - -The example in the image above generates the following function: - -``` -void MyFunction_float(float3 A, float B, out float3 Out) -{ - Out = A + B + 1/2; -} -``` - -### Define the custom function with a file - -In **File** mode, the graph does not automatically generate the shader function. This mode injects an include reference in the final generated shader, and uses a function from within the referenced file. - -To create an HLSL file to use from a Custom Function node: - -1. Use your file system to create an empty text file with the `.hlsl` extension in any folder of your Unity project. -1. Write your custom function according to the [file content syntax](#file-content-syntax-details-and-examples). - -To use a function from the HLSL file in the node: - -1. In the Graph Inspector, in the Node Settings, set **Type** to **File**. -1. In the **Source** field, reference the HLSL file that contains the function. -1. In the **Name** field, specify the name of the function to call in the file, **without** the function precision suffix `_half ` or `_float `. - -![06](images/Custom-Function-Node-File-wFunction.png) - -#### File content syntax, details, and examples - -HLSL files you reference in Custom Function nodes can contain one or multiple functions. In all cases, you have to match the following expectations: - -* The file should include a `#ifndef` condition along with a `#define` statement with an identifier to make sure Unity doesn't load the same functions twice, which would result in a compile error. - * You must use the same id string for the `#ifndef` condition and the `#define` statement. - * If you create multiple HLSL files for Custom Function nodes in the same project, you must use a different id string for each file. -* Each function name must have a precision suffix: - * Use `_float` to run the function in full precision mode. - * Use `_half` if you need to save resources, which might only apply to certain platforms. -* The function arguments must correspond to the Inputs you defined in the Node Settings. - -For example: - -``` -//UNITY_SHADER_NO_UPGRADE -#ifndef MYHLSLINCLUDE_INCLUDED -#define MYHLSLINCLUDE_INCLUDED - -void MyFunction_float(float3 A, float B, out float3 Out) -{ - Out = A + B; -} -#endif //MYHLSLINCLUDE_INCLUDED -``` - -The **File** mode allows for more flexibility with custom functions in a graph. - -#### Shared data and uniform variables - -To supply shared data to your function without additional ports, use uniform variables defined outside the function scope. - -``` -//UNITY_SHADER_NO_UPGRADE -#ifndef MYHLSLINCLUDE_INCLUDED -#define MYHLSLINCLUDE_INCLUDED -float4x4 _MyMatrix; -void MyFunction_float(float3 A, float B, out float3 Out) -{ - A = mul(float4(A, 0.0), _MyMatrix).rgb; - Out = A + B; -} -#endif //MYHLSLINCLUDE_INCLUDED -``` - -When you add a uniform variable in a Custom Function, like the `float4x4` matrix in the example above, you make this variable global. As a result: - -- You can set this uniform globally only, using `Shader.SetGlobalMatrix()`. -- You don't have to add an input parameter to allow the shader to access them directly. -- You can't set it per material, because it's not declared in the `UnityPerMaterial` cbuffer and doesn't have a material property associated with it. - -#### Multiple functions and multiple files - -You can define multiple functions in the same file, and call them from your referenced function. Alternatively, you can reference the same file, but use different functions from different Custom Function nodes. - -``` -//UNITY_SHADER_NO_UPGRADE -#ifndef MYHLSLINCLUDE_INCLUDED -#define MYHLSLINCLUDE_INCLUDED -float3 MyOtherFunction_float(float3 In) -{ - return In * In; -} - -void MyFunction_float(float3 A, float B, out float3 Out) -{ - A = MyOtherFunction_float(A); - Out = A + B; -} -#endif //MYHLSLINCLUDE_INCLUDED -``` - -You can even include other files that contain other functions. - -``` -//UNITY_SHADER_NO_UPGRADE -#ifndef MYHLSLINCLUDE_INCLUDED -#define MYHLSLINCLUDE_INCLUDED -#include "Assets/MyOtherInclude.hlsl" -void MyFunction_float(float3 A, float B, out float3 Out) -{ - A = MyOtherFunction_float(A); - Out = A + B; -} -#endif //MYHLSLINCLUDE_INCLUDED -``` - -## Call Unity shader code functions - -You can call from your custom function any shader code functions that are part of existing Unity's Render Pipeline libraries. - -However, be aware of the following: - -* Your project must include the library that contains the shader code functions you need to call. To prevent errors, you should always isolate the code with an `#if defined()` condition according to the library you're using, and define fallback values for the variables. The usual keywords that identify Unity shader code libraries are the following: - * For the [Built-In Render Pipeline (BiRP)](https://docs.unity3d.com/Manual/use-built-in-shader-methods-birp.html) library, use `#if defined(BUILTIN_PIPELINE_CORE_INCLUDED)`. - * For the [Universal Render Pipeline (URP)](https://docs.unity3d.com/Manual/urp/use-built-in-shader-methods.html) library, use `#if defined(UNIVERSAL_PIPELINE_CORE_INCLUDED)`. - * For the [High-Definition Render Pipeline (HDRP)](https://docs.unity3d.com/Manual/high-definition-render-pipeline.html) library, use `#if defined(UNITY_HEADER_HD_INCLUDED)`. -* The Shader Graph node and main previews can't access Unity's Render Pipeline libraries in the Editor. This generates compile errors in the Editor even though the shader works correctly in your project. To prevent this issue, you have to isolate the code with an `#ifdef SHADERGRAPH_PREVIEW` condition and also define default values for the variables in the Shader Graph preview context. -* The code in libraries might change over time from one Unity version to another. You need to make sure to regularly test and update your custom functions in your projects. - -[!include[birp-deprecation-message](snippets/birp-deprecation-message.md)] - -Here is an example with URP library function calls and the above-mentioned conditional protections set up: - -``` -#ifdef SHADERGRAPH_PREVIEW - half3 color = half3(0,0,0); - half atten = 1; - half3 dir = half3 (0.707, 0, 0.707); - -#else - #if defined(UNIVERSAL_PIPELINE_CORE_INCLUDED) - half4 shadowCoord = TransformWorldToShadowCoord(WorldPosition); - Light mainLight = GetMainLight(shadowCoord); - half3 color = mainLight.color; - half atten = mainLight.shadowAttenuation; - half3 dir = mainLight.direction; - #else - half3 color = half3(0, 0, 0); - half atten = 1; - half3 dir = half3 (0.707, 0, 0.707); - #endif - -#endif -``` - -## Reuse Custom Function Nodes - -The Custom Function node, on its own, is a single node instance. If you wish to reuse the same custom function without re-creating the inputs, outputs, and function referencing, include the Custom Function node in a [Sub Graph](Sub-graph.md). Once created, the Sub Graph appears in the [Create Node Menu](Create-Node-Menu.md), along with the nodes. - -![11](images/Custom-Function-Node-Subgraph.png) - -You can create a Sub Graph and add a Custom Function node to it, or right-click an existing Custom Function node and select `Convert to Sub Graph`. To add the appropriate input and output ports, use the [Graph Inspector](Internal-Inspector.md) and [Custom Port Menu](Custom-Port-Menu.md). - -## Work with texture wires - -From version 10.3, Shader Graph has five new data structures to ensure that Custom Function nodes and Sub Graphs input and output data from texture wire in a consistent way. The new structures also make it possible for SamplerState to compile on [GLES2](https://en.wikipedia.org/wiki/OpenGL_ES#OpenGL_ES_2.0) platforms and access data associated with textures via `myInputTex.samplerstate` and `myInputTex.texelSize`. - -Four structures are for the texture types, and one is for the sampler state: - -* UnityTexture2D -* UnityTexture2DArray -* UnityTexture3D -* UnityTextureCube -* UnitySamplerState - -Custom Function nodes you create with earlier versions of Shader Graph continue to work after this change. As part of the automatic update, Unity transitions them to the new **Bare** node type. This type replicates the old input and output behavior. All other types pass the new structs. - -However, you should manually upgrade Custom Function nodes that produce texture or samplerstate types as output to ensure that they behave consistently—and to gain the benefits of the new design. Unity flags this type of outdated Custom Function Nodes with a warning when you open your Shader Graph in 10.3 or later. - -#### How to upgrade - -1. Change all of the input and output types from **Bare** to **non-Bare**.
- -* **String** type: Ensure that your HLSL string already uses Unity's texture access macros (such as `SAMPLE_TEXTURE2D`). - -* **File** type: Replace Bare types (such as Texture2D) with the new struct types (such as UnityTexture2D) in your function parameters. - -2. If your HLSL code is using platform-specific or non-standard texture operations, you'll need to convert the way you access textures to take that structure into account. For example, `myInputTex.GetDimensions(...)` would become `myInputTex.tex.GetDimensions(...)` - - -From version 10.3, you can access data associated with textures via `myInputTex.samplerstate` and `myInputTex.texelSize`. +- [Create a Custom Function node](Custom-nodes-hlsl-create-custom-function-node.md) diff --git a/Packages/com.unity.shadergraph/Documentation~/Custom-nodes-hlsl-create-custom-function-node.md b/Packages/com.unity.shadergraph/Documentation~/Custom-nodes-hlsl-create-custom-function-node.md new file mode 100644 index 00000000000..5c6e8f780cf --- /dev/null +++ b/Packages/com.unity.shadergraph/Documentation~/Custom-nodes-hlsl-create-custom-function-node.md @@ -0,0 +1,225 @@ +# Create a Custom Function node + +Create and set up a Custom Function node to execute an HLSL function specified as a string or as an HLSL include file. + +To set up a Custom Function node: + +1. [Create a new node](Create-Node-Menu.md) of **Custom Function** type (from the **Utility** category). +1. In the [Graph Inspector](Internal-Inspector.md), select **Node Settings**. +1. [Define custom **Inputs** and **Outputs**](Custom-Port-Menu.md) to set the node's ports and the corresponding variables to use in the custom function. +1. Define the custom function according to your needs, either with a [file](#define-the-custom-function-with-a-file) or a [string](#define-the-custom-function-with-a-string). + +## Define the custom function with a string + +In **String** mode, the graph generates the shader function. + +To define the function with a string: + +1. In the Graph Inspector, in the Node Settings, Set **Type** to **String**. +1. In the **Name** field, specify a name for the function. +1. In the **Body** field, write the contents of the function. Unity handles the arguments, braces, and indent scope automatically. + +In **String** mode, you may use the token `$precision` instead of `half` or `float` in the **Body** field. Unity replaces this with the correct type when the node is processed, based on that node's precision. + +![04](images/Custom-Function-Node-String-wFunction.png) + +The example in the image above generates the following function: + +``` +void MyFunction_float(float3 A, float B, out float3 Out) +{ + Out = A + B + 1/2; +} +``` + +## Define the custom function with a file + +In **File** mode, the graph does not automatically generate the shader function. This mode injects an include reference in the final generated shader, and uses a function from within the referenced file. + +To create an HLSL file to use from a Custom Function node: + +1. Use your file system to create an empty text file with the `.hlsl` extension in any folder of your Unity project. +1. Write your custom function according to the [file content syntax](#file-content-syntax-details-and-examples). + +To use a function from the HLSL file in the node: + +1. In the Graph Inspector, in the Node Settings, set **Type** to **File**. +1. In the **Source** field, reference the HLSL file that contains the function. +1. In the **Name** field, specify the name of the function to call in the file, **without** the function precision suffix `_half ` or `_float `. + +![06](images/Custom-Function-Node-File-wFunction.png) + + +### File content syntax, details, and examples + +HLSL files you reference in Custom Function nodes can contain one or multiple functions. In all cases, you have to match the following expectations: + +* The file should include a `#ifndef` condition along with a `#define` statement with an identifier to make sure Unity doesn't load the same functions twice, which would result in a compile error. + * You must use the same id string for the `#ifndef` condition and the `#define` statement. + * If you create multiple HLSL files for Custom Function nodes in the same project, you must use a different id string for each file. +* Each function name must have a precision suffix: + * Use `_float` to run the function in full precision mode. + * Use `_half` if you need to save resources, which might only apply to certain platforms. +* The function arguments must correspond to the Inputs you defined in the Node Settings. + +For example: + +``` +//UNITY_SHADER_NO_UPGRADE +#ifndef MYHLSLINCLUDE_INCLUDED +#define MYHLSLINCLUDE_INCLUDED + +void MyFunction_float(float3 A, float B, out float3 Out) +{ + Out = A + B; +} +#endif //MYHLSLINCLUDE_INCLUDED +``` + +The **File** mode allows for more flexibility with custom functions in a graph. + + +### Multiple functions and multiple files + +You can define multiple functions in the same file, and call them from your referenced function. Alternatively, you can reference the same file, but use different functions from different Custom Function nodes. + +``` +//UNITY_SHADER_NO_UPGRADE +#ifndef MYHLSLINCLUDE_INCLUDED +#define MYHLSLINCLUDE_INCLUDED +float3 MyOtherFunction_float(float3 In) +{ + return In * In; +} + +void MyFunction_float(float3 A, float B, out float3 Out) +{ + A = MyOtherFunction_float(A); + Out = A + B; +} +#endif //MYHLSLINCLUDE_INCLUDED +``` + +You can even include other files that contain other functions. + +``` +//UNITY_SHADER_NO_UPGRADE +#ifndef MYHLSLINCLUDE_INCLUDED +#define MYHLSLINCLUDE_INCLUDED +#include "Assets/MyOtherInclude.hlsl" +void MyFunction_float(float3 A, float B, out float3 Out) +{ + A = MyOtherFunction_float(A); + Out = A + B; +} +#endif //MYHLSLINCLUDE_INCLUDED +``` + +## Use shared data and existing Unity functions + +Pass shared data into your custom function through uniform variables, and call functions from Unity's Render Pipeline shader libraries. + +### Shared data and uniform variables + +To supply shared data to your function without additional ports, use uniform variables defined outside the function scope. + +``` +//UNITY_SHADER_NO_UPGRADE +#ifndef MYHLSLINCLUDE_INCLUDED +#define MYHLSLINCLUDE_INCLUDED +float4x4 _MyMatrix; +void MyFunction_float(float3 A, float B, out float3 Out) +{ + A = mul(float4(A, 0.0), _MyMatrix).rgb; + Out = A + B; +} +#endif //MYHLSLINCLUDE_INCLUDED +``` + +When you add a uniform variable in a Custom Function, like the `float4x4` matrix in the example above, you make this variable global. As a result: + +- You can set this uniform globally only, using `Shader.SetGlobalMatrix()`. +- You don't have to add an input parameter to allow the shader to access them directly. +- You can't set it per material, because it's not declared in the `UnityPerMaterial` cbuffer and doesn't have a material property associated with it. + +### Call Unity shader code functions + +You can call from your custom function any shader code functions that are part of existing Unity's Render Pipeline libraries. + +However, be aware of the following: + +* Your project must include the library that contains the shader code functions you need to call. To prevent errors, you should always isolate the code with an `#if defined()` condition according to the library you're using, and define fallback values for the variables. The usual keywords that identify Unity shader code libraries are the following: + * For the [Built-In Render Pipeline (BiRP)](https://docs.unity3d.com/Manual/use-built-in-shader-methods-birp.html) library, use `#if defined(BUILTIN_PIPELINE_CORE_INCLUDED)`. + * For the [Universal Render Pipeline (URP)](https://docs.unity3d.com/Manual/urp/use-built-in-shader-methods.html) library, use `#if defined(UNIVERSAL_PIPELINE_CORE_INCLUDED)`. + * For the [High-Definition Render Pipeline (HDRP)](https://docs.unity3d.com/Manual/high-definition-render-pipeline.html) library, use `#if defined(UNITY_HEADER_HD_INCLUDED)`. +* The Shader Graph node and main previews can't access Unity's Render Pipeline libraries in the Editor. This generates compile errors in the Editor even though the shader works correctly in your project. To prevent this issue, you have to isolate the code with an `#ifdef SHADERGRAPH_PREVIEW` condition and also define default values for the variables in the Shader Graph preview context. +* The code in libraries might change over time from one Unity version to another. You need to make sure to regularly test and update your custom functions in your projects. + +[!include[birp-deprecation-message](snippets/birp-deprecation-message.md)] + +Here is an example with URP library function calls and the above-mentioned conditional protections set up: + +``` +#ifdef SHADERGRAPH_PREVIEW + half3 color = half3(0,0,0); + half atten = 1; + half3 dir = half3 (0.707, 0, 0.707); + +#else + #if defined(UNIVERSAL_PIPELINE_CORE_INCLUDED) + half4 shadowCoord = TransformWorldToShadowCoord(WorldPosition); + Light mainLight = GetMainLight(shadowCoord); + half3 color = mainLight.color; + half atten = mainLight.shadowAttenuation; + half3 dir = mainLight.direction; + #else + half3 color = half3(0, 0, 0); + half atten = 1; + half3 dir = half3 (0.707, 0, 0.707); + #endif + +#endif +``` + +## Reuse Custom Function Nodes + +The Custom Function node, on its own, is a single node instance. If you wish to reuse the same custom function without re-creating the inputs, outputs, and function referencing, include the Custom Function node in a [Sub Graph](Sub-graph.md). Once created, the Sub Graph appears in the [Create Node Menu](Create-Node-Menu.md), along with the nodes. + +![11](images/Custom-Function-Node-Subgraph.png) + +You can create a Sub Graph and add a Custom Function node to it, or right-click an existing Custom Function node and select `Convert to Sub Graph`. To add the appropriate input and output ports, use the [Graph Inspector](Internal-Inspector.md) and [Custom Port Menu](Custom-Port-Menu.md). + + +## Work with texture wires + +From version 10.3, Shader Graph has five new data structures to ensure that Custom Function nodes and Sub Graphs input and output data from texture wire in a consistent way. The new structures also make it possible for SamplerState to compile on [GLES2](https://en.wikipedia.org/wiki/OpenGL_ES#OpenGL_ES_2.0) platforms and access data associated with textures via `myInputTex.samplerstate` and `myInputTex.texelSize`. + +Four structures are for the texture types, and one is for the sampler state: + +* UnityTexture2D +* UnityTexture2DArray +* UnityTexture3D +* UnityTextureCube +* UnitySamplerState + +Custom Function nodes you create with earlier versions of Shader Graph continue to work after this change. As part of the automatic update, Unity transitions them to the new **Bare** node type. This type replicates the old input and output behavior. All other types pass the new structs. + +However, you should manually upgrade Custom Function nodes that produce texture or samplerstate types as output to ensure that they behave consistently—and to gain the benefits of the new design. Unity flags this type of outdated Custom Function Nodes with a warning when you open your Shader Graph in 10.3 or later. + +### How to upgrade + +1. Change all of the input and output types from **Bare** to **non-Bare**.
+ +* **String** type: Ensure that your HLSL string already uses Unity's texture access macros (such as `SAMPLE_TEXTURE2D`). + +* **File** type: Replace Bare types (such as Texture2D) with the new struct types (such as UnityTexture2D) in your function parameters. + +2. If your HLSL code is using platform-specific or non-standard texture operations, you'll need to convert the way you access textures to take that structure into account. For example, `myInputTex.GetDimensions(...)` would become `myInputTex.tex.GetDimensions(...)` + + +From version 10.3, you can access data associated with textures via `myInputTex.samplerstate` and `myInputTex.texelSize`. + + +## Additional resources + +- [Custom Function node reference](Custom-Function-Node.md) diff --git a/Packages/com.unity.shadergraph/Documentation~/Custom-nodes-hlsl-landing.md b/Packages/com.unity.shadergraph/Documentation~/Custom-nodes-hlsl-landing.md index 22d4720bc12..367938abdb0 100644 --- a/Packages/com.unity.shadergraph/Documentation~/Custom-nodes-hlsl-landing.md +++ b/Packages/com.unity.shadergraph/Documentation~/Custom-nodes-hlsl-landing.md @@ -5,5 +5,6 @@ Use HLSL to extend the Shader Graph functionality with custom functions. | Topic | Description | | :--- | :--- | | [Introduction to HLSL in Shader Graph](Custom-nodes-hlsl-introduction.md) | Learn how you can use HLSL code in a Shader Graph context. | +| [Create Custom Function node using HLSL](Custom-nodes-hlsl-create-custom-function-node.md) | Create a Custom Function node that executes an HLSL function specified as a string or as an HLSL include file. | | [Create a custom node by reflection from HLSL](Custom-nodes-hlsl-create-node-by-reflection.md) | Write HLSL functions to use as custom nodes by reflection and automatically make them available in the Shader Graph node library. | | [Reflected function hints reference](Custom-nodes-hlsl-reflection-hints-reference.md) | Learn about all the hints you can use to further customize the behavior and appearance of the reflected function node in Shader Graph. | diff --git a/Packages/com.unity.shadergraph/Documentation~/TableOfContents.md b/Packages/com.unity.shadergraph/Documentation~/TableOfContents.md index cf0f0991e80..956a6d7e942 100644 --- a/Packages/com.unity.shadergraph/Documentation~/TableOfContents.md +++ b/Packages/com.unity.shadergraph/Documentation~/TableOfContents.md @@ -56,6 +56,7 @@ * [Custom Interpolator reference](Custom-Interpolators-reference.md) * [Create custom nodes with HLSL](Custom-nodes-hlsl-landing.md) * [Introduction to HLSL in Shader Graph](Custom-nodes-hlsl-introduction.md) + * [Create Custom Function node using HLSL](Custom-nodes-hlsl-create-custom-function-node.md) * [Create a custom node by reflection from HLSL](Custom-nodes-hlsl-create-node-by-reflection.md) * [Reflected function hints reference](Custom-nodes-hlsl-reflection-hints-reference.md) * [Node Library](Node-Library.md) From de822fe83c1dfb11f53295ae3f1aa7746ca4be0a Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Tue, 7 Jul 2026 07:34:28 +0000 Subject: [PATCH 17/52] [Port] [6000.5] UUM-146305: Fix cancel warning when cancelling an APV bake --- .../Editor/Lighting/ProbeVolume/ProbeGIBaking.cs | 2 +- .../Editor/Lighting/ProbeVolume/ProbeVolumeLightingTab.cs | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeGIBaking.cs b/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeGIBaking.cs index 48e0430d820..66812c9f9b9 100644 --- a/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeGIBaking.cs +++ b/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeGIBaking.cs @@ -1930,7 +1930,7 @@ public static bool BakeAsync() if (Lightmapping.isRunning || AdaptiveProbeVolumes.isRunning || !PrepareBaking(BakeType.ApvOnly, DoProbePlacement, AdditionalGIBakeRequestsManager.GetProbeNormalizationRequests)) return false; - _asyncBakeTaskId = Progress.Start("Bake Adaptive Probe Volumes"); + _asyncBakeTaskId = Progress.Start("Bake Adaptive Probe Volumes", options: Progress.Options.Synchronous); Progress.RegisterCancelCallback(_asyncBakeTaskId, () => { OnBakeCancelled(); diff --git a/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeVolumeLightingTab.cs b/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeVolumeLightingTab.cs index c068c582f9e..b910ca7178b 100644 --- a/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeVolumeLightingTab.cs +++ b/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeVolumeLightingTab.cs @@ -325,7 +325,7 @@ void BakeButtonCallback(object data) if (AdaptiveProbeVolumes.isRunning) { if (GUILayout.Button(Styles.cancelBake, Styles.buttonStyle)) - AdaptiveProbeVolumes.Cancel(); + EditorApplication.delayCall += () => AdaptiveProbeVolumes.Cancel(); return; } @@ -888,7 +888,7 @@ internal static void BakeAPVButton() if (AdaptiveProbeVolumes.isRunning) { if (GUILayout.Button(Styles.cancelBake)) - AdaptiveProbeVolumes.Cancel(); + EditorApplication.delayCall += () => AdaptiveProbeVolumes.Cancel(); } else { From b7996215a7f2bbad70add009084e4693018233b2 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Tue, 7 Jul 2026 15:11:30 +0000 Subject: [PATCH 18/52] [Port] [6000.5] docs/graphics/docg-8118-sg-custom-interpolator-seperate -reference-pages --- ...stom-Interpolator-block-node-reference.md} | 9 ++++--- .../Custom-Interpolator-node-reference.md | 24 +++++++++++++++++++ .../Custom-Interpolators-landing.md | 3 ++- .../Documentation~/Custom-Interpolators.md | 9 +++---- .../Documentation~/TableOfContents.md | 3 ++- 5 files changed, 37 insertions(+), 11 deletions(-) rename Packages/com.unity.shadergraph/Documentation~/{Custom-Interpolators-reference.md => Custom-Interpolator-block-node-reference.md} (82%) create mode 100644 Packages/com.unity.shadergraph/Documentation~/Custom-Interpolator-node-reference.md diff --git a/Packages/com.unity.shadergraph/Documentation~/Custom-Interpolators-reference.md b/Packages/com.unity.shadergraph/Documentation~/Custom-Interpolator-block-node-reference.md similarity index 82% rename from Packages/com.unity.shadergraph/Documentation~/Custom-Interpolators-reference.md rename to Packages/com.unity.shadergraph/Documentation~/Custom-Interpolator-block-node-reference.md index e4668c1c0f2..af329c1e97e 100644 --- a/Packages/com.unity.shadergraph/Documentation~/Custom-Interpolators-reference.md +++ b/Packages/com.unity.shadergraph/Documentation~/Custom-Interpolator-block-node-reference.md @@ -1,10 +1,8 @@ -# Custom Interpolator reference +# Custom Interpolator block node reference -Transfer custom data from the vertex stage to the fragment stage. +Pass per-vertex data from the vertex stage to the fragment stage through a [Custom Interpolator node](Custom-Interpolator-node-reference.md). -You first create a custom interpolator block node in the Vertex context. You can then add a custom interpolator node in the workspace and connect it to a block node in the Fragment context. - -The following descriptions and settings apply to both the Vertex block and the Fragment node. +To complete the setup, you need to [add a Custom interpolator](Custom-Interpolators.md) that corresponds to the Custom Interpolator block node. ## Settings @@ -18,3 +16,4 @@ The following descriptions and settings apply to both the Vertex block and the F * [Built-in blocks](Built-In-Blocks.md) * [Add a custom interpolator](Custom-Interpolators.md) +* [Custom Interpolator node reference](Custom-Interpolator-node-reference.md) diff --git a/Packages/com.unity.shadergraph/Documentation~/Custom-Interpolator-node-reference.md b/Packages/com.unity.shadergraph/Documentation~/Custom-Interpolator-node-reference.md new file mode 100644 index 00000000000..dc18c7bddfa --- /dev/null +++ b/Packages/com.unity.shadergraph/Documentation~/Custom-Interpolator-node-reference.md @@ -0,0 +1,24 @@ +# Custom Interpolator node reference + +Read data from a [Custom Interpolator block node](Custom-Interpolator-block-node-reference.md) of the vertex stage to pass it to the fragment stage. + +To be able to add a Custom Interpolator node, you first need to [add a Custom interpolator block node](Custom-Interpolators.md) to the vertex stage. + +## Output port + +| Name | Type | Description | +| :--- | :--- | :--- | +| Out | Depends on the **Type** selected in the [Node Settings](#settings) | The data read from the matching Custom interpolator block node from the vertex stage. | + +## Settings + +| Property | Description | +|:------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| **Name** | Sets the unique name of the custom interpolator to identify and reference it in the graph. | +| **Type** | Sets the number of channels the Custom Interpolator exposes. The default value is **Vector 4**, which exposes x, y, z, and w channels. | +| **Interpolation** | Selects how Unity interpolates the value from vertex to fragment across the surface. The following options are available:

  • Linear: Applies the default linear interpolation, which preserves correct rates of change in screen space.
  • No Perspective: Doesn't correct perspective, which can warp data, depending on the angle between the surface and the camera.
  • No Interpolation: Doesn't interpolate the data, which creates hard edges between triangles.
| + +## Additional resources + +* [Add a custom interpolator](Custom-Interpolators.md) +* [Custom Interpolator block node reference](Custom-Interpolator-block-node-reference.md) diff --git a/Packages/com.unity.shadergraph/Documentation~/Custom-Interpolators-landing.md b/Packages/com.unity.shadergraph/Documentation~/Custom-Interpolators-landing.md index adada98c7c2..4c59510015c 100644 --- a/Packages/com.unity.shadergraph/Documentation~/Custom-Interpolators-landing.md +++ b/Packages/com.unity.shadergraph/Documentation~/Custom-Interpolators-landing.md @@ -5,4 +5,5 @@ Use custom interpolators to pass custom data from the vertex shader to the fragm | **Page** | **Description** | |--------------------------------------------------------------------|---------------------------------------------------------------------------------| | [Custom Interpolators](Custom-Interpolators.md) | Learn how to use and manage custom interpolators according to your needs. | -| [Custom Interpolator reference](Custom-Interpolators-reference.md) | Explore the Custom Interpolator properties. | +| [Custom Interpolator block node reference](Custom-Interpolator-block-node-reference.md) | Pass per-vertex data from the vertex stage to the fragment stage through a Custom Interpolator node. | +| [Custom Interpolator node reference](Custom-Interpolator-node-reference.md) | Read data from a Custom Interpolator block node of the vertex stage to pass it to the fragment stage. | diff --git a/Packages/com.unity.shadergraph/Documentation~/Custom-Interpolators.md b/Packages/com.unity.shadergraph/Documentation~/Custom-Interpolators.md index 7712e282b53..d79c68320e6 100644 --- a/Packages/com.unity.shadergraph/Documentation~/Custom-Interpolators.md +++ b/Packages/com.unity.shadergraph/Documentation~/Custom-Interpolators.md @@ -29,9 +29,9 @@ You can't limit the number of channels another user creates in a shader graph. H ## Add a custom interpolator block to the Master Stack 1. Right-click in the **Vertex** context to create a block node. -1. Select **Custom Interpolator**. +1. Select **[Custom Interpolator](Custom-Interpolator-block-node-reference.md)**. 1. In the **Node Settings** tab of the **Graph Inspector** window, select a data type, for example **Vector 4**. -1. Select an [interpolation method](Custom-Interpolators-reference.md). +1. Select an interpolation method. 1. In the same tab, enter a name for the interpolator. ## Write data to the interpolator @@ -48,7 +48,7 @@ The graph now writes Vertex ID values into the custom interpolator. ## Read data from the interpolator 1. Right-click in your graph to create a node. -2. Select **Custom Interpolator**. +2. Select **[Custom Interpolator](Custom-Interpolator-node-reference.md)**. 3. Connect the **Custom Interpolator** node to the relevant block in the **Fragment** context, for example **Base Color** to use the Vertex ID as color output. ## Delete a custom interpolator @@ -58,4 +58,5 @@ If you delete a custom interpolator that's associated with nodes that are still ## Additional resources * [Built In Blocks](Built-In-Blocks.md) -* [Custom Interpolator reference](Custom-Interpolators-reference.md) +* [Custom Interpolator block node reference](Custom-Interpolator-block-node-reference.md) +* [Custom Interpolator node reference](Custom-Interpolator-node-reference.md) diff --git a/Packages/com.unity.shadergraph/Documentation~/TableOfContents.md b/Packages/com.unity.shadergraph/Documentation~/TableOfContents.md index 956a6d7e942..f509797d562 100644 --- a/Packages/com.unity.shadergraph/Documentation~/TableOfContents.md +++ b/Packages/com.unity.shadergraph/Documentation~/TableOfContents.md @@ -53,7 +53,8 @@ * [Surface options](surface-options.md) * [Using Custom Interpolators](Custom-Interpolators-landing.md) * [Custom Interpolators](Custom-Interpolators.md) - * [Custom Interpolator reference](Custom-Interpolators-reference.md) + * [Custom Interpolator block node reference](Custom-Interpolator-block-node-reference.md) + * [Custom Interpolator node reference](Custom-Interpolator-node-reference.md) * [Create custom nodes with HLSL](Custom-nodes-hlsl-landing.md) * [Introduction to HLSL in Shader Graph](Custom-nodes-hlsl-introduction.md) * [Create Custom Function node using HLSL](Custom-nodes-hlsl-create-custom-function-node.md) From 62ad582e9954765d14ec1eeec8a62a417dcfe50e Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Wed, 8 Jul 2026 12:06:45 +0000 Subject: [PATCH 19/52] [Port] [6000.5] Fix flaky GC.Alloc in SweepLineRectUtils.CalculateRectUnionArea --- .../Runtime/Utilities/SweepLineRectUtils.cs | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/Packages/com.unity.render-pipelines.core/Runtime/Utilities/SweepLineRectUtils.cs b/Packages/com.unity.render-pipelines.core/Runtime/Utilities/SweepLineRectUtils.cs index 2f1d9189fb7..48b30c23b18 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/Utilities/SweepLineRectUtils.cs +++ b/Packages/com.unity.render-pipelines.core/Runtime/Utilities/SweepLineRectUtils.cs @@ -1,5 +1,4 @@ -using System.Buffers; -using System.Collections.Generic; +using System.Collections.Generic; using Unity.Collections; namespace UnityEngine.Rendering @@ -15,7 +14,6 @@ public int Compare(Vector4 a, Vector4 b) { int cx = a.x.CompareTo(b.x); if (cx != 0) return cx; - // tie on x: larger y first (+1 before -1) return b.y.CompareTo(a.y); } } @@ -27,6 +25,9 @@ public int Compare(Vector2 a, Vector2 b) } } + static Vector4[] s_EventsBuffer = new Vector4[32]; + static Vector2[] s_ActiveBuffer = new Vector2[16]; + /// /// Computes the total covered area (union) of a set of axis-aligned rectangles, counting overlaps only once. /// @@ -35,18 +36,17 @@ public int Compare(Vector2 a, Vector2 b) public static float CalculateRectUnionArea(List rects) { int rectsCount = rects.Count; - var eventsBuffer = ArrayPool.Shared.Rent(rectsCount * 2); - var activeBuffer = ArrayPool.Shared.Rent(rectsCount); + int eventsCapacity = rectsCount * 2; + if (eventsCapacity > s_EventsBuffer.Length) + s_EventsBuffer = new Vector4[eventsCapacity]; + if (rectsCount > s_ActiveBuffer.Length) + s_ActiveBuffer = new Vector2[rectsCount]; int eventCount = 0; foreach (var rect in rects) - InsertEvents(rect, eventsBuffer, ref eventCount); - - float area = CalculateRectUnionArea(eventsBuffer, activeBuffer, eventCount); - ArrayPool.Shared.Return(eventsBuffer); - ArrayPool.Shared.Return(activeBuffer); + InsertEvents(rect, s_EventsBuffer, ref eventCount); - return area; + return CalculateRectUnionArea(s_EventsBuffer, s_ActiveBuffer, eventCount); } // Merge overlapping intervals and return total covered Y length From 88f3129f5508c65ea5c5ec268759a66cf6ed3071 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Wed, 8 Jul 2026 12:06:45 +0000 Subject: [PATCH 20/52] [Port] [6000.5] DOCG-8907 - Removed irrelevant paragraph from Shader Graph docs --- Packages/com.unity.shadergraph/Documentation~/Node.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Packages/com.unity.shadergraph/Documentation~/Node.md b/Packages/com.unity.shadergraph/Documentation~/Node.md index 1762eb3ce4b..a753a609cae 100644 --- a/Packages/com.unity.shadergraph/Documentation~/Node.md +++ b/Packages/com.unity.shadergraph/Documentation~/Node.md @@ -41,4 +41,4 @@ Right clicking on a **Node** will open a context menu. This menu contains many o -Unity applies each component of T as a weight factor to each component to A and B. If T has fewer components than A and B, Unity casts T to the required number of components. Unity copies the values of the original components of T to the added components. + From db1b3629f3aed40c8f83f087029bf4d0d66fda6e Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Wed, 8 Jul 2026 21:51:28 +0000 Subject: [PATCH 21/52] [Port] [6000.5] [MaterialUpgrader] Skip SaveAssets when no material was upgraded --- .../Tools/MaterialUpgrader/MaterialUpgrader.Utils.cs | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/Packages/com.unity.render-pipelines.core/Editor/Tools/MaterialUpgrader/MaterialUpgrader.Utils.cs b/Packages/com.unity.render-pipelines.core/Editor/Tools/MaterialUpgrader/MaterialUpgrader.Utils.cs index f1ba62b0caa..8747a438423 100644 --- a/Packages/com.unity.render-pipelines.core/Editor/Tools/MaterialUpgrader/MaterialUpgrader.Utils.cs +++ b/Packages/com.unity.render-pipelines.core/Editor/Tools/MaterialUpgrader/MaterialUpgrader.Utils.cs @@ -303,6 +303,8 @@ internal static string PerformUpgradeInternal( { s_UpgradeLog.AppendLine($"{progressBarName}"); + bool anyMaterialModified = false; + for (int materialIndex = 0; materialIndex < materialUpgrades.Count; ++materialIndex) { var entry = materialUpgrades[materialIndex]; @@ -323,11 +325,16 @@ internal static string PerformUpgradeInternal( else { s_UpgradeLog.AppendLine($"Upgrading material: {entry.MaterialInfo.Name} using shader: {entry.MaterialInfo.ShaderName}"); - Upgrade(entry.MaterialInfo.Material, upgraders, flags); + if (entry.MaterialInfo.Material != null) + { + Upgrade(entry.MaterialInfo.Material, upgraders, flags); + anyMaterialModified = true; + } } } - AssetDatabase.SaveAssets(); + if (anyMaterialModified) + AssetDatabase.SaveAssets(); if (showProgressBar) EditorUtility.ClearProgressBar(); From ab8958caf1120893762673eaa0a4c96692786cc3 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Sat, 11 Jul 2026 01:18:04 +0000 Subject: [PATCH 22/52] [Port] [6000.5] [URP][HDRP] Add warning messages when set Camera orthographic projection mode in XR --- .../BuildProcessors/HDRPProcessScene.cs | 46 +++++++++++++++++++ .../BuildProcessors/HDRPProcessScene.cs.meta | 2 + .../Camera/HDCameraUI.Drawers.cs | 19 ++++++++ ...nderPipelines.HighDefinition.Editor.asmdef | 4 +- .../Editor/BuildProcessors/URPProcessScene.cs | 43 +++++++++-------- ...UniversalRenderPipelineCameraUI.Drawers.cs | 11 +++++ 6 files changed, 104 insertions(+), 21 deletions(-) create mode 100644 Packages/com.unity.render-pipelines.high-definition/Editor/BuildProcessors/HDRPProcessScene.cs create mode 100644 Packages/com.unity.render-pipelines.high-definition/Editor/BuildProcessors/HDRPProcessScene.cs.meta diff --git a/Packages/com.unity.render-pipelines.high-definition/Editor/BuildProcessors/HDRPProcessScene.cs b/Packages/com.unity.render-pipelines.high-definition/Editor/BuildProcessors/HDRPProcessScene.cs new file mode 100644 index 00000000000..af503d22b59 --- /dev/null +++ b/Packages/com.unity.render-pipelines.high-definition/Editor/BuildProcessors/HDRPProcessScene.cs @@ -0,0 +1,46 @@ +#if ENABLE_VR && ENABLE_XR_MANAGEMENT +using UnityEditor.Build; +using UnityEditor.Build.Reporting; +using UnityEditor.XR.Management; + +using UnityEngine; +using UnityEngine.Rendering; +using UnityEngine.Rendering.HighDefinition; + +namespace UnityEditor.Rendering.HighDefinition +{ + class HDRPProcessScene : IProcessSceneWithReport + { + public int callbackOrder => 0; + + public void OnProcessScene(UnityEngine.SceneManagement.Scene scene, BuildReport report) + { + if (!HDRPBuildData.instance.buildingPlayerForHDRenderPipeline) + return; + + var buildTargetGroup = BuildPipeline.GetBuildTargetGroup(EditorUserBuildSettings.activeBuildTarget); + var buildTargetSettings = XR.Management.XRGeneralSettingsPerBuildTarget.XRGeneralSettingsForBuildTarget(buildTargetGroup); + + if(buildTargetSettings == null || buildTargetSettings.AssignedSettings == null || buildTargetSettings.AssignedSettings.activeLoaders.Count <= 0) + return; + + GameObject[] roots = scene.GetRootGameObjects(); + foreach (GameObject root in roots) + { + Camera[] cameras = root.GetComponentsInChildren(); + foreach (Camera camera in cameras) + { + if (camera.TryGetComponent(out HDAdditionalCameraData cameraData)) + { + if (camera.orthographic && cameraData.xrRendering) + { + Debug.LogWarning($"One or more cameras have their projection set as Orthographic. This is not supported on XR and may produce artifacts at runtime. Please change the projection setting to Perspective to avoid issues."); + break; + } + } + } + } + } + } +} +#endif diff --git a/Packages/com.unity.render-pipelines.high-definition/Editor/BuildProcessors/HDRPProcessScene.cs.meta b/Packages/com.unity.render-pipelines.high-definition/Editor/BuildProcessors/HDRPProcessScene.cs.meta new file mode 100644 index 00000000000..58889b9ffd8 --- /dev/null +++ b/Packages/com.unity.render-pipelines.high-definition/Editor/BuildProcessors/HDRPProcessScene.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: f9a96091c661d0742a99f9177805453c \ No newline at end of file diff --git a/Packages/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/Camera/HDCameraUI.Drawers.cs b/Packages/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/Camera/HDCameraUI.Drawers.cs index 348d8273e38..4e98fd31a87 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/Camera/HDCameraUI.Drawers.cs +++ b/Packages/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/Camera/HDCameraUI.Drawers.cs @@ -1,3 +1,7 @@ +#if ENABLE_VR && ENABLE_XR_MANAGEMENT +using UnityEditor.XR; +#endif + using UnityEngine; using UnityEngine.Rendering.HighDefinition; @@ -27,13 +31,28 @@ public enum Expandable Environment = 1 << 6, } + static readonly ExpandedState k_ExpandedState = new ExpandedState(Expandable.Projection, "HDRP"); +#if ENABLE_VR && ENABLE_XR_MANAGEMENT + private static readonly CED.IDrawer OrthographicXRError = CED.Conditional( + (serialized, owner) => serialized.xrRendering.boolValue && serialized.baseCameraSettings.orthographic.boolValue, (serialized, owner) => + { + var buildTargetGroup = BuildPipeline.GetBuildTargetGroup(EditorUserBuildSettings.activeBuildTarget); + var buildTargetSettings = XR.Management.XRGeneralSettingsPerBuildTarget.XRGeneralSettingsForBuildTarget(buildTargetGroup); + if(buildTargetSettings != null && buildTargetSettings.AssignedSettings != null && buildTargetSettings.AssignedSettings.activeLoaders.Count > 0) + EditorGUILayout.HelpBox("Orthographic projection is not supported in XR. Please change the Camera Projection setting to Perspective to avoid rendering issues", MessageType.Warning); + }); +#endif + public static readonly CED.IDrawer SectionProjectionSettings = CED.FoldoutGroup( CameraUI.Styles.projectionSettingsHeaderContent, Expandable.Projection, k_ExpandedState, FoldoutOption.Indent, +#if ENABLE_VR && ENABLE_XR_MANAGEMENT + OrthographicXRError, +#endif CED.Group( CameraUI.Drawer_Projection ), diff --git a/Packages/com.unity.render-pipelines.high-definition/Editor/Unity.RenderPipelines.HighDefinition.Editor.asmdef b/Packages/com.unity.render-pipelines.high-definition/Editor/Unity.RenderPipelines.HighDefinition.Editor.asmdef index 965e93a0edd..30144afa766 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Editor/Unity.RenderPipelines.HighDefinition.Editor.asmdef +++ b/Packages/com.unity.render-pipelines.high-definition/Editor/Unity.RenderPipelines.HighDefinition.Editor.asmdef @@ -17,6 +17,8 @@ "Unity.Rendering.Denoising.Runtime", "Unity.RenderPipelines.HighDefinition.Config.Runtime", "Unity.RenderPipelines.GPUDriven.Runtime", + "Unity.XR.Management.Editor", + "Unity.XR.Management", "Unity.InternalAPIEngineBridge.RenderPipelines.Core.Editor" ], "includePlatforms": [ @@ -36,7 +38,7 @@ }, { "name": "com.unity.xr.management", - "expression": "1.0.0", + "expression": "4.0.1", "define": "ENABLE_XR_MANAGEMENT" }, { diff --git a/Packages/com.unity.render-pipelines.universal/Editor/BuildProcessors/URPProcessScene.cs b/Packages/com.unity.render-pipelines.universal/Editor/BuildProcessors/URPProcessScene.cs index b6e9c20c9eb..3c966e4947d 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/BuildProcessors/URPProcessScene.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/BuildProcessors/URPProcessScene.cs @@ -12,30 +12,15 @@ class URPProcessScene : IProcessSceneWithReport public void OnProcessScene(UnityEngine.SceneManagement.Scene scene, BuildReport report) { - bool usesURP = false; - if (GraphicsSettings.defaultRenderPipeline as UniversalRenderPipelineAsset != null) - { - // ^ The global pipeline is set to URP - usesURP = true; - } - else - { - // ^ The global pipeline isn't set to URP, but a quality setting could still use it - for (int i = 0; i < QualitySettings.count; i++) - { - if (QualitySettings.GetRenderPipelineAssetAt(i) as UniversalRenderPipelineAsset != null) - { - // ^ This quality setting uses URP - usesURP = true; - break; - } - } - } + bool usesURP = URPBuildData.instance.buildingPlayerForUniversalRenderPipeline; if (usesURP) { GameObject[] roots = scene.GetRootGameObjects(); - +#if XR_MANAGEMENT_4_0_1_OR_NEWER && ENABLE_VR && ENABLE_XR_MODULE + var buildTargetGroup = BuildPipeline.GetBuildTargetGroup(EditorUserBuildSettings.activeBuildTarget); + var buildTargetSettings = XR.Management.XRGeneralSettingsPerBuildTarget.XRGeneralSettingsForBuildTarget(buildTargetGroup); +#endif foreach (GameObject root in roots) { Light[] lights = root.GetComponentsInChildren(); @@ -58,6 +43,24 @@ public void OnProcessScene(UnityEngine.SceneManagement.Scene scene, BuildReport ); } } + +#if XR_MANAGEMENT_4_0_1_OR_NEWER && ENABLE_VR && ENABLE_XR_MODULE + if (buildTargetSettings != null && buildTargetSettings.AssignedSettings != null && buildTargetSettings.AssignedSettings.activeLoaders.Count > 0) + { + Camera[] cameras = root.GetComponentsInChildren(); + foreach (Camera camera in cameras) + { + if (camera.TryGetComponent(out UniversalAdditionalCameraData cameraData)) + { + if (camera.orthographic && cameraData.allowXRRendering) + { + Debug.LogWarning($"One or more cameras have their projection set as Orthographic. This is not supported on XR and may produce artifacts at runtime. Please change the projection setting to Perspective to avoid issues."); + break; + } + } + } + } +#endif } } } diff --git a/Packages/com.unity.render-pipelines.universal/Editor/Camera/UniversalRenderPipelineCameraUI.Drawers.cs b/Packages/com.unity.render-pipelines.universal/Editor/Camera/UniversalRenderPipelineCameraUI.Drawers.cs index 02d1a7aa5b9..bd17f413d6d 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/Camera/UniversalRenderPipelineCameraUI.Drawers.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/Camera/UniversalRenderPipelineCameraUI.Drawers.cs @@ -73,7 +73,18 @@ static void DrawerProjection(UniversalRenderPipelineSerializedCamera p, Editor o bool pixelPerfectEnabled = camera.TryGetComponent(out var pixelPerfectCamera) && pixelPerfectCamera.enabled; if (pixelPerfectEnabled) EditorGUILayout.HelpBox(Styles.pixelPerfectInfo, MessageType.Info); +#if XR_MANAGEMENT_4_0_1_OR_NEWER && ENABLE_VR && ENABLE_XR_MODULE + if (p.baseCameraSettings.orthographic.boolValue && p.allowXRRendering.boolValue) + { + var buildTargetGroup = BuildPipeline.GetBuildTargetGroup(EditorUserBuildSettings.activeBuildTarget); + var buildTargetSettings = XR.Management.XRGeneralSettingsPerBuildTarget.XRGeneralSettingsForBuildTarget(buildTargetGroup); + if (buildTargetSettings != null && buildTargetSettings.AssignedSettings != null && buildTargetSettings.AssignedSettings.activeLoaders.Count > 0) + { + EditorGUILayout.HelpBox("Orthographic projection is not supported in XR. Please change the Camera Projection setting to Perspective to avoid rendering issues", MessageType.Warning); + } + } +#endif using (new EditorGUI.DisabledGroupScope(pixelPerfectEnabled)) CameraUI.Drawer_Projection(p, owner); } From 85f5604956dbceed4cc71f7be852f46b211c50d3 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Sat, 11 Jul 2026 01:18:06 +0000 Subject: [PATCH 23/52] [Port] [6000.5] Fix MSAA shader resolve gate on Quest in OnTilePostProcessPass --- .../Runtime/RendererFeatures/OnTilePostProcessPass.cs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/OnTilePostProcessPass.cs b/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/OnTilePostProcessPass.cs index 34842fd2007..df472de354e 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/OnTilePostProcessPass.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/OnTilePostProcessPass.cs @@ -188,9 +188,12 @@ public override void RecordRenderGraph(RenderGraph renderGraph, ContextContainer passData.useXRVisibilityMesh = useVisibilityMesh; passData.msaaSamples = (int)srcDesc.msaaSamples; - // When rendering into the backbuffer, we could enable the shader resolve extension to resolve into the msaa1x surface directly on platforms that support auto resolve. - // For platforms that don't support auto resolve, the backbuffer is a multisampled surface and we don't need to enable the extension. This is to maximize the pass merging because shader resolve enabled pass has to be the last subpass. - bool useMultisampledShaderResolve = (int)srcDesc.msaaSamples > destInfo.msaaSamples && k_SupportsMultisampleShaderResolve; + // When rendering into the backbuffer, we could enable the shader resolve extension to resolve into the msaa1x surface directly. + // We only enable the extension when resolving an MSAA surface to a non MSAA surface or resolving an MSAA surface to an auto resolve surface (auto resolve surface is a msaa4x surface layered on top of an msaa1x surface). + // The extension should be disabled in other cases to maximize the pass merging because a pass with shader resolve must be the last subpass of its native render pass — no subsequent raster pass can merge into it. + bool useMultisampledShaderResolve = k_SupportsMultisampleShaderResolve && + ((int)srcDesc.msaaSamples > destInfo.msaaSamples || + srcDesc.msaaSamples != MSAASamples.None && SystemInfo.supportsMultisampleAutoResolve); ExtendedFeatureFlags featureFlags = ExtendedFeatureFlags.None; From 6d978f98d3d6ad4a7e86c606e7f803c2bb1c57c1 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Sat, 11 Jul 2026 01:18:06 +0000 Subject: [PATCH 24/52] [Port] [6000.5] Updated units in shader graph node documentation --- .../com.unity.shadergraph/Documentation~/Arccosine-Node.md | 2 +- Packages/com.unity.shadergraph/Documentation~/Arcsine-Node.md | 2 +- .../com.unity.shadergraph/Documentation~/Arctangent-Node.md | 2 +- .../com.unity.shadergraph/Documentation~/Arctangent2-Node.md | 2 +- .../Documentation~/Degrees-To-Radians-Node.md | 4 ++-- .../Documentation~/Radians-To-Degrees-Node.md | 4 ++-- Packages/com.unity.shadergraph/Documentation~/Sine-Node.md | 4 ++-- Packages/com.unity.shadergraph/Documentation~/Tangent-Node.md | 2 +- 8 files changed, 11 insertions(+), 11 deletions(-) diff --git a/Packages/com.unity.shadergraph/Documentation~/Arccosine-Node.md b/Packages/com.unity.shadergraph/Documentation~/Arccosine-Node.md index 8d95817efca..42fdb90c8a5 100644 --- a/Packages/com.unity.shadergraph/Documentation~/Arccosine-Node.md +++ b/Packages/com.unity.shadergraph/Documentation~/Arccosine-Node.md @@ -9,7 +9,7 @@ Returns the arccosine of each component of the input **In** as a vector of the s | Name | Direction | Type | Description | |:------------ |:-------------|:-----|:---| | In | Input | Dynamic Vector | Input value | -| Out | Output | Dynamic Vector | The arccosine in radians | +| Out | Output | Dynamic Vector | The arccosine of the input value, in radians | ## Generated Code Example diff --git a/Packages/com.unity.shadergraph/Documentation~/Arcsine-Node.md b/Packages/com.unity.shadergraph/Documentation~/Arcsine-Node.md index b570d907e68..2cffd495d70 100644 --- a/Packages/com.unity.shadergraph/Documentation~/Arcsine-Node.md +++ b/Packages/com.unity.shadergraph/Documentation~/Arcsine-Node.md @@ -9,7 +9,7 @@ Returns the arcsine of each component of the input **In** as a vector of the sam | Name | Direction | Type | Description | |:------------ |:-------------|:-----|:---| | In | Input | Dynamic Vector | Input value | -| Out | Output | Dynamic Vector | Output value | +| Out | Output | Dynamic Vector | The arcsine of the input value, in radians | ## Generated Code Example diff --git a/Packages/com.unity.shadergraph/Documentation~/Arctangent-Node.md b/Packages/com.unity.shadergraph/Documentation~/Arctangent-Node.md index e2797dc43b6..447d0ae951d 100644 --- a/Packages/com.unity.shadergraph/Documentation~/Arctangent-Node.md +++ b/Packages/com.unity.shadergraph/Documentation~/Arctangent-Node.md @@ -9,7 +9,7 @@ Returns the arctangent of the value of input **In**. Each component should be wi | Name | Direction | Type | Description | |:------------ |:-------------|:-----|:---| | In | Input | Dynamic Vector | Input value | -| Out | Output | Dynamic Vector | Output value | +| Out | Output | Dynamic Vector | The arctangent of the input value, in radians | ## Generated Code Example diff --git a/Packages/com.unity.shadergraph/Documentation~/Arctangent2-Node.md b/Packages/com.unity.shadergraph/Documentation~/Arctangent2-Node.md index 3e24fa63950..b788986085f 100644 --- a/Packages/com.unity.shadergraph/Documentation~/Arctangent2-Node.md +++ b/Packages/com.unity.shadergraph/Documentation~/Arctangent2-Node.md @@ -10,7 +10,7 @@ Returns the arctangent of the values of both input **A** and input **B**. The si |:------------ |:-------------|:-----|:---| | A | Input | Dynamic Vector | First input value | | B | Input | Dynamic Vector | Second input value | -| Out | Output | Dynamic Vector | Output value | +| Out | Output | Dynamic Vector | The arctangent of both inputs, in radians | ## Generated Code Example diff --git a/Packages/com.unity.shadergraph/Documentation~/Degrees-To-Radians-Node.md b/Packages/com.unity.shadergraph/Documentation~/Degrees-To-Radians-Node.md index 0382db8a75b..ea6fcfe7e66 100644 --- a/Packages/com.unity.shadergraph/Documentation~/Degrees-To-Radians-Node.md +++ b/Packages/com.unity.shadergraph/Documentation~/Degrees-To-Radians-Node.md @@ -10,8 +10,8 @@ One degree is equivalent to approximately 0.0174533 radians and a full rotation | Name | Direction | Type | Description | |:------------ |:-------------|:-----|:---| -| In | Input | Dynamic Vector | Input value | -| Out | Output | Dynamic Vector | Output value | +| In | Input | Dynamic Vector | Input value in degrees | +| Out | Output | Dynamic Vector | Output value in radians | ## Generated Code Example diff --git a/Packages/com.unity.shadergraph/Documentation~/Radians-To-Degrees-Node.md b/Packages/com.unity.shadergraph/Documentation~/Radians-To-Degrees-Node.md index 74810dc7618..0a924149fe8 100644 --- a/Packages/com.unity.shadergraph/Documentation~/Radians-To-Degrees-Node.md +++ b/Packages/com.unity.shadergraph/Documentation~/Radians-To-Degrees-Node.md @@ -8,8 +8,8 @@ Returns the value of input **In** converted from radians to degrees. One radian | Name | Direction | Type | Description | |:------------ |:-------------|:-----|:---| -| In | Input | Dynamic Vector | Input value | -| Out | Output | Dynamic Vector | Output value | +| In | Input | Dynamic Vector | Input value in radians | +| Out | Output | Dynamic Vector | Output value in degrees | ## Generated Code Example diff --git a/Packages/com.unity.shadergraph/Documentation~/Sine-Node.md b/Packages/com.unity.shadergraph/Documentation~/Sine-Node.md index 4857c36aecb..e3a4819c0f6 100644 --- a/Packages/com.unity.shadergraph/Documentation~/Sine-Node.md +++ b/Packages/com.unity.shadergraph/Documentation~/Sine-Node.md @@ -8,8 +8,8 @@ Returns the sine of the value of input **In**. | Name | Direction | Type | Description | |:------|:-----------|:---------------|:--------------| -| In | Input | Dynamic Vector | Input value in radians. | -| Out | Output | Dynamic Vector | Output value. Range (-1 to +1). | +| In | Input | Dynamic Vector | Input value in radians | +| Out | Output | Dynamic Vector | Output value | ## Generated Code Example diff --git a/Packages/com.unity.shadergraph/Documentation~/Tangent-Node.md b/Packages/com.unity.shadergraph/Documentation~/Tangent-Node.md index 562daf119fb..0777f091392 100644 --- a/Packages/com.unity.shadergraph/Documentation~/Tangent-Node.md +++ b/Packages/com.unity.shadergraph/Documentation~/Tangent-Node.md @@ -8,7 +8,7 @@ Returns the tangent of the value of input **In**. | Name | Direction | Type | Description | |:------------ |:-------------|:-----|:---| -| In | Input | Dynamic Vector | Input value | +| In | Input | Dynamic Vector | Input value in radians | | Out | Output | Dynamic Vector | Output value | ## Generated Code Example From 9778721f454def1bc4e6fe0b560fe6b3605b7e64 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Mon, 13 Jul 2026 17:04:04 +0000 Subject: [PATCH 25/52] [Port] [6000.5] Direct URP help URLs to the Unity Manual --- .../Runtime/Documentation.cs | 147 ++++++++++++++++-- .../Debug/DebugDisplayGPUResidentDrawer.cs | 3 +- .../ProbeVolume/ProbeVolumesOptions.cs | 3 +- .../PostProcessing/LensFlareComponentSRP.cs | 3 +- .../PostProcessing/LensFlareDataSRP.cs | 3 +- .../Debug/DebugDisplaySettingsRenderGraph.cs | 2 +- .../Runtime/Volume/Volume.cs | 2 +- .../Runtime/Volume/VolumeProfile.cs | 2 +- ...UniversalRenderPipelineCameraUI.Drawers.cs | 2 +- .../UniversalRenderPipelineLightUI.Drawers.cs | 2 +- .../Editor/ShaderGUI/BaseShaderGUI.cs | 2 +- .../AnimationClipConverter.cs | 2 +- .../BuiltInToURP3DRenderSettingsConverter.cs | 2 +- .../Tools/Converters/PPv2/PPv2Converter.cs | 2 +- .../Runtime/2D/Renderer2DData.cs | 2 +- .../Runtime/Data/PostProcessData.cs | 2 +- .../Data/UniversalRenderPipelineAsset.cs | 3 +- .../Debug/DebugDisplaySettingsLighting.cs | 2 +- .../Debug/DebugDisplaySettingsMaterial.cs | 2 +- .../Debug/DebugDisplaySettingsRendering.cs | 2 +- .../Runtime/Documentation.cs | 44 ++++-- .../Runtime/Overrides/Bloom.cs | 2 +- .../Runtime/Overrides/ChannelMixer.cs | 2 +- .../Runtime/Overrides/ChromaticAberration.cs | 2 +- .../Runtime/Overrides/ColorAdjustments.cs | 2 +- .../Runtime/Overrides/ColorCurves.cs | 2 +- .../Runtime/Overrides/ColorLookup.cs | 2 +- .../Runtime/Overrides/DepthOfField.cs | 2 +- .../Runtime/Overrides/FilmGrain.cs | 2 +- .../Runtime/Overrides/LensDistortion.cs | 2 +- .../Runtime/Overrides/LiftGammaGain.cs | 2 +- .../Runtime/Overrides/MotionBlur.cs | 2 +- .../Runtime/Overrides/PaniniProjection.cs | 2 +- .../Runtime/Overrides/ScreenSpaceLensFlare.cs | 2 +- .../Overrides/ShadowsMidtonesHighlights.cs | 2 +- .../Runtime/Overrides/SplitToning.cs | 2 +- .../Runtime/Overrides/Tonemapping.cs | 2 +- .../Runtime/Overrides/Vignette.cs | 2 +- .../Runtime/Overrides/WhiteBalance.cs | 2 +- .../RendererFeatures/DecalRendererFeature.cs | 2 +- .../FullScreenPassRendererFeature.cs | 2 +- .../Runtime/RendererFeatures/RenderObjects.cs | 2 +- .../ScreenSpaceAmbientOcclusion.cs | 2 +- .../RendererFeatures/ScreenSpaceShadows.cs | 2 +- .../Runtime/UniversalAdditionalCameraData.cs | 2 +- .../Runtime/UniversalAdditionalLightData.cs | 2 +- .../UniversalRenderPipelineGlobalSettings.cs | 2 +- .../Runtime/UniversalRendererData.cs | 2 +- .../Assets/Tests/EditMode/HelpURLTests.cs | 6 +- .../Editor/Documentation/HelpUrlTests.cs | 2 +- .../Documentation/VolumeHelpUrlTests.cs | 10 +- 51 files changed, 223 insertions(+), 83 deletions(-) diff --git a/Packages/com.unity.render-pipelines.core/Runtime/Documentation.cs b/Packages/com.unity.render-pipelines.core/Runtime/Documentation.cs index 68908541132..45efa71d4c2 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/Documentation.cs +++ b/Packages/com.unity.render-pipelines.core/Runtime/Documentation.cs @@ -1,4 +1,5 @@ using System; +using System.Reflection; using System.Runtime.CompilerServices; using System.Diagnostics; using System.Diagnostics.CodeAnalysis; @@ -46,6 +47,12 @@ public CoreRPHelpURLAttribute(string pageName, string pageHash, string packageNa /// /// Use this attribute to define documentation url for the current Render Pipeline. /// + /// + /// The URL is resolved at access time based on the active RenderPipelineAsset + /// type. If that type carries a the URL is + /// built for the declared ; otherwise it falls back + /// to the package documentation site for the package that owns the pipeline asset. + /// /// /// [CurrentPipelineHelpURLAttribute("Volume")] /// public class Volume : MonoBehaviour @@ -55,7 +62,7 @@ public CoreRPHelpURLAttribute(string pageName, string pageHash, string packageNa public class CurrentPipelineHelpURLAttribute : HelpURLAttribute { private string pageName { get; } - + private string pageHash { get; } /// /// The constructor of the attribute @@ -70,7 +77,7 @@ public CurrentPipelineHelpURLAttribute(string pageName, string pageHash = "") } /// - /// Returns the URL to the given page in the current Render Pipeline package documentation site. + /// Returns the URL to the given page in the current Render Pipeline documentation. /// public override string URL { @@ -80,16 +87,14 @@ public override string URL if (!GraphicsSettings.isScriptableRenderPipelineEnabled) return string.Empty; - if (DocumentationUtils.TryGetPackageInfoForType(GraphicsSettings.currentRenderPipelineAssetType, out var package, out var version)) - { - return DocumentationInfo.GetPackageLink(package, version, pageName, pageHash); - } -#endif + return DocumentationInfo.BuildPipelineHelpUrl(GraphicsSettings.currentRenderPipelineAssetType, pageName, pageHash); +#else return string.Empty; +#endif } } } - + /// /// Use this attribute to define a documentation URL that is only active when a specific Render Pipeline is in use. /// @@ -111,9 +116,9 @@ public class PipelineHelpURLAttribute : HelpURLAttribute private string pipelineName { get; } private string pageName { get; } - + private string pageHash { get; } - + /// /// Initializes the attribute to link to a specific documentation page for a named Render Pipeline. /// @@ -148,11 +153,11 @@ public override string URL var pipelineType = GraphicsSettings.currentRenderPipelineAssetType; if (pipelineType.Name != pipelineName) return string.Empty; - - if (DocumentationUtils.TryGetPackageInfoForType(pipelineType, out var package, out var version)) - return DocumentationInfo.GetPackageLink(package, version, pageName, pageHash); -#endif + + return DocumentationInfo.BuildPipelineHelpUrl(pipelineType, pageName, pageHash); +#else return string.Empty; +#endif } } } @@ -163,10 +168,86 @@ public override string URL /// public class DocumentationInfo { + /// + /// Identifies where a Render Pipeline's user-facing documentation lives, so that + /// and + /// build URLs against the right base location. + /// + public enum Location + { + /// + /// Pages live on the package documentation site + /// (https://docs.unity3d.com/Packages/<package>@<version>/manual/<page>.html). + /// This is the default when no is present. + /// + Package, + + /// + /// Pages live in the Unity Manual + /// (https://docs.unity3d.com/<version>/Documentation/Manual/<page>.html). + /// + Manual, + } + + /// + /// Apply this attribute to a RenderPipelineAsset type to declare where its + /// user-facing documentation is hosted. Consumed by + /// and to choose between Unity Manual URLs and + /// the package documentation site. + /// + /// + /// Editor-only: the attribute is stripped from non-Editor builds via + /// , since the help URL machinery only runs in the Editor. + /// + /// + /// + /// [DocumentationInfo.Source(DocumentationInfo.Location.Manual)] + /// public class UniversalRenderPipelineAsset : RenderPipelineAsset { /* ... */ } + /// + /// + [Conditional("UNITY_EDITOR")] + [AttributeUsage(AttributeTargets.Class, AllowMultiple = false, Inherited = false)] + public sealed class SourceAttribute : Attribute + { + /// The documentation location for the decorated pipeline asset type. + public Location Location { get; } + + /// Creates the attribute with the given documentation location. + /// Where the pipeline's documentation pages are hosted. + public SourceAttribute(Location location) + { + Location = location; + } + } + const string fallbackVersion = "13.1"; const string packageDocumentationUrl = "https://docs.unity3d.com/Packages/{0}@{1}/manual/"; const string url = packageDocumentationUrl + "{2}.html{3}"; + const string k_ManualUrlFormat = "https://docs.unity3d.com/{0}/Documentation/Manual/{1}.html{2}"; + const string k_ManualFallbackUrlFormat = "https://docs.unity3d.com/Manual/{0}.html{1}"; + +#if UNITY_EDITOR + // Resolves a help URL for a page documented under a specific pipeline asset type. + // The location (Unity Manual vs package site) is taken from a DocumentationInfo.SourceAttribute + // on the pipeline asset type; without one, falls back to the package site for the + // package that owns the type. + internal static string BuildPipelineHelpUrl(Type pipelineAssetType, string pageName, string pageHash) + { + if (pipelineAssetType == null) + return string.Empty; + + var source = pipelineAssetType.GetCustomAttribute(inherit: false); + if (source != null && source.Location == Location.Manual) + return GetManualLink(pageName, pageHash); + + if (DocumentationUtils.TryGetPackageInfoForType(pipelineAssetType, out var package, out var version)) + return GetPackageLink(package, version, pageName, pageHash); + + return string.Empty; + } +#endif + /// /// Current version of the documentation. /// @@ -190,7 +271,7 @@ public static string version /// The page name without the extension. /// The full URL of the page. public static string GetPackageLink(string packageName, string packageVersion, string pageName) => string.Format(url, packageName, packageVersion, pageName, ""); - + /// /// Generates a help URL for the given package, page name and section name. /// @@ -242,6 +323,42 @@ public static string GetPageLink(string packageName, string pageName, string pag /// The name of the package. /// The full URL to the default package documentation page. public static string GetDefaultPackageLink(string packageName) => string.Format(packageDocumentationUrl, packageName, version); + + /// + /// Generates a Unity Manual help URL for the given page. + /// + /// The page path relative to the Manual root, without the .html extension (for example "urp/Volumes"). + /// Optional section anchor on the page, with or without the leading #. + /// + /// A versioned Manual URL such as + /// https://docs.unity3d.com/6000.6/Documentation/Manual/urp/Volumes.html when + /// the running Unity version can be determined, otherwise the unversioned + /// fallback https://docs.unity3d.com/Manual/urp/Volumes.html. + /// + /// + /// + /// // Versioned: https://docs.unity3d.com/6000.6/Documentation/Manual/urp/Volumes.html + /// // Fallback: https://docs.unity3d.com/Manual/urp/Volumes.html + /// var url = DocumentationInfo.GetManualLink("urp/Volumes"); + /// + /// // With a section anchor. + /// var sectionUrl = DocumentationInfo.GetManualLink("urp/features/rendering-debugger-reference", "lighting"); + /// + /// + public static string GetManualLink(string pageName, string pageHash = "") + { + if (!string.IsNullOrEmpty(pageHash) && !pageHash.StartsWith("#")) + pageHash = "#" + pageHash; + +#if UNITY_EDITOR + if (UnityEditor.AssetDatabase.IsAssetImportWorkerProcess()) + return string.Format(k_ManualFallbackUrlFormat, pageName, pageHash); + var unityVersion = UnityEditorInternal.InternalEditorUtility.GetUnityVersion(); + return string.Format(k_ManualUrlFormat, $"{unityVersion.Major}.{unityVersion.Minor}", pageName, pageHash); +#else + return string.Format(k_ManualFallbackUrlFormat, pageName, pageHash); +#endif + } } /// diff --git a/Packages/com.unity.render-pipelines.core/Runtime/GPUDriven/Debug/DebugDisplayGPUResidentDrawer.cs b/Packages/com.unity.render-pipelines.core/Runtime/GPUDriven/Debug/DebugDisplayGPUResidentDrawer.cs index 6f3335f7253..d88d21a955e 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/GPUDriven/Debug/DebugDisplayGPUResidentDrawer.cs +++ b/Packages/com.unity.render-pipelines.core/Runtime/GPUDriven/Debug/DebugDisplayGPUResidentDrawer.cs @@ -11,7 +11,8 @@ namespace UnityEngine.Rendering /// /// GPU Resident Drawer Rendering Debugger settings. /// - [CurrentPipelineHelpURL("gpu-resident-drawer")] + [PipelineHelpURL("UniversalRenderPipelineAsset", "urp/gpu-resident-drawer")] + [PipelineHelpURL("HDRenderPipelineAsset", "gpu-resident-drawer")] [Serializable] public class DebugDisplayGPUResidentDrawer : IDebugDisplaySettingsData, ISerializedDebugDisplaySettings { diff --git a/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeVolumesOptions.cs b/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeVolumesOptions.cs index ebbbd638cfc..7364df82bd1 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeVolumesOptions.cs +++ b/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeVolumesOptions.cs @@ -22,7 +22,8 @@ public APVLeakReductionModeParameter(APVLeakReductionMode value, bool overrideSt /// A volume component that holds settings for the Adaptive Probe Volumes System per-camera options. /// [Serializable, VolumeComponentMenu("Lighting/Adaptive Probe Volumes Options"), SupportedOnRenderPipeline] - [CurrentPipelineHelpURL("probevolumes")] + [PipelineHelpURL("UniversalRenderPipelineAsset", "urp/probevolumes")] + [PipelineHelpURL("HDRenderPipelineAsset", "probevolumes")] [DisplayInfo(name = "Adaptive Probe Volumes Options")] public sealed class ProbeVolumesOptions : VolumeComponent { diff --git a/Packages/com.unity.render-pipelines.core/Runtime/PostProcessing/LensFlareComponentSRP.cs b/Packages/com.unity.render-pipelines.core/Runtime/PostProcessing/LensFlareComponentSRP.cs index 6913fe88bb7..c6e856623d9 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/PostProcessing/LensFlareComponentSRP.cs +++ b/Packages/com.unity.render-pipelines.core/Runtime/PostProcessing/LensFlareComponentSRP.cs @@ -13,7 +13,8 @@ namespace UnityEngine.Rendering /// [ExecuteAlways] [AddComponentMenu("Rendering/Lens Flare (SRP)")] - [CurrentPipelineHelpURL("shared/lens-flare/lens-flare-component")] + [PipelineHelpURL("UniversalRenderPipelineAsset", "urp/shared/lens-flare/lens-flare-component")] + [PipelineHelpURL("HDRenderPipelineAsset", "shared/lens-flare/lens-flare-component")] public sealed class LensFlareComponentSRP : MonoBehaviour { [SerializeField] diff --git a/Packages/com.unity.render-pipelines.core/Runtime/PostProcessing/LensFlareDataSRP.cs b/Packages/com.unity.render-pipelines.core/Runtime/PostProcessing/LensFlareDataSRP.cs index 4db6db78656..e25c64efca0 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/PostProcessing/LensFlareDataSRP.cs +++ b/Packages/com.unity.render-pipelines.core/Runtime/PostProcessing/LensFlareDataSRP.cs @@ -466,7 +466,8 @@ public float sdfRoundness } /// LensFlareDataSRP defines a Lens Flare with a set of LensFlareDataElementSRP - [CurrentPipelineHelpURL("shared/lens-flare/lens-flare-asset")] + [PipelineHelpURL("UniversalRenderPipelineAsset", "urp/shared/lens-flare/lens-flare-asset")] + [PipelineHelpURL("HDRenderPipelineAsset", "shared/lens-flare/lens-flare-asset")] [System.Serializable] public sealed class LensFlareDataSRP : ScriptableObject { diff --git a/Packages/com.unity.render-pipelines.core/Runtime/RenderGraph/Debug/DebugDisplaySettingsRenderGraph.cs b/Packages/com.unity.render-pipelines.core/Runtime/RenderGraph/Debug/DebugDisplaySettingsRenderGraph.cs index fa6550ddb41..06bacd90218 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/RenderGraph/Debug/DebugDisplaySettingsRenderGraph.cs +++ b/Packages/com.unity.render-pipelines.core/Runtime/RenderGraph/Debug/DebugDisplaySettingsRenderGraph.cs @@ -8,7 +8,7 @@ namespace UnityEngine.Rendering /// /// Render Graph-related Rendering Debugger settings. /// - [PipelineHelpURL("UniversalRenderPipelineAsset", pageName: "features/rendering-debugger-reference", pageHash: "render-graph")] + [PipelineHelpURL("UniversalRenderPipelineAsset", pageName: "urp/features/rendering-debugger-reference", pageHash: "render-graph")] [PipelineHelpURL("HDRenderPipelineAsset", pageName: "rendering-debugger-window-reference", pageHash: "render-graph")] class DebugDisplaySettingsRenderGraph : IDebugDisplaySettingsData { diff --git a/Packages/com.unity.render-pipelines.core/Runtime/Volume/Volume.cs b/Packages/com.unity.render-pipelines.core/Runtime/Volume/Volume.cs index fe1d323c2e0..0c54059cfa8 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/Volume/Volume.cs +++ b/Packages/com.unity.render-pipelines.core/Runtime/Volume/Volume.cs @@ -8,7 +8,7 @@ namespace UnityEngine.Rendering /// A generic Volume component holding a . /// [PipelineHelpURL("HDRenderPipelineAsset","understand-volumes")] - [PipelineHelpURL("UniversalRenderPipelineAsset", "Volumes")] + [PipelineHelpURL("UniversalRenderPipelineAsset", "urp/Volumes")] [ExecuteAlways] [AddComponentMenu("Miscellaneous/Volume")] [Icon("Packages/com.unity.render-pipelines.core/Editor/Icons/Processed/Volume Icon.asset")] diff --git a/Packages/com.unity.render-pipelines.core/Runtime/Volume/VolumeProfile.cs b/Packages/com.unity.render-pipelines.core/Runtime/Volume/VolumeProfile.cs index 7475939a712..c9cc8e3dcbe 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/Volume/VolumeProfile.cs +++ b/Packages/com.unity.render-pipelines.core/Runtime/Volume/VolumeProfile.cs @@ -8,7 +8,7 @@ namespace UnityEngine.Rendering /// /// An Asset which holds a set of settings to use with a . /// - [PipelineHelpURL("UniversalRenderPipelineAsset","Volume-Profile")] + [PipelineHelpURL("UniversalRenderPipelineAsset","urp/Volume-Profile")] [PipelineHelpURL("HDRenderPipelineAsset","create-a-volume-profile")] [Icon("Packages/com.unity.render-pipelines.core/Editor/Icons/Processed/VolumeProfile Icon.asset")] public sealed class VolumeProfile : ScriptableObject diff --git a/Packages/com.unity.render-pipelines.universal/Editor/Camera/UniversalRenderPipelineCameraUI.Drawers.cs b/Packages/com.unity.render-pipelines.universal/Editor/Camera/UniversalRenderPipelineCameraUI.Drawers.cs index bd17f413d6d..cc03f810276 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/Camera/UniversalRenderPipelineCameraUI.Drawers.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/Camera/UniversalRenderPipelineCameraUI.Drawers.cs @@ -8,7 +8,7 @@ namespace UnityEditor.Rendering.Universal static partial class UniversalRenderPipelineCameraUI { - [URPHelpURL("camera-component-reference")] + [URPHelpURL("urp/camera-component-reference")] public enum Expandable { /// Projection diff --git a/Packages/com.unity.render-pipelines.universal/Editor/Lighting/UniversalRenderPipelineLightUI.Drawers.cs b/Packages/com.unity.render-pipelines.universal/Editor/Lighting/UniversalRenderPipelineLightUI.Drawers.cs index 425d9f544ff..0502d4199ee 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/Lighting/UniversalRenderPipelineLightUI.Drawers.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/Lighting/UniversalRenderPipelineLightUI.Drawers.cs @@ -15,7 +15,7 @@ namespace UnityEditor.Rendering.Universal internal partial class UniversalRenderPipelineLightUI { - [URPHelpURL("light-component")] + [URPHelpURL("urp/light-component")] enum Expandable { General = 1 << 0, 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 dd311527a25..40c05393f24 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/ShaderGUI/BaseShaderGUI.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/ShaderGUI/BaseShaderGUI.cs @@ -24,7 +24,7 @@ public abstract class BaseShaderGUI : ShaderGUI /// Flags for the foldouts used in the base shader GUI. /// [Flags] - [URPHelpURL("shaders-in-universalrp")] + [URPHelpURL("urp/shaders-in-universalrp")] protected enum Expandable { /// diff --git a/Packages/com.unity.render-pipelines.universal/Editor/Tools/Converters/AnimationClipConverter/AnimationClipConverter.cs b/Packages/com.unity.render-pipelines.universal/Editor/Tools/Converters/AnimationClipConverter/AnimationClipConverter.cs index 2c4ec3b1f90..ac9837a1762 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/Tools/Converters/AnimationClipConverter/AnimationClipConverter.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/Tools/Converters/AnimationClipConverter/AnimationClipConverter.cs @@ -38,7 +38,7 @@ public AnimationClipConverterItem(GlobalObjectId gid, string assetPath) /// ensuring animations continue to work after material conversion. /// [Serializable] - [URPHelpURL("features/rp-converter")] + [URPHelpURL("urp/features/rp-converter")] [PipelineConverter("Built-in", "Universal Render Pipeline (Universal Renderer)")] [BatchModeConverterClassInfo("BuiltInToURP", "AnimationClip")] [ElementInfo(Name = "Animation Clip", diff --git a/Packages/com.unity.render-pipelines.universal/Editor/Tools/Converters/BuiltInToURP3DRenderSettingsConverter.cs b/Packages/com.unity.render-pipelines.universal/Editor/Tools/Converters/BuiltInToURP3DRenderSettingsConverter.cs index 0991ece7369..0b7b54bf663 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/Tools/Converters/BuiltInToURP3DRenderSettingsConverter.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/Tools/Converters/BuiltInToURP3DRenderSettingsConverter.cs @@ -9,7 +9,7 @@ namespace UnityEditor.Rendering.Universal { [Serializable] - [URPHelpURL("features/rp-converter")] + [URPHelpURL("urp/features/rp-converter")] [PipelineConverter("Built-in", "Universal Render Pipeline (Universal Renderer)")] [BatchModeConverterClassInfo("BuiltInToURP", "RenderSettings")] [ElementInfo(Name = "Rendering Settings", diff --git a/Packages/com.unity.render-pipelines.universal/Editor/Tools/Converters/PPv2/PPv2Converter.cs b/Packages/com.unity.render-pipelines.universal/Editor/Tools/Converters/PPv2/PPv2Converter.cs index 094c8f94d97..e745677fa63 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/Tools/Converters/PPv2/PPv2Converter.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/Tools/Converters/PPv2/PPv2Converter.cs @@ -18,7 +18,7 @@ namespace UnityEditor.Rendering.Universal { - [URPHelpURL("features/rp-converter")] + [URPHelpURL("urp/features/rp-converter")] [Serializable] [PipelineConverter("Built-in", "Universal Render Pipeline (Universal Renderer)")] [BatchModeConverterClassInfo("BuiltInToURP", "PPv2")] 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 63beab007f1..a2864bbb224 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/2D/Renderer2DData.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/2D/Renderer2DData.cs @@ -15,7 +15,7 @@ namespace UnityEngine.Rendering.Universal /// [Serializable, ReloadGroup, ExcludeFromPreset] [MovedFrom(true, "UnityEngine.Experimental.Rendering.Universal", "Unity.RenderPipelines.Universal.Runtime")] - [HelpURL("https://docs.unity3d.com/Packages/com.unity.render-pipelines.universal@latest/index.html?subfolder=/manual/2DRendererData-overview.html")] + [URPHelpURL("urp/2DRendererData-overview")] public partial class Renderer2DData : ScriptableRendererData { internal enum Renderer2DDefaultMaterialType diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Data/PostProcessData.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Data/PostProcessData.cs index 8b54ab00ad0..911c0c170fe 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Data/PostProcessData.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Data/PostProcessData.cs @@ -16,7 +16,7 @@ namespace UnityEngine.Rendering.Universal /// /// [Serializable] - [URPHelpURL("integration-with-post-processing")] + [URPHelpURL("urp/integration-with-post-processing")] public class PostProcessData : ScriptableObject { #if UNITY_EDITOR 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 df55470b141..3a7db86c5e8 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Data/UniversalRenderPipelineAsset.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Data/UniversalRenderPipelineAsset.cs @@ -412,9 +412,10 @@ public enum ShEvalMode /// /// [ExcludeFromPreset] - [URPHelpURL("universalrp-asset")] + [URPHelpURL("urp/universalrp-asset")] [Icon("UnityEngine/Rendering/RenderPipelineAsset Icon")] #if UNITY_EDITOR + [DocumentationInfo.Source(DocumentationInfo.Location.Manual)] [ShaderKeywordFilter.ApplyRulesIfTagsEqual("RenderPipeline", "UniversalPipeline")] #endif public partial class UniversalRenderPipelineAsset : RenderPipelineAsset, ISerializationCallbackReceiver, IProbeVolumeEnabledRenderPipeline, IGPUResidentRenderPipeline, IRenderGraphEnabledRenderPipeline, ISTPEnabledRenderPipeline diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Debug/DebugDisplaySettingsLighting.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Debug/DebugDisplaySettingsLighting.cs index be8978e047b..d5354d7d82c 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Debug/DebugDisplaySettingsLighting.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Debug/DebugDisplaySettingsLighting.cs @@ -66,7 +66,7 @@ internal static class WidgetFactory } [DisplayInfo(name = "Lighting", order = 3)] - [URPHelpURL("features/rendering-debugger-reference", "lighting")] + [URPHelpURL("urp/features/rendering-debugger-reference", "lighting")] internal class SettingsPanel : DebugDisplaySettingsPanel { public SettingsPanel(DebugDisplaySettingsLighting data) diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Debug/DebugDisplaySettingsMaterial.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Debug/DebugDisplaySettingsMaterial.cs index 0680f3b4350..4fa57ba7a2c 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Debug/DebugDisplaySettingsMaterial.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Debug/DebugDisplaySettingsMaterial.cs @@ -500,7 +500,7 @@ internal static DebugUI.RenderingLayerField CreateFilterRenderingLayerMasks(Debu } [DisplayInfo(name = "Material", order = 2)] - [URPHelpURL("features/rendering-debugger-reference", "material")] + [URPHelpURL("urp/features/rendering-debugger-reference", "material")] internal class SettingsPanel : DebugDisplaySettingsPanel { public SettingsPanel(DebugDisplaySettingsMaterial data) diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Debug/DebugDisplaySettingsRendering.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Debug/DebugDisplaySettingsRendering.cs index 60ad8a2ebdd..f1a952c2ca2 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Debug/DebugDisplaySettingsRendering.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Debug/DebugDisplaySettingsRendering.cs @@ -592,7 +592,7 @@ internal static DebugUI.Widget CreateMipMapDebugSettings(DebugDisplaySettingsRen } [DisplayInfo(name = "Rendering", order = 1)] - [URPHelpURL("features/rendering-debugger-reference", "rendering")] + [URPHelpURL("urp/features/rendering-debugger-reference", "rendering")] internal class SettingsPanel : DebugDisplaySettingsPanel { public SettingsPanel(DebugDisplaySettingsRendering data) diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Documentation.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Documentation.cs index 5a3339a3156..f511bda3630 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Documentation.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Documentation.cs @@ -1,28 +1,38 @@ +using System; using System.Diagnostics; +using UnityEngine.Rendering; namespace UnityEngine.Rendering.Universal { + /// + /// Attribute to define the help URL for Universal Render Pipeline classes. + /// + /// + /// The page name is treated as a path relative to the Unity Manual root + /// (https://docs.unity3d.com/<version>/Documentation/Manual/). Most URP + /// pages live under the urp/ subfolder, so callers typically pass a path of + /// the form "urp/<page>", but pages elsewhere in the Manual (for + /// example shared content) can also be linked. The URL is built by + /// in the core package. + /// + /// + /// + /// [URPHelpURL("urp/Volumes")] + /// public class VolumeProfile : ScriptableObject { /* ... */ } + /// + /// [Conditional("UNITY_EDITOR")] - internal class URPHelpURLAttribute : CoreRPHelpURLAttribute + [AttributeUsage(AttributeTargets.Class | AttributeTargets.Enum, AllowMultiple = false)] + internal class URPHelpURLAttribute : HelpURLAttribute { + /// + /// Creates a help URL attribute for a page in the Unity Manual. + /// + /// The page path relative to the Manual root, without the .html extension (for example "urp/Volumes"). + /// Optional section anchor on the page, with or without the leading #. public URPHelpURLAttribute(string pageName, string pageHash = "") - : base(pageName, pageHash, Documentation.packageName) + : base(DocumentationInfo.GetManualLink(pageName, pageHash)) { } } - - internal class Documentation : DocumentationInfo - { - /// - /// The name of the package - /// - public const string packageName = "com.unity.render-pipelines.universal"; - - /// - /// Generates a Universal Render Pipeline help url for the given page name - /// - /// The page name - /// The full url - public static string GetPageLink(string pageName) => GetPageLink(packageName, pageName); - } } diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/Bloom.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/Bloom.cs index dae9577ad5b..5083fb17fd1 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/Bloom.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/Bloom.cs @@ -163,7 +163,7 @@ public enum BloomFilterMode /// [Serializable, VolumeComponentMenu("Post-processing/Bloom")] [SupportedOnRenderPipeline(typeof(UniversalRenderPipelineAsset))] - [URPHelpURL("post-processing-bloom")] + [URPHelpURL("urp/post-processing-bloom")] public sealed partial class Bloom : VolumeComponent, IPostProcessComponent { /// diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ChannelMixer.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ChannelMixer.cs index 3e5d5c3883d..06b86ddecff 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ChannelMixer.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ChannelMixer.cs @@ -114,7 +114,7 @@ namespace UnityEngine.Rendering.Universal /// [Serializable, VolumeComponentMenu("Post-processing/Channel Mixer")] [SupportedOnRenderPipeline(typeof(UniversalRenderPipelineAsset))] - [URPHelpURL("Post-Processing-Channel-Mixer")] + [URPHelpURL("urp/Post-Processing-Channel-Mixer")] public sealed class ChannelMixer : VolumeComponent, IPostProcessComponent { /// diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ChromaticAberration.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ChromaticAberration.cs index 6972a9427cd..26435630271 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ChromaticAberration.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ChromaticAberration.cs @@ -89,7 +89,7 @@ namespace UnityEngine.Rendering.Universal /// [Serializable, VolumeComponentMenu("Post-processing/Chromatic Aberration")] [SupportedOnRenderPipeline(typeof(UniversalRenderPipelineAsset))] - [URPHelpURL("post-processing-chromatic-aberration")] + [URPHelpURL("urp/post-processing-chromatic-aberration")] public sealed class ChromaticAberration : VolumeComponent, IPostProcessComponent { /// diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ColorAdjustments.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ColorAdjustments.cs index 72dfa3c8909..f675f27b908 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ColorAdjustments.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ColorAdjustments.cs @@ -103,7 +103,7 @@ namespace UnityEngine.Rendering.Universal /// [Serializable, VolumeComponentMenu("Post-processing/Color Adjustments")] [SupportedOnRenderPipeline(typeof(UniversalRenderPipelineAsset))] - [URPHelpURL("Post-Processing-Color-Adjustments")] + [URPHelpURL("urp/Post-Processing-Color-Adjustments")] public sealed class ColorAdjustments : VolumeComponent, IPostProcessComponent { /// diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ColorCurves.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ColorCurves.cs index b5c4149ddb1..4b12aae0c16 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ColorCurves.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ColorCurves.cs @@ -110,7 +110,7 @@ namespace UnityEngine.Rendering.Universal /// [Serializable, VolumeComponentMenu("Post-processing/Color Curves")] [SupportedOnRenderPipeline(typeof(UniversalRenderPipelineAsset))] - [URPHelpURL("Post-Processing-Color-Curves")] + [URPHelpURL("urp/Post-Processing-Color-Curves")] public sealed class ColorCurves : VolumeComponent, IPostProcessComponent { /// diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ColorLookup.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ColorLookup.cs index 0c6af2cff82..878e0130c5f 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ColorLookup.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ColorLookup.cs @@ -94,7 +94,7 @@ namespace UnityEngine.Rendering.Universal /// [Serializable, VolumeComponentMenu("Post-processing/Color Lookup")] [SupportedOnRenderPipeline(typeof(UniversalRenderPipelineAsset))] - [URPHelpURL("integration-with-post-processing")] + [URPHelpURL("urp/integration-with-post-processing")] public sealed class ColorLookup : VolumeComponent, IPostProcessComponent { /// diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/DepthOfField.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/DepthOfField.cs index e73e95639db..9a6241769e7 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/DepthOfField.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/DepthOfField.cs @@ -145,7 +145,7 @@ public enum DepthOfFieldMode /// [Serializable, VolumeComponentMenu("Post-processing/Depth Of Field")] [SupportedOnRenderPipeline(typeof(UniversalRenderPipelineAsset))] - [URPHelpURL("post-processing-depth-of-field")] + [URPHelpURL("urp/depth-of-field-volume-override-reference")] public sealed class DepthOfField : VolumeComponent, IPostProcessComponent { /// diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/FilmGrain.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/FilmGrain.cs index 90bdf6f8c85..447aa84331c 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/FilmGrain.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/FilmGrain.cs @@ -162,7 +162,7 @@ public enum FilmGrainLookup /// [Serializable, VolumeComponentMenu("Post-processing/Film Grain")] [SupportedOnRenderPipeline(typeof(UniversalRenderPipelineAsset))] - [URPHelpURL("Post-Processing-Film-Grain")] + [URPHelpURL("urp/Post-Processing-Film-Grain")] public sealed class FilmGrain : VolumeComponent, IPostProcessComponent { /// diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/LensDistortion.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/LensDistortion.cs index ec10545ec1a..8aa012abd83 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/LensDistortion.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/LensDistortion.cs @@ -102,7 +102,7 @@ namespace UnityEngine.Rendering.Universal /// [Serializable, VolumeComponentMenu("Post-processing/Lens Distortion")] [SupportedOnRenderPipeline(typeof(UniversalRenderPipelineAsset))] - [URPHelpURL("Post-Processing-Lens-Distortion")] + [URPHelpURL("urp/Post-Processing-Lens-Distortion")] public sealed class LensDistortion : VolumeComponent, IPostProcessComponent { /// diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/LiftGammaGain.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/LiftGammaGain.cs index 15ba8006ac6..f6fcbc1be48 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/LiftGammaGain.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/LiftGammaGain.cs @@ -95,7 +95,7 @@ namespace UnityEngine.Rendering.Universal /// [Serializable, VolumeComponentMenu("Post-processing/Lift, Gamma, Gain")] [SupportedOnRenderPipeline(typeof(UniversalRenderPipelineAsset))] - [URPHelpURL("Post-Processing-Lift-Gamma-Gain")] + [URPHelpURL("urp/Post-Processing-Lift-Gamma-Gain")] public sealed class LiftGammaGain : VolumeComponent, IPostProcessComponent { /// diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/MotionBlur.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/MotionBlur.cs index d80dfbdf652..07b9af3be99 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/MotionBlur.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/MotionBlur.cs @@ -137,7 +137,7 @@ public enum MotionBlurQuality /// [Serializable, VolumeComponentMenu("Post-processing/Motion Blur")] [SupportedOnRenderPipeline(typeof(UniversalRenderPipelineAsset))] - [URPHelpURL("Post-Processing-Motion-Blur")] + [URPHelpURL("urp/Post-Processing-Motion-Blur")] public sealed class MotionBlur : VolumeComponent, IPostProcessComponent { /// diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/PaniniProjection.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/PaniniProjection.cs index 3905850326e..59891c48fe8 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/PaniniProjection.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/PaniniProjection.cs @@ -92,7 +92,7 @@ namespace UnityEngine.Rendering.Universal /// [Serializable, VolumeComponentMenu("Post-processing/Panini Projection")] [SupportedOnRenderPipeline(typeof(UniversalRenderPipelineAsset))] - [URPHelpURL("Post-Processing-Panini-Projection")] + [URPHelpURL("urp/Post-Processing-Panini-Projection")] public sealed class PaniniProjection : VolumeComponent, IPostProcessComponent { /// diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ScreenSpaceLensFlare.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ScreenSpaceLensFlare.cs index 04d0b2f89bf..cf82f142e08 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ScreenSpaceLensFlare.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ScreenSpaceLensFlare.cs @@ -162,7 +162,7 @@ public enum ScreenSpaceLensFlareResolution : int /// [Serializable, VolumeComponentMenu("Post-processing/Screen Space Lens Flare")] [SupportedOnRenderPipeline(typeof(UniversalRenderPipelineAsset))] - [URPHelpURL("shared/lens-flare/lens-flare-component")] + [URPHelpURL("urp/shared/lens-flare/lens-flare-component")] [DisplayInfo(name = "Screen Space Lens Flare")] public class ScreenSpaceLensFlare : VolumeComponent, IPostProcessComponent { diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ShadowsMidtonesHighlights.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ShadowsMidtonesHighlights.cs index 46d6d2708a4..b8dd5e0cca9 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ShadowsMidtonesHighlights.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/ShadowsMidtonesHighlights.cs @@ -109,7 +109,7 @@ namespace UnityEngine.Rendering.Universal /// [Serializable, VolumeComponentMenu("Post-processing/Shadows, Midtones, Highlights")] [SupportedOnRenderPipeline(typeof(UniversalRenderPipelineAsset))] - [URPHelpURL("Post-Processing-Shadows-Midtones-Highlights")] + [URPHelpURL("urp/Post-Processing-Shadows-Midtones-Highlights")] public sealed class ShadowsMidtonesHighlights : VolumeComponent, IPostProcessComponent { /// diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/SplitToning.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/SplitToning.cs index beee0639fcc..3a09e09223a 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/SplitToning.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/SplitToning.cs @@ -97,7 +97,7 @@ namespace UnityEngine.Rendering.Universal /// [Serializable, VolumeComponentMenu("Post-processing/Split Toning")] [SupportedOnRenderPipeline(typeof(UniversalRenderPipelineAsset))] - [URPHelpURL("Post-Processing-Split-Toning")] + [URPHelpURL("urp/Post-Processing-Split-Toning")] public sealed class SplitToning : VolumeComponent, IPostProcessComponent { /// diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/Tonemapping.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/Tonemapping.cs index 2944eddd419..6bf3229c319 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/Tonemapping.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/Tonemapping.cs @@ -176,7 +176,7 @@ public enum HDRACESPreset /// [Serializable, VolumeComponentMenu("Post-processing/Tonemapping")] [SupportedOnRenderPipeline(typeof(UniversalRenderPipelineAsset))] - [URPHelpURL("post-processing-tonemapping")] + [URPHelpURL("urp/post-processing-tonemapping")] public sealed class Tonemapping : VolumeComponent, IPostProcessComponent { /// diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/Vignette.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/Vignette.cs index d4cb207bd57..aed51be77e8 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/Vignette.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/Vignette.cs @@ -105,7 +105,7 @@ namespace UnityEngine.Rendering.Universal /// [Serializable, VolumeComponentMenu("Post-processing/Vignette")] [SupportedOnRenderPipeline(typeof(UniversalRenderPipelineAsset))] - [URPHelpURL("post-processing-vignette")] + [URPHelpURL("urp/post-processing-vignette")] public sealed class Vignette : VolumeComponent, IPostProcessComponent { /// diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/WhiteBalance.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/WhiteBalance.cs index 5a5b0e80a94..8a9f68857f6 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/WhiteBalance.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Overrides/WhiteBalance.cs @@ -92,7 +92,7 @@ namespace UnityEngine.Rendering.Universal /// [Serializable, VolumeComponentMenu("Post-processing/White Balance")] [SupportedOnRenderPipeline(typeof(UniversalRenderPipelineAsset))] - [URPHelpURL("Post-Processing-White-Balance")] + [URPHelpURL("urp/Post-Processing-White-Balance")] public sealed class WhiteBalance : VolumeComponent, IPostProcessComponent { /// diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/DecalRendererFeature.cs b/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/DecalRendererFeature.cs index 1d4cf6f903a..48ce15a3b6a 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/DecalRendererFeature.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/DecalRendererFeature.cs @@ -178,7 +178,7 @@ private void OnDecalMaterialChange(DecalProjector decalProjector) [SupportedOnRenderer(typeof(UniversalRendererData))] [DisallowMultipleRendererFeature("Decal")] [Tooltip("With this Renderer Feature, Unity can project specific Materials (decals) onto other objects in the Scene.")] - [URPHelpURL("renderer-feature-decal")] + [URPHelpURL("urp/renderer-feature-decal")] [Icon("Packages/com.unity.render-pipelines.core/Editor/Icons/Processed/DecalProjector Icon.asset")] public partial class DecalRendererFeature : ScriptableRendererFeature { diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/FullScreenPassRendererFeature.cs b/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/FullScreenPassRendererFeature.cs index a127ee66a2a..5f8c7c5c63d 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/FullScreenPassRendererFeature.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/FullScreenPassRendererFeature.cs @@ -9,7 +9,7 @@ namespace UnityEngine.Rendering.Universal /// /// This renderer feature lets you create single-pass full screen post processing effects without needing to write code. /// - [URPHelpURL("renderer-features/renderer-feature-full-screen-pass")] + [URPHelpURL("urp/renderer-features/renderer-feature-full-screen-pass")] public partial class FullScreenPassRendererFeature : ScriptableRendererFeature { /// diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/RenderObjects.cs b/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/RenderObjects.cs index 31e8f07f545..e05492e53d0 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/RenderObjects.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/RenderObjects.cs @@ -25,7 +25,7 @@ public enum RenderQueueType [ExcludeFromPreset] [MovedFrom(true, "UnityEngine.Experimental.Rendering.Universal")] [Tooltip("Render Objects simplifies the injection of additional render passes by exposing a selection of commonly used settings.")] - [URPHelpURL("renderer-features/renderer-feature-render-objects")] + [URPHelpURL("urp/renderer-features/renderer-feature-render-objects")] public class RenderObjects : ScriptableRendererFeature { /// diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/ScreenSpaceAmbientOcclusion.cs b/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/ScreenSpaceAmbientOcclusion.cs index cd756e945d8..8a496919596 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/ScreenSpaceAmbientOcclusion.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/ScreenSpaceAmbientOcclusion.cs @@ -114,7 +114,7 @@ public Texture2D[] BlueNoise256Textures [SupportedOnRenderer(typeof(UniversalRendererData))] [DisallowMultipleRendererFeature("Screen Space Ambient Occlusion")] [Tooltip("The Ambient Occlusion effect darkens creases, holes, intersections and surfaces that are close to each other.")] - [URPHelpURL("post-processing-ssao")] + [URPHelpURL("urp/post-processing-ssao")] public class ScreenSpaceAmbientOcclusion : ScriptableRendererFeature { // Serialized Fields diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/ScreenSpaceShadows.cs b/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/ScreenSpaceShadows.cs index 281158c7aeb..0b2595fcf25 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/ScreenSpaceShadows.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/ScreenSpaceShadows.cs @@ -12,7 +12,7 @@ internal class ScreenSpaceShadowsSettings [SupportedOnRenderer(typeof(UniversalRendererData))] [DisallowMultipleRendererFeature("Screen Space Shadows")] [Tooltip("Screen Space Shadows")] - [URPHelpURL("renderer-feature-screen-space-shadows")] + [URPHelpURL("urp/renderer-feature-screen-space-shadows")] internal class ScreenSpaceShadows : ScriptableRendererFeature { #if UNITY_EDITOR diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/UniversalAdditionalCameraData.cs b/Packages/com.unity.render-pipelines.universal/Runtime/UniversalAdditionalCameraData.cs index 55250043579..70ec8c1ca6f 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/UniversalAdditionalCameraData.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/UniversalAdditionalCameraData.cs @@ -438,7 +438,7 @@ public static string GetName(this CameraRenderType type) [DisallowMultipleComponent] [RequireComponent(typeof(Camera))] [ExecuteAlways] // NOTE: This is required to get calls to OnDestroy() always. Graphics resources are released in OnDestroy(). - [URPHelpURL("universal-additional-camera-data")] + [URPHelpURL("urp/universal-additional-camera-data")] public partial class UniversalAdditionalCameraData : MonoBehaviour, ISerializationCallbackReceiver, IAdditionalData { const string k_GizmoPath = "Packages/com.unity.render-pipelines.universal/Editor/Gizmos/"; diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/UniversalAdditionalLightData.cs b/Packages/com.unity.render-pipelines.universal/Runtime/UniversalAdditionalLightData.cs index cb87c89c9da..f59d58d67c0 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/UniversalAdditionalLightData.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/UniversalAdditionalLightData.cs @@ -30,7 +30,7 @@ public static UniversalAdditionalLightData GetUniversalAdditionalLightData(this /// [DisallowMultipleComponent] [RequireComponent(typeof(Light))] - [URPHelpURL("universal-additional-light-data")] + [URPHelpURL("urp/universal-additional-light-data")] public partial class UniversalAdditionalLightData : MonoBehaviour, ISerializationCallbackReceiver, IAdditionalData { [Tooltip("Controls if light Shadow Bias parameters use pipeline settings.")] diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/UniversalRenderPipelineGlobalSettings.cs b/Packages/com.unity.render-pipelines.universal/Runtime/UniversalRenderPipelineGlobalSettings.cs index 434430962f5..50f19cad3fe 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/UniversalRenderPipelineGlobalSettings.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/UniversalRenderPipelineGlobalSettings.cs @@ -17,7 +17,7 @@ namespace UnityEngine.Rendering.Universal /// Global settings are unique per Render Pipeline type. In URP, Global Settings contain: /// - light layer names /// - [URPHelpURL("urp-global-settings")] + [URPHelpURL("urp/urp-global-settings")] [DisplayInfo(name = "URP Global Settings Asset", order = CoreUtils.Sections.section4 + 2)] [SupportedOnRenderPipeline(typeof(UniversalRenderPipelineAsset))] [DisplayName("URP")] diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/UniversalRendererData.cs b/Packages/com.unity.render-pipelines.universal/Runtime/UniversalRendererData.cs index 26430b7dd94..67abd8aca90 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/UniversalRendererData.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/UniversalRendererData.cs @@ -105,7 +105,7 @@ public enum DepthFormat /// Class containing resources needed for the UniversalRenderer. /// [Serializable, ReloadGroup, ExcludeFromPreset] - [URPHelpURL("urp-universal-renderer")] + [URPHelpURL("urp/urp-universal-renderer")] public partial class UniversalRendererData : ScriptableRendererData, ISerializationCallbackReceiver { #if UNITY_EDITOR diff --git a/Tests/SRPTests/Projects/MultipleSRP_Tests/Assets/Tests/EditMode/HelpURLTests.cs b/Tests/SRPTests/Projects/MultipleSRP_Tests/Assets/Tests/EditMode/HelpURLTests.cs index 96f486144a4..5d6cf8a9ebc 100644 --- a/Tests/SRPTests/Projects/MultipleSRP_Tests/Assets/Tests/EditMode/HelpURLTests.cs +++ b/Tests/SRPTests/Projects/MultipleSRP_Tests/Assets/Tests/EditMode/HelpURLTests.cs @@ -69,8 +69,10 @@ public void TearDown() public IEnumerator CheckHelpUrlsPointToTheExistingPage(Type type) { yield return null; - - DocumentationUtils.TryGetHelpURL(type, out var url); + + if (!DocumentationUtils.TryGetHelpURL(type, out var url)) + yield break; + var task = Task.Run(() => CheckUrlFor404Async(m_Client, url)); while (!task.IsCompleted) yield return null; diff --git a/Tests/SRPTests/Projects/SRP_SmokeTest/Assets/Tests/Editor/Documentation/HelpUrlTests.cs b/Tests/SRPTests/Projects/SRP_SmokeTest/Assets/Tests/Editor/Documentation/HelpUrlTests.cs index 4b0bcc7e09d..7b5b044234d 100644 --- a/Tests/SRPTests/Projects/SRP_SmokeTest/Assets/Tests/Editor/Documentation/HelpUrlTests.cs +++ b/Tests/SRPTests/Projects/SRP_SmokeTest/Assets/Tests/Editor/Documentation/HelpUrlTests.cs @@ -125,7 +125,7 @@ public bool CurrentPipelineHelpURLAttribute(string renderPipelineAsset, Type ren DocumentationUtils.TryGetHelpURL(renderPipelineType, out string url); if (GraphicsSettings.defaultRenderPipeline is UniversalRenderPipelineAsset) - Assert.True(url.Contains("com.unity.render-pipelines.universal")); + Assert.True(url.Contains("/Documentation/Manual/")); // URP documentation lives in the Unity Manual. else if (GraphicsSettings.defaultRenderPipeline is HDRenderPipelineAsset) Assert.True(url.Contains("com.unity.render-pipelines.high-definition")); diff --git a/Tests/SRPTests/Projects/SRP_SmokeTest/Assets/Tests/Editor/Documentation/VolumeHelpUrlTests.cs b/Tests/SRPTests/Projects/SRP_SmokeTest/Assets/Tests/Editor/Documentation/VolumeHelpUrlTests.cs index 8be2c754f8d..af0cd9eceb1 100644 --- a/Tests/SRPTests/Projects/SRP_SmokeTest/Assets/Tests/Editor/Documentation/VolumeHelpUrlTests.cs +++ b/Tests/SRPTests/Projects/SRP_SmokeTest/Assets/Tests/Editor/Documentation/VolumeHelpUrlTests.cs @@ -12,7 +12,7 @@ public class VolumeHelpUrlTests : HelpUrlTestsBase { static TestCaseData[] s_VolumeTestsCaseDatas = { - new TestCaseData("Assets/PipelineAssets/UniversalRenderPipelineAsset.asset" , typeof(UniversalRenderPipeline), "Volumes") + new TestCaseData("Assets/PipelineAssets/UniversalRenderPipelineAsset.asset" , typeof(UniversalRenderPipeline), "urp/Volumes") .SetName("Volumes URL's are correct when URP is the active pipeline"), new TestCaseData("Assets/PipelineAssets/HDRenderPipelineAsset.asset", typeof(HDRenderPipeline), "understand-volumes") .SetName("Volumes URL's are correct when HDRP is the active pipeline"), @@ -33,7 +33,7 @@ public void CheckVolumeUrls(string renderPipelineAsset, Type renderPipelineType, static TestCaseData[] s_VolumeProfileTestsCaseDatas = { - new TestCaseData(k_URPAssetPath, typeof(UniversalRenderPipeline), "Volume-Profile") + new TestCaseData(k_URPAssetPath, typeof(UniversalRenderPipeline), "urp/Volume-Profile") .SetName("Volumes URL's are correct when URP is the active pipeline"), new TestCaseData(k_HDRPAssetPath, typeof(HDRenderPipeline), "create-a-volume-profile") .SetName("Volumes URL's are correct when HDRP is the active pipeline"), @@ -53,6 +53,12 @@ public void CheckVolumeProfileUrls(string renderPipelineAsset, Type renderPipeli string SetRPAndGetExpectedDocumentationLink(string renderPipelineAsset, Type renderPipelineType, string pageName) { GraphicsSettings.defaultRenderPipeline = LoadAsset(renderPipelineAsset); + + // URP documentation is in the Unity Manual since 6000.0. Page paths are relative to the + // Manual's "md" root (passed in via pageName, e.g. "urp/Volumes"). + if (renderPipelineType == typeof(UniversalRenderPipeline)) + return DocumentationInfo.GetManualLink(pageName); + Assume.That(DocumentationUtils.TryGetPackageInfoForType(renderPipelineType, out var name, out var version), Is.True); return DocumentationInfo.GetPackageLink(name, version, pageName); } From 1cb81c5c4c28939a15254006d1b24c28a027b557 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Tue, 14 Jul 2026 01:54:38 +0000 Subject: [PATCH 26/52] [Port] [6000.5] URP_Terrain: re-enable 301_Motion_Vectors_SpeedTree_Terrain with scene-scoped MV tolerance (UUM-145870) --- .../301_Motion_Vectors_SpeedTree_Terrain.unity | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Terrain/Assets/Scenes/301_Motion_Vectors_SpeedTree_Terrain.unity b/Tests/SRPTests/Projects/UniversalGraphicsTest_Terrain/Assets/Scenes/301_Motion_Vectors_SpeedTree_Terrain.unity index 3a10464b01c..87bb5dcdfa8 100644 --- a/Tests/SRPTests/Projects/UniversalGraphicsTest_Terrain/Assets/Scenes/301_Motion_Vectors_SpeedTree_Terrain.unity +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Terrain/Assets/Scenes/301_Motion_Vectors_SpeedTree_Terrain.unity @@ -250,6 +250,21 @@ PrefabInstance: propertyPath: ImageComparisonSettings.ImageResolution value: 0 objectReference: {fileID: 0} + - target: {fileID: 5925587397941101150, guid: a477888deb65a194793f87af3323de08, + type: 3} + propertyPath: ImageComparisonSettings.AverageCorrectnessThreshold + value: 0.0005 + objectReference: {fileID: 0} + - target: {fileID: 5925587397941101150, guid: a477888deb65a194793f87af3323de08, + type: 3} + propertyPath: ImageComparisonSettings.PerPixelCorrectnessThreshold + value: 0.005 + objectReference: {fileID: 0} + - target: {fileID: 5925587397941101150, guid: a477888deb65a194793f87af3323de08, + type: 3} + propertyPath: ImageComparisonSettings.IncorrectPixelsThreshold + value: 0.01 + objectReference: {fileID: 0} - target: {fileID: 6456975910273469994, guid: a477888deb65a194793f87af3323de08, type: 3} propertyPath: m_Name From a606ed3967e936516a24209387889ad57b5ee51e Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Thu, 16 Jul 2026 14:45:03 +0000 Subject: [PATCH 27/52] [Port] [6000.5] Add backbuffer check to RenderObjectsPass for foveation --- .../Runtime/Passes/RenderObjectsPass.cs | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Passes/RenderObjectsPass.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Passes/RenderObjectsPass.cs index 6cd36815636..6e149b9233e 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Passes/RenderObjectsPass.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Passes/RenderObjectsPass.cs @@ -141,6 +141,11 @@ private static void ExecutePass(PassData passData, RasterCommandBuffer cmd, Rend { Camera camera = passData.cameraData.camera; + if (passData.cameraData.xr.enabled && passData.isActiveTargetBackBuffer) + { + cmd.SetViewport(passData.cameraData.xr.GetViewport()); + } + // In case of camera stacking we need to take the viewport rect from base camera Rect pixelRect = passData.cameraData.pixelRect; float cameraAspect = (float)pixelRect.width / (float)pixelRect.height; @@ -194,13 +199,16 @@ private class PassData // Required for code sharing purpose between RG and non-RG. internal RendererList rendererList; + + internal bool isActiveTargetBackBuffer; } - private void InitPassData(UniversalCameraData cameraData, ref PassData passData) + private void InitPassData(UniversalCameraData cameraData, ref PassData passData, bool isActiveTargetBackBuffer = false) { passData.cameraSettings = m_CameraSettings; passData.renderPassEvent = renderPassEvent; passData.cameraData = cameraData; + passData.isActiveTargetBackBuffer = isActiveTargetBackBuffer; } private void InitRendererLists(UniversalRenderingData renderingData, UniversalLightData lightData, @@ -240,7 +248,7 @@ public override void RecordRenderGraph(RenderGraph renderGraph, ContextContainer { UniversalResourceData resourceData = frameData.Get(); - InitPassData(cameraData, ref passData); + InitPassData(cameraData, ref passData, resourceData.isActiveTargetBackBuffer); passData.color = resourceData.activeColorTexture; builder.SetRenderAttachment(resourceData.activeColorTexture, 0, AccessFlags.Write); @@ -283,7 +291,8 @@ public override void RecordRenderGraph(RenderGraph renderGraph, ContextContainer builder.AllowGlobalStateModification(true); if (cameraData.xr.enabled) { - builder.EnableFoveatedRasterization(cameraData.xr.supportsFoveatedRendering && cameraData.xrUniversal.canFoveateIntermediatePasses); + bool passSupportsFoveation = cameraData.xrUniversal.canFoveateIntermediatePasses || resourceData.isActiveTargetBackBuffer; + builder.EnableFoveatedRasterization(cameraData.xr.supportsFoveatedRendering && passSupportsFoveation); // Apply MultiviewRenderRegionsCompatible flag only to the peripheral view in Quad Views if (cameraData.xr.multipassId == 0) { From c6e19c1a3ffdb2063c97867d0c4de1b954bcc33c Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Thu, 16 Jul 2026 14:45:04 +0000 Subject: [PATCH 28/52] [Port] [6000.5] Added native RenderPipeline tag based subshader stripping --- .../RenderPipelineSubShaderStrippingTests.cs | 59 +++++++++++++++++++ ...derPipelineSubShaderStrippingTests.cs.meta | 2 + 2 files changed, 61 insertions(+) create mode 100644 Packages/com.unity.render-pipelines.core/Tests/Editor/ShaderStripping/RenderPipelineSubShaderStrippingTests.cs create mode 100644 Packages/com.unity.render-pipelines.core/Tests/Editor/ShaderStripping/RenderPipelineSubShaderStrippingTests.cs.meta diff --git a/Packages/com.unity.render-pipelines.core/Tests/Editor/ShaderStripping/RenderPipelineSubShaderStrippingTests.cs b/Packages/com.unity.render-pipelines.core/Tests/Editor/ShaderStripping/RenderPipelineSubShaderStrippingTests.cs new file mode 100644 index 00000000000..2be61f1f8a5 --- /dev/null +++ b/Packages/com.unity.render-pipelines.core/Tests/Editor/ShaderStripping/RenderPipelineSubShaderStrippingTests.cs @@ -0,0 +1,59 @@ +using NUnit.Framework; +using UnityEditor.Shaders; +using UnityEngine; +using UnityEngine.Rendering; + +namespace UnityEditor.Rendering.Tests.ShaderStripping +{ + class RenderPipelineSubShaderStrippingTests + { + // Minimal in-memory render pipeline used to simulate a transient runtime + // GraphicsSettings.defaultRenderPipeline override, as render pipeline tests routinely do. + class InMemoryTestRenderPipelineAsset : RenderPipelineAsset + { + public const string k_ShaderTag = "RenderPipelineSubShaderStrippingTestsRP"; + public override string renderPipelineShaderTag => k_ShaderTag; + protected override RenderPipeline CreatePipeline() => null; + } + + RenderPipelineAsset m_PreviousDefaultRenderPipeline; + InMemoryTestRenderPipelineAsset m_InMemoryRenderPipeline; + + [SetUp] + public void SetUp() + { + m_PreviousDefaultRenderPipeline = GraphicsSettings.defaultRenderPipeline; + m_InMemoryRenderPipeline = ScriptableObject.CreateInstance(); + } + + [TearDown] + public void TearDown() + { + GraphicsSettings.defaultRenderPipeline = m_PreviousDefaultRenderPipeline; + if (m_InMemoryRenderPipeline != null) + ScriptableObject.DestroyImmediate(m_InMemoryRenderPipeline); + } + + // Regression guard for the RenderPipeline-tag subshader stripping reimport storm: the tag set that + // drives shader import stripping must be sourced from the PERSISTED project render pipeline + // configuration, never from the live (here runtime-overridden) GraphicsSettings.defaultRenderPipeline. + // Otherwise an in-memory render pipeline assigned at runtime would change the shader import + // dependency and reimport every RenderPipeline-tagged shader on each swap, timing out shader-heavy + // tests on CI. + [Test] + public void GetActiveRenderPipelineShaderTagsForPlatform_IgnoresRuntimeInMemoryRenderPipeline() + { + Assert.IsFalse(EditorUtility.IsPersistent(m_InMemoryRenderPipeline), + "Test precondition: the test render pipeline must be an in-memory (non-persisted) instance."); + + GraphicsSettings.defaultRenderPipeline = m_InMemoryRenderPipeline; + + string buildTargetGroupName = BuildPipeline.GetBuildTargetGroup(EditorUserBuildSettings.activeBuildTarget).ToString(); + string[] tags = RenderPipelineSubShaderStripping.GetActiveRenderPipelineShaderTagsForPlatform(buildTargetGroupName); + + if (tags != null) + CollectionAssert.DoesNotContain(tags, InMemoryTestRenderPipelineAsset.k_ShaderTag, + "The in-memory runtime render pipeline tag leaked into the persisted-derived stripping tag set."); + } + } +} diff --git a/Packages/com.unity.render-pipelines.core/Tests/Editor/ShaderStripping/RenderPipelineSubShaderStrippingTests.cs.meta b/Packages/com.unity.render-pipelines.core/Tests/Editor/ShaderStripping/RenderPipelineSubShaderStrippingTests.cs.meta new file mode 100644 index 00000000000..100b9a29fa6 --- /dev/null +++ b/Packages/com.unity.render-pipelines.core/Tests/Editor/ShaderStripping/RenderPipelineSubShaderStrippingTests.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 0983984b9a7f1374c8b4d093e6c0f513 \ No newline at end of file From 59d41fa1b8f07ff3392aaa3c4ba00df49cafc818 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Thu, 16 Jul 2026 14:45:04 +0000 Subject: [PATCH 29/52] [Port] [6000.5] Updated system requirements for VFX graph --- .../Documentation~/System-Requirements.md | 1 - 1 file changed, 1 deletion(-) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/System-Requirements.md b/Packages/com.unity.visualeffectgraph/Documentation~/System-Requirements.md index 05295cbad1e..345099c555b 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/System-Requirements.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/System-Requirements.md @@ -26,7 +26,6 @@ Visual Effect Graph is compatible with the Universal Render Pipeline (URP) and t - For both render pipelines, the minimum hardware requirements are: - Support for compute shaders. If a platform supports compute shaders, it returns `true` for [SystemInfo.supportsComputeShaders](https://docs.unity3d.com/ScriptReference/SystemInfo-supportsComputeShaders.html). - Support for Shader Storage Buffer Objects (SSBOs). If a platform supports SSBOs, it returns a value greater than 0 for [SystemInfo.maxComputeBufferInputsVertex](https://docs.unity3d.com/ScriptReference/SystemInfo-maxComputeBufferInputsVertex.html). -- The Visual Effect Graph isn't out of preview for mobile platforms. - The Visual Effect Graph does not support Open GL ES. For more information on general system requirements for the Unity Player, see [System requirements for Unity](https://docs.unity3d.com/Manual/system-requirements.html). From 8304f9fec7bb402845373e92338f7b6431060169 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Thu, 16 Jul 2026 22:21:10 +0000 Subject: [PATCH 30/52] [Port] [6000.5] Exposed serialized m_NumIterationsEnclosingSphere --- .../RenderPipeline/HDRenderPipeline.cs | 2 + .../RenderPipeline/HDRenderPipelineAsset.cs | 4 + .../2327_NumIterationsEnclosingSphere.meta | 8 + .../2327_NumIterationsEnclosingSphere.unity | 5633 +++++++++++++++++ ...27_NumIterationsEnclosingSphere.unity.meta | 7 + .../2327_NumIterationsEnclosingSphere.asset | 561 ++ ...27_NumIterationsEnclosingSphere.asset.meta | 8 + .../2327_Volume.asset | 60 + .../2327_Volume.asset.meta | 8 + .../Cube.mat | 276 + .../Cube.mat.meta | 8 + 11 files changed, 6575 insertions(+) create mode 100644 Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere.meta create mode 100644 Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere.unity create mode 100644 Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere.unity.meta create mode 100644 Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere/2327_NumIterationsEnclosingSphere.asset create mode 100644 Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere/2327_NumIterationsEnclosingSphere.asset.meta create mode 100644 Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere/2327_Volume.asset create mode 100644 Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere/2327_Volume.asset.meta create mode 100644 Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere/Cube.mat create mode 100644 Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere/Cube.mat.meta 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 60db056d68e..1d57eb06b42 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 @@ -3096,7 +3096,9 @@ out ScriptableCullingParameters cullingParams frozenCullingParamAvailable = false; } + cullingParams.conservativeEnclosingSphere = currentAsset.m_ShouldUseConservativeEnclosingSphere; + cullingParams.numIterationsEnclosingSphere = currentAsset.m_NumIterationsEnclosingSphere; LightLoopUpdateCullingParameters(ref cullingParams, hdCamera); // If we don't use environment light (like when rendering reflection probes) diff --git a/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDRenderPipelineAsset.cs b/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDRenderPipelineAsset.cs index 2fa47414308..fd73ad0e5bc 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDRenderPipelineAsset.cs +++ b/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDRenderPipelineAsset.cs @@ -26,6 +26,8 @@ public partial class HDRenderPipelineAsset : RenderPipelineAsset public override string renderPipelineShaderTag => HDRenderPipeline.k_ShaderTagName; @@ -96,6 +98,8 @@ protected override void OnValidate() { isInOnValidateCall = true; + m_NumIterationsEnclosingSphere = Mathf.Clamp(m_NumIterationsEnclosingSphere, 0, 256); + //Do not reconstruct the pipeline if we modify other assets. //OnValidate is called once at first selection of the asset. if (GraphicsSettings.currentRenderPipeline == this) diff --git a/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere.meta b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere.meta new file mode 100644 index 00000000000..d014459ab25 --- /dev/null +++ b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 24270524a9514154e832b3c026503ccd +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere.unity b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere.unity new file mode 100644 index 00000000000..7a5a9596034 --- /dev/null +++ b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere.unity @@ -0,0 +1,5633 @@ +%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: 0 + 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: 1 + 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: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 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 &20744985 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 20744986} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &20744986 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 20744985} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 48} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 119766417} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &38817058 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 38817059} + - component: {fileID: 38817062} + - component: {fileID: 38817061} + - component: {fileID: 38817060} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &38817059 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 38817058} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1751710842} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &38817060 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 38817058} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &38817061 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 38817058} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &38817062 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 38817058} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &51177120 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 51177121} + - component: {fileID: 51177124} + - component: {fileID: 51177123} + - component: {fileID: 51177122} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &51177121 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 51177120} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1673498670} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &51177122 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 51177120} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &51177123 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 51177120} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &51177124 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 51177120} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &69140481 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 69140482} + m_Layer: 0 + m_Name: Camera / Rendering + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &69140482 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 69140481} + 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: 456064596} + - {fileID: 1220012488} + - {fileID: 2113215674} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &88990690 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 88990691} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &88990691 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 88990690} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 18} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 2091792862} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &119766416 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 119766417} + - component: {fileID: 119766420} + - component: {fileID: 119766419} + - component: {fileID: 119766418} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &119766417 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 119766416} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 20744986} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &119766418 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 119766416} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &119766419 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 119766416} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &119766420 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 119766416} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &150132521 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 150132522} + - component: {fileID: 150132525} + - component: {fileID: 150132524} + - component: {fileID: 150132523} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &150132522 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 150132521} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 300777359} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &150132523 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 150132521} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &150132524 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 150132521} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &150132525 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 150132521} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &224493314 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 224493315} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &224493315 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 224493314} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 52} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1453444777} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &228281529 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 228281530} + - component: {fileID: 228281533} + - component: {fileID: 228281532} + - component: {fileID: 228281531} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &228281530 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 228281529} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1428392244} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &228281531 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 228281529} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &228281532 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 228281529} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &228281533 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 228281529} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &239415420 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 239415421} + - component: {fileID: 239415424} + - component: {fileID: 239415423} + - component: {fileID: 239415422} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &239415421 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 239415420} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 989064773} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &239415422 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 239415420} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &239415423 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 239415420} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &239415424 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 239415420} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &264109529 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 264109530} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &264109530 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 264109529} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 16} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 608823517} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &300777358 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 300777359} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &300777359 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 300777358} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 60} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 150132522} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &341159407 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 341159408} + - component: {fileID: 341159411} + - component: {fileID: 341159410} + - component: {fileID: 341159409} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &341159408 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 341159407} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1923184502} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &341159409 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 341159407} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &341159410 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 341159407} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &341159411 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 341159407} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1001 &456064594 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 69140482} + m_Modifications: + - target: {fileID: 1132393308280272, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_Name + value: HDRP_Test_Camera + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalPosition.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalPosition.z + value: -10 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 20109210616973140, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: field of view + value: 60 + objectReference: {fileID: 0} + - target: {fileID: 20109210616973140, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: far clip plane + value: 1000 + objectReference: {fileID: 0} + - target: {fileID: 20109210616973140, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: near clip plane + value: 0.3 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: dithering + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_Version + value: 9 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: xrRendering + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: antialiasing + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: clearColorMode + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: taaSharpenStrength + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: taaHistorySharpening + value: 0.35 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: volumeLayerMask.m_Bits + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_RenderingPathCustomFrameSettings.bitDatas.data1 + value: 70005818916701 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: waitFrames + value: 20 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: renderPipelineAsset + value: + objectReference: {fileID: 11400000, guid: c8d4cc62819c59249a4b572b7944a143, type: 2} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: ImageComparisonSettings.TargetWidth + value: 400 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: ImageComparisonSettings.TargetHeight + value: 400 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: ImageComparisonSettings.UseBackBuffer + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: doBeforeTest.m_PersistentCalls.m_Calls.Array.size + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: doBeforeTest.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: doBeforeTest.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 2113215673} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: doBeforeTest.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: doBeforeTest.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: ShowCascades + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: doBeforeTest.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: EnableCascadeDisplay, Assembly-CSharp + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: doBeforeTest.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_StringArgument + value: + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: doBeforeTest.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 580412863073167814, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: renderer + value: + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 580412863073167814, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + m_RemovedGameObjects: + - {fileID: 6002938546587368868, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} +--- !u!4 &456064596 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + m_PrefabInstance: {fileID: 456064594} + m_PrefabAsset: {fileID: 0} +--- !u!20 &456064597 stripped +Camera: + m_CorrespondingSourceObject: {fileID: 20109210616973140, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + m_PrefabInstance: {fileID: 456064594} + m_PrefabAsset: {fileID: 0} +--- !u!1 &462454082 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 462454083} + - component: {fileID: 462454086} + - component: {fileID: 462454085} + - component: {fileID: 462454084} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &462454083 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 462454082} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1043607995} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &462454084 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 462454082} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &462454085 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 462454082} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &462454086 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 462454082} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &570395420 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 570395421} + - component: {fileID: 570395424} + - component: {fileID: 570395423} + - component: {fileID: 570395422} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &570395421 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 570395420} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1366389718} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &570395422 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 570395420} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &570395423 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 570395420} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &570395424 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 570395420} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &608823516 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 608823517} + - component: {fileID: 608823520} + - component: {fileID: 608823519} + - component: {fileID: 608823518} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &608823517 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 608823516} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 264109530} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &608823518 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 608823516} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &608823519 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 608823516} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &608823520 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 608823516} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &632143030 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 632143031} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &632143031 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 632143030} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 40} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1569881054} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &638641849 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 638641850} + - component: {fileID: 638641853} + - component: {fileID: 638641852} + - component: {fileID: 638641851} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &638641850 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 638641849} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1160633923} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &638641851 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 638641849} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &638641852 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 638641849} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &638641853 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 638641849} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &646490827 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 646490828} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &646490828 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 646490827} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 24} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1127414515} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &679448010 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 679448011} + - component: {fileID: 679448014} + - component: {fileID: 679448013} + - component: {fileID: 679448012} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &679448011 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 679448010} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 937315857} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &679448012 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 679448010} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &679448013 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 679448010} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &679448014 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 679448010} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &751244453 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 751244454} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &751244454 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 751244453} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 4} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1764518239} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &798448436 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 798448437} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &798448437 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 798448436} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 54} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1714695377} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &815336386 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 815336387} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &815336387 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 815336386} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 44} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1436034604} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &832393438 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 832393439} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &832393439 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 832393438} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 56} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1274431266} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &937315856 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 937315857} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &937315857 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 937315856} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 8} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 679448011} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &989064772 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 989064773} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &989064773 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 989064772} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 38} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 239415421} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1016706979 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1016706983} + - component: {fileID: 1016706982} + - component: {fileID: 1016706981} + - component: {fileID: 1016706980} + m_Layer: 0 + m_Name: Plane + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!64 &1016706980 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1016706979} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 5 + m_Convex: 0 + m_CookingOptions: 30 + m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &1016706981 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1016706979} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 73c176f402d2c2f4d929aa5da7585d17, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1016706982 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1016706979} + m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &1016706983 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1016706979} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 100, y: 100, z: 100} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1227985667} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1022458992 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1022458993} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1022458993 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1022458992} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 36} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1961961045} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1038721780 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1038721781} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1038721781 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1038721780} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 6} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1674432287} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1043607994 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1043607995} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1043607995 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1043607994} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 34} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 462454083} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1047811025 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1047811026} + - component: {fileID: 1047811029} + - component: {fileID: 1047811028} + - component: {fileID: 1047811027} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1047811026 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1047811025} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1509973006} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1047811027 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1047811025} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1047811028 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1047811025} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1047811029 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1047811025} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1076233658 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1076233659} + m_Layer: 0 + m_Name: Cubes + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1076233659 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1076233658} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 5, y: 0, z: -20} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1332462551} + - {fileID: 1366389718} + - {fileID: 751244454} + - {fileID: 1038721781} + - {fileID: 937315857} + - {fileID: 1285704473} + - {fileID: 1673498670} + - {fileID: 1751710842} + - {fileID: 264109530} + - {fileID: 88990691} + - {fileID: 1160633923} + - {fileID: 1923184502} + - {fileID: 646490828} + - {fileID: 1187257051} + - {fileID: 1801574345} + - {fileID: 1936443708} + - {fileID: 1957664084} + - {fileID: 1043607995} + - {fileID: 1022458993} + - {fileID: 989064773} + - {fileID: 632143031} + - {fileID: 1236247998} + - {fileID: 815336387} + - {fileID: 1229659504} + - {fileID: 20744986} + - {fileID: 1605315652} + - {fileID: 224493315} + - {fileID: 798448437} + - {fileID: 832393439} + - {fileID: 1428392244} + - {fileID: 300777359} + - {fileID: 1509973006} + m_Father: {fileID: 1227985667} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1127414514 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1127414515} + - component: {fileID: 1127414518} + - component: {fileID: 1127414517} + - component: {fileID: 1127414516} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1127414515 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1127414514} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 646490828} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1127414516 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1127414514} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1127414517 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1127414514} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1127414518 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1127414514} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1133147054 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1133147055} + - component: {fileID: 1133147058} + - component: {fileID: 1133147057} + - component: {fileID: 1133147056} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1133147055 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1133147054} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1957664084} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1133147056 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1133147054} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1133147057 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1133147054} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1133147058 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1133147054} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1144784660 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1144784663} + - component: {fileID: 1144784662} + - component: {fileID: 1144784661} + m_Layer: 0 + m_Name: Directional Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1144784661 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1144784660} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7a68c43fe1f2a47cfa234b5eeaa98012, type: 3} + m_Name: + m_EditorClassIdentifier: + m_PointlightHDType: 0 + m_SpotLightShape: 0 + m_AreaLightShape: 0 + m_EnableSpotReflector: 0 + m_LightUnit: 2 + m_LuxAtDistance: 1 + m_Intensity: 3.1415927 + m_InnerSpotPercent: -1 + m_ShapeWidth: -1 + m_ShapeHeight: -1 + m_AspectRatio: 1 + m_ShapeRadius: -1 + m_Version: 15 + m_ObsoleteShadowResolutionTier: 1 + m_ObsoleteUseShadowQualitySettings: 0 + m_ObsoleteCustomShadowResolution: 1024 + m_ObsoleteContactShadows: 0 + m_SpotIESCutoffPercent: 100 + m_LightDimmer: 1 + m_VolumetricDimmer: 1 + m_FadeDistance: 10000 + m_VolumetricFadeDistance: 10000 + m_AffectDiffuse: 1 + m_AffectSpecular: 1 + m_NonLightmappedOnly: 0 + m_SoftnessScale: 1 + m_UseCustomSpotLightShadowCone: 0 + m_CustomSpotLightShadowCone: 30 + m_MaxSmoothness: 0.99 + m_ApplyRangeAttenuation: 1 + m_DisplayAreaLightEmissiveMesh: 0 + m_AreaLightCookie: {fileID: 0} + m_IESPoint: {fileID: 0} + m_IESSpot: {fileID: 0} + m_IncludeForRayTracing: 1 + m_IncludeForPathTracing: 1 + m_AreaLightShadowCone: 120 + m_UseScreenSpaceShadows: 0 + m_InteractsWithSky: 1 + m_AngularDiameter: 0 + diameterMultiplerMode: 0 + diameterMultiplier: 1 + diameterOverride: 0.5 + celestialBodyShadingSource: 1 + sunLightOverride: {fileID: 0} + sunColor: {r: 1, g: 1, b: 1, a: 1} + sunIntensity: 130000 + moonPhase: 0.2 + moonPhaseRotation: 0 + earthshine: 1 + flareSize: 2 + flareTint: {r: 1, g: 1, b: 1, a: 1} + flareFalloff: 4 + flareMultiplier: 1 + surfaceTexture: {fileID: 0} + surfaceTint: {r: 1, g: 1, b: 1, a: 1} + m_Distance: 150000000 + m_UseRayTracedShadows: 0 + m_NumRayTracingSamples: 4 + m_FilterTracedShadow: 1 + m_FilterSizeTraced: 16 + m_SunLightConeAngle: 0.5 + m_SemiTransparentShadow: 0 + m_ColorShadow: 1 + m_DistanceBasedFiltering: 0 + m_EvsmExponent: 15 + m_EvsmLightLeakBias: 0 + m_EvsmVarianceBias: 0.00001 + m_EvsmBlurPasses: 0 + m_LightlayersMask: 1 + m_LinkShadowLayers: 1 + m_ShadowNearPlane: 0.1 + m_BlockerSampleCount: 24 + m_FilterSampleCount: 16 + m_MinFilterSize: 0.01 + m_DirLightPCSSBlockerSampleCount: 24 + m_DirLightPCSSFilterSampleCount: 16 + m_DirLightPCSSMaxPenumbraSize: 0.56 + m_DirLightPCSSMaxSamplingDistance: 0.5 + m_DirLightPCSSMinFilterSizeTexels: 1.5 + m_DirLightPCSSMinFilterMaxAngularDiameter: 10 + m_DirLightPCSSBlockerSearchAngularDiameter: 12 + m_DirLightPCSSBlockerSamplingClumpExponent: 2 + m_KernelSize: 5 + m_LightAngle: 1 + m_MaxDepthBias: 0.001 + m_ShadowResolution: + m_Override: 1024 + m_UseOverride: 1 + m_Level: 1 + m_ShadowDimmer: 1 + m_VolumetricShadowDimmer: 1 + m_ShadowFadeDistance: 10000 + m_UseContactShadow: + m_Override: 0 + m_UseOverride: 1 + m_Level: 0 + m_RayTracedContactShadow: 0 + m_ShadowTint: {r: 0, g: 0, b: 0, a: 1} + m_PenumbraTint: 0 + m_NormalBias: 0.75 + m_SlopeBias: 0.5 + m_ShadowUpdateMode: 0 + m_AlwaysDrawDynamicShadows: 0 + m_UpdateShadowOnLightMovement: 0 + m_CachedShadowTranslationThreshold: 0.01 + m_CachedShadowAngularThreshold: 0.5 + m_BarnDoorAngle: 90 + m_BarnDoorLength: 0.05 + m_preserveCachedShadow: 0 + m_OnDemandShadowRenderOnPlacement: 1 + m_ShadowCascadeRatios: + - 0.05 + - 0.2 + - 0.3 + m_ShadowCascadeBorders: + - 0.2 + - 0.2 + - 0.2 + - 0.2 + m_ShadowAlgorithm: 0 + m_ShadowVariant: 0 + m_ShadowPrecision: 0 + useOldInspector: 0 + useVolumetric: 1 + featuresFoldout: 1 + m_AreaLightEmissiveMeshShadowCastingMode: 0 + m_AreaLightEmissiveMeshMotionVectorGenerationMode: 0 + m_AreaLightEmissiveMeshLayer: -1 +--- !u!108 &1144784662 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1144784660} + m_Enabled: 1 + serializedVersion: 13 + m_Type: 1 + m_Color: {r: 1, g: 0.9936724, b: 0.9764151, a: 1} + m_Intensity: 3.1415927 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 0 + m_CookieSize2D: {x: 0.5, y: 0.5} + m_Shadows: + m_Type: 2 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 4 + m_LightShadowCasterMode: 2 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ForceVisible: 0 + m_ShapeRadius: 0 + m_ShadowAngle: 0 + m_LightUnit: 2 + m_LuxAtDistance: 1 + m_EnableSpotReflector: 0 +--- !u!4 &1144784663 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1144784660} + serializedVersion: 2 + m_LocalRotation: {x: 0.38268343, y: -0, z: -0, w: 0.92387956} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1562456231} + m_LocalEulerAnglesHint: {x: 45, y: 0, z: 0} +--- !u!1 &1160633922 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1160633923} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1160633923 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1160633922} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 20} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 638641850} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1187257050 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1187257051} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1187257051 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1187257050} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 26} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1808479370} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1220012486 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1220012488} + - component: {fileID: 1220012487} + m_Layer: 0 + m_Name: SetupProjectionMatrix + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1220012487 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1220012486} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7ff19706ab489924ab6a2849f80a5099, type: 3} + m_Name: + m_EditorClassIdentifier: Assembly-CSharp::SetupProjectionMatrix + m_camera: {fileID: 456064597} + m_projectionMatrix: + e00: 1.779739 + e01: 0 + e02: -0.6530213 + e03: 0 + e10: 0 + e11: 3.112113 + e12: 0.1979844 + e13: 0 + e20: 0 + e21: 0 + e22: -1.000131 + e23: -0.3271114 + e30: 0 + e31: 0 + e32: -1 + e33: 0 +--- !u!4 &1220012488 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1220012486} + 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: 69140482} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1227985666 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1227985667} + m_Layer: 0 + m_Name: Geometry + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1227985667 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1227985666} + 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: 1016706983} + - {fileID: 1076233659} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1229659503 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1229659504} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1229659504 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1229659503} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 46} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1872816621} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1236247997 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1236247998} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1236247998 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1236247997} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 42} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1478388661} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1257541842 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1257541843} + - component: {fileID: 1257541846} + - component: {fileID: 1257541845} + - component: {fileID: 1257541844} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1257541843 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1257541842} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1605315652} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1257541844 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1257541842} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1257541845 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1257541842} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1257541846 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1257541842} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1274431265 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1274431266} + - component: {fileID: 1274431269} + - component: {fileID: 1274431268} + - component: {fileID: 1274431267} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1274431266 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1274431265} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 832393439} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1274431267 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1274431265} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1274431268 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1274431265} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1274431269 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1274431265} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1285704472 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1285704473} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1285704473 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1285704472} + 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: + - {fileID: 1669789734} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1332462550 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1332462551} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1332462551 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1332462550} + 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: 1537050173} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1366389717 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1366389718} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1366389718 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1366389717} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 2} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 570395421} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1379445293 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1379445295} + - component: {fileID: 1379445296} + m_Layer: 0 + m_Name: Volume + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1379445295 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1379445293} + 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: 1562456231} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1379445296 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1379445293} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 172515602e62fb746b5d573b38a5fe58, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.RenderPipelines.Core.Runtime::UnityEngine.Rendering.Volume + m_IsGlobal: 1 + priority: 0 + blendDistance: 0 + weight: 1 + sharedProfile: {fileID: 11400000, guid: c787c5a4f80464d47a8ac7e52e747c99, type: 2} +--- !u!1 &1428392243 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1428392244} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1428392244 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1428392243} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 58} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 228281530} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1436034603 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1436034604} + - component: {fileID: 1436034607} + - component: {fileID: 1436034606} + - component: {fileID: 1436034605} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1436034604 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1436034603} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 815336387} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1436034605 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1436034603} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1436034606 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1436034603} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1436034607 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1436034603} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1453444776 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1453444777} + - component: {fileID: 1453444780} + - component: {fileID: 1453444779} + - component: {fileID: 1453444778} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1453444777 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1453444776} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 224493315} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1453444778 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1453444776} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1453444779 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1453444776} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1453444780 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1453444776} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1478388660 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1478388661} + - component: {fileID: 1478388664} + - component: {fileID: 1478388663} + - component: {fileID: 1478388662} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1478388661 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1478388660} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1236247998} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1478388662 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1478388660} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1478388663 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1478388660} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1478388664 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1478388660} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1509973005 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1509973006} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1509973006 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1509973005} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 62} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1047811026} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1537050172 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1537050173} + - component: {fileID: 1537050176} + - component: {fileID: 1537050175} + - component: {fileID: 1537050174} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1537050173 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1537050172} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1332462551} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1537050174 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1537050172} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1537050175 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1537050172} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1537050176 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1537050172} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1562456230 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1562456231} + m_Layer: 0 + m_Name: Environment + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1562456231 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1562456230} + 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: 1144784663} + - {fileID: 1379445295} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1569881053 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1569881054} + - component: {fileID: 1569881057} + - component: {fileID: 1569881056} + - component: {fileID: 1569881055} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1569881054 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1569881053} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 632143031} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1569881055 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1569881053} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1569881056 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1569881053} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1569881057 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1569881053} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1605315651 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1605315652} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1605315652 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1605315651} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 50} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1257541843} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1668076539 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1668076540} + - component: {fileID: 1668076543} + - component: {fileID: 1668076542} + - component: {fileID: 1668076541} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1668076540 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1668076539} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1801574345} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1668076541 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1668076539} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1668076542 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1668076539} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1668076543 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1668076539} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1669789733 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1669789734} + - component: {fileID: 1669789737} + - component: {fileID: 1669789736} + - component: {fileID: 1669789735} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1669789734 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1669789733} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1285704473} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1669789735 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1669789733} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1669789736 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1669789733} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1669789737 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1669789733} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1673498669 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1673498670} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1673498670 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1673498669} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 12} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 51177121} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1674432286 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1674432287} + - component: {fileID: 1674432290} + - component: {fileID: 1674432289} + - component: {fileID: 1674432288} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1674432287 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1674432286} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1038721781} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1674432288 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1674432286} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1674432289 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1674432286} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1674432290 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1674432286} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1714695376 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1714695377} + - component: {fileID: 1714695380} + - component: {fileID: 1714695379} + - component: {fileID: 1714695378} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1714695377 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1714695376} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 798448437} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1714695378 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1714695376} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1714695379 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1714695376} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1714695380 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1714695376} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1751710841 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1751710842} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1751710842 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1751710841} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 14} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 38817059} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1764518238 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1764518239} + - component: {fileID: 1764518242} + - component: {fileID: 1764518241} + - component: {fileID: 1764518240} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1764518239 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1764518238} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 751244454} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1764518240 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1764518238} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1764518241 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1764518238} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1764518242 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1764518238} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1801574344 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1801574345} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1801574345 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1801574344} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 28} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1668076540} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1808479369 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1808479370} + - component: {fileID: 1808479373} + - component: {fileID: 1808479372} + - component: {fileID: 1808479371} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1808479370 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1808479369} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1187257051} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1808479371 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1808479369} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1808479372 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1808479369} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1808479373 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1808479369} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1817021673 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1817021674} + - component: {fileID: 1817021677} + - component: {fileID: 1817021676} + - component: {fileID: 1817021675} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1817021674 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1817021673} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1936443708} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1817021675 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1817021673} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1817021676 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1817021673} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1817021677 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1817021673} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1872816620 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1872816621} + - component: {fileID: 1872816624} + - component: {fileID: 1872816623} + - component: {fileID: 1872816622} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1872816621 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1872816620} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1229659504} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1872816622 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1872816620} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1872816623 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1872816620} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1872816624 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1872816620} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1923184501 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1923184502} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1923184502 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1923184501} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 22} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 341159408} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1936443707 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1936443708} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1936443708 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1936443707} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 30} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1817021674} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1957664083 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1957664084} + m_Layer: 0 + m_Name: Cube(Clone) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1957664084 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1957664083} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 32} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1133147055} + m_Father: {fileID: 1076233659} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1961961044 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1961961045} + - component: {fileID: 1961961048} + - component: {fileID: 1961961047} + - component: {fileID: 1961961046} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1961961045 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1961961044} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1022458993} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1961961046 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1961961044} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1961961047 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1961961044} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1961961048 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1961961044} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &2013410473 +GameObject: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2013410475} + - component: {fileID: 2013410474} + m_Layer: 0 + m_Name: StaticLightingSky + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &2013410474 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2013410473} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 441482e8936e35048a1dffac814e3ef8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Profile: {fileID: 11400000, guid: 8ba92e2dd7f884a0f88b98fa2d235fe7, type: 2} + m_StaticLightingSkyUniqueID: 0 + m_StaticLightingCloudsUniqueID: 0 + m_StaticLightingVolumetricClouds: 0 + bounces: 1 +--- !u!4 &2013410475 +Transform: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2013410473} + 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 &2091792861 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2091792862} + - component: {fileID: 2091792865} + - component: {fileID: 2091792864} + - component: {fileID: 2091792863} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2091792862 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2091792861} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 88990691} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &2091792863 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2091792861} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &2091792864 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2091792861} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a0db68e08b1cc4446b0afb1290fdec75, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &2091792865 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2091792861} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &2113215672 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2113215674} + - component: {fileID: 2113215673} + m_Layer: 0 + m_Name: DisplayCascadesScript + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &2113215673 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2113215672} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5bbca06831abb6248aaa7bb2d8515678, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!4 &2113215674 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2113215672} + 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: 69140482} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 2013410475} + - {fileID: 1227985667} + - {fileID: 1562456231} + - {fileID: 69140482} diff --git a/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere.unity.meta b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere.unity.meta new file mode 100644 index 00000000000..035a033fda8 --- /dev/null +++ b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 5292ce5e9013b3743b620909294d4488 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere/2327_NumIterationsEnclosingSphere.asset b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere/2327_NumIterationsEnclosingSphere.asset new file mode 100644 index 00000000000..515982cd42e --- /dev/null +++ b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere/2327_NumIterationsEnclosingSphere.asset @@ -0,0 +1,561 @@ +%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: 2327_NumIterationsEnclosingSphere + m_EditorClassIdentifier: Unity.RenderPipelines.HighDefinition.Runtime::UnityEngine.Rendering.HighDefinition.HDRenderPipelineAsset + m_Version: 26 + 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: 0 + data2: 0 + lodBias: 0 + lodBiasMode: 0 + lodBiasQualityLevel: 0 + maximumLODLevel: 0 + maximumLODLevelMode: 0 + maximumLODLevelQualityLevel: 0 + sssQualityMode: 0 + sssQualityLevel: 0 + sssCustomSampleBudget: 0 + sssCustomDownsampleSteps: 0 + msaaMode: 0 + materialQuality: 0 + m_ObsoleteBakedOrCustomReflectionFrameSettingsMovedToDefaultSettings: + bitDatas: + data1: 0 + data2: 0 + lodBias: 0 + lodBiasMode: 0 + lodBiasQualityLevel: 0 + maximumLODLevel: 0 + maximumLODLevelMode: 0 + maximumLODLevelQualityLevel: 0 + sssQualityMode: 0 + sssQualityLevel: 0 + sssCustomSampleBudget: 0 + sssCustomDownsampleSteps: 0 + msaaMode: 0 + materialQuality: 0 + m_ObsoleteRealtimeReflectionFrameSettingsMovedToDefaultSettings: + bitDatas: + data1: 0 + data2: 0 + lodBias: 0 + lodBiasMode: 0 + lodBiasQualityLevel: 0 + maximumLODLevel: 0 + maximumLODLevelMode: 0 + maximumLODLevelQualityLevel: 0 + sssQualityMode: 0 + sssQualityLevel: 0 + sssCustomSampleBudget: 0 + sssCustomDownsampleSteps: 0 + msaaMode: 0 + materialQuality: 0 + m_ObsoleteBeforeTransparentCustomPostProcesses: [] + m_ObsoleteBeforePostProcessCustomPostProcesses: [] + m_ObsoleteAfterPostProcessCustomPostProcesses: [] + m_ObsoleteBeforeTAACustomPostProcesses: [] + m_ObsoleteShaderVariantLogLevel: 0 + m_ObsoleteLensAttenuation: 0 + m_ObsoleteDiffusionProfileSettingsList: [] + m_PrefilterUseLegacyLightmaps: 0 + m_PrefilterUseLightmapBicubicSampling: 0 + m_ShouldUseConservativeEnclosingSphere: 1 + m_NumIterationsEnclosingSphere: 64 + m_RenderPipelineSettings: + supportShadowMask: 1 + supportSSR: 0 + supportSSRTransparent: 0 + supportSSAO: 1 + supportSSGI: 0 + supportSubsurfaceScattering: 1 + subsurfaceScatteringAttenuation: 1 + sssSampleBudget: + m_Values: 140000002800000050000000 + m_SchemaId: + m_Id: With3Levels + sssDownsampleSteps: + m_Values: 000000000000000000000000 + m_SchemaId: + m_Id: With3Levels + supportVolumetrics: 1 + supportVolumetricClouds: 0 + supportLightLayers: 0 + renderingLayerMaskBuffer: 0 + supportWater: 0 + waterSimulationResolution: 128 + supportWaterExclusion: 1 + supportWaterHorizontalDeformation: 0 + supportWaterDecals: 1 + waterDecalAtlasSize: 1024 + maximumWaterDecalCount: 48 + waterScriptInteractionsMode: 0 + waterFullCPUSimulation: 0 + waterCausticsMeshResolution: 256 + supportComputeThickness: 0 + computeThicknessResolution: 1 + computeThicknessLayerMask: + serializedVersion: 2 + m_Bits: 0 + supportDistortion: 1 + supportTransparentBackface: 1 + supportTransparentDepthPrepass: 1 + supportTransparentDepthPostpass: 1 + colorBufferFormat: 74 + depthBufferFormat: 0 + supportCustomPass: 1 + supportVariableRateShading: 1 + customBufferFormat: 8 + supportedLitShaderMode: 2 + planarReflectionResolution: + m_Values: 000100000004000000080000 + m_SchemaId: + m_Id: With3Levels + cubeReflectionResolution: + m_Values: 800000000001000000020000 + m_SchemaId: + m_Id: With3Levels + supportDecals: 1 + supportDecalLayers: 0 + supportSurfaceGradient: 1 + decalNormalBufferHP: 0 + supportHighQualityLineRendering: 0 + highQualityLineRenderingMemoryBudget: 128 + msaaSampleCount: 1 + supportMotionVectors: 1 + supportScreenSpaceLensFlare: 1 + supportDataDrivenLensFlare: 1 + supportDitheringCrossFade: 0 + supportRuntimeAOVAPI: 0 + supportTerrainHole: 0 + lightProbeSystem: 1 + oldLightProbeSystem: 0 + probeVolumeMemoryBudget: 1024 + supportProbeVolumeGPUStreaming: 0 + supportProbeVolumeDiskStreaming: 0 + probeVolumeSHBands: 1 + supportProbeVolumeScenarios: 0 + supportProbeVolumeScenarioBlending: 1 + probeVolumeBlendingMemoryBudget: 128 + supportRayTracing: 0 + supportVFXRayTracing: 0 + supportedRayTracingMode: 3 + lightLoopSettings: + cookieAtlasSize: 2048 + cookieFormat: 74 + cookieAtlasLastValidMip: 0 + cookieTexArraySize: 1 + planarReflectionAtlasSize: 0 + reflectionProbeCacheSize: 0 + reflectionCubemapSize: 0 + maxEnvLightsOnScreen: 0 + 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: 32 + maxPlanarReflectionOnScreen: 8 + maxDecalsOnScreen: 512 + maxLightsPerClusterCell: 8 + maxLocalVolumetricFogSize: 0 + maxLocalVolumetricFogOnScreen: 256 + hdShadowInitParams: + maxShadowRequests: 128 + directionalShadowsDepthBits: 32 + punctualShadowFilteringQuality: 1 + directionalShadowFilteringQuality: 1 + areaShadowFilteringQuality: 0 + punctualLightShadowAtlas: + shadowAtlasResolution: 4096 + shadowAtlasDepthBits: 32 + useDynamicViewportRescale: 1 + areaLightShadowAtlas: + shadowAtlasResolution: 4096 + shadowAtlasDepthBits: 32 + useDynamicViewportRescale: 1 + cachedPunctualLightShadowAtlas: 2048 + cachedAreaLightShadowAtlas: 1024 + allowDirectionalMixedCachedShadows: 0 + shadowResolutionDirectional: + m_Values: 00010000000200000004000000080000 + m_SchemaId: + m_Id: With4Levels + shadowResolutionPunctual: + m_Values: 00010000000200000004000000080000 + m_SchemaId: + m_Id: With4Levels + shadowResolutionArea: + m_Values: 00010000000200000004000000080000 + m_SchemaId: + m_Id: With4Levels + maxDirectionalShadowMapResolution: 2048 + maxPunctualShadowMapResolution: 2048 + maxAreaShadowMapResolution: 2048 + supportScreenSpaceShadows: 0 + supportContactShadows: 1 + maxScreenSpaceShadowSlots: 4 + screenSpaceShadowBufferFormat: 48 + decalSettings: + drawDistance: 1000 + atlasWidth: 4096 + atlasHeight: 4096 + transparentTextureResolution: + m_Values: 000100000002000000040000 + m_SchemaId: + m_Id: With3Levels + perChannelMask: 0 + postProcessSettings: + m_LutSize: 32 + lutFormat: 48 + bufferFormat: 74 + dynamicResolutionSettings: + enabled: 0 + useMipBias: 0 + advancedUpscalersByPriority: + advancedUpscalerNames: + - STP + DLSSPerfQualitySetting: 0 + DLSSInjectionPoint: 0 + TAAUInjectionPoint: 0 + STPInjectionPoint: 0 + defaultInjectionPoint: 2 + DLSSUseOptimalSettings: 1 + DLSSSharpness: 0.5 + DLSSRenderPresetForQuality: 0 + DLSSRenderPresetForBalanced: 0 + DLSSRenderPresetForPerformance: 0 + DLSSRenderPresetForUltraPerformance: 0 + DLSSRenderPresetForDLAA: 0 + FSR2EnableSharpness: 0 + FSR2Sharpness: 0 + FSR2UseOptimalSettings: 0 + FSR2QualitySetting: 0 + FSR2InjectionPoint: 0 + fsrOverrideSharpness: 0 + fsrSharpness: 0.92 + maxPercentage: 100 + minPercentage: 100 + dynResType: 1 + upsampleFilter: 1 + forceResolution: 0 + forcedPercentage: 100 + 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: 000001 + m_SchemaId: + m_Id: With3Levels + 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: + - 1 + - 1 + - 1 + 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: + m_ObsoleteLightLayerName1: + m_ObsoleteLightLayerName2: + m_ObsoleteLightLayerName3: + m_ObsoleteLightLayerName4: + m_ObsoleteLightLayerName5: + m_ObsoleteLightLayerName6: + m_ObsoleteLightLayerName7: + 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: 0} + m_VolumeProfile: {fileID: 0} + virtualTexturingSettings: + streamingCpuCacheSizeInMegaBytes: 256 + streamingMipPreloadTexturesPerFrame: 0 + streamingPreloadMipCount: 1 + streamingGpuCacheSettings: + - format: 0 + sizeInMegaBytes: 128 + m_CompositorCustomVolumeComponentsList: + m_InjectionPoint: 1 + m_CustomPostProcessTypesAsString: [] diff --git a/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere/2327_NumIterationsEnclosingSphere.asset.meta b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere/2327_NumIterationsEnclosingSphere.asset.meta new file mode 100644 index 00000000000..4ed787010d5 --- /dev/null +++ b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere/2327_NumIterationsEnclosingSphere.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c8d4cc62819c59249a4b572b7944a143 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere/2327_Volume.asset b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere/2327_Volume.asset new file mode 100644 index 00000000000..8512bd9a87c --- /dev/null +++ b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere/2327_Volume.asset @@ -0,0 +1,60 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &-1061804307205530902 +MonoBehaviour: + m_ObjectHideFlags: 3 + 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: 7ddcec8a8eb2d684d833ac8f5d26aebd, type: 3} + m_Name: HDShadowSettings + m_EditorClassIdentifier: + active: 1 + interCascadeBorders: 1 + maxShadowDistance: + m_OverrideState: 1 + m_Value: 200 + directionalTransmissionMultiplier: + m_OverrideState: 0 + m_Value: 1 + cascadeShadowSplitCount: + m_OverrideState: 1 + m_Value: 3 + cascadeShadowSplit0: + m_OverrideState: 1 + m_Value: 0.05 + cascadeShadowSplit1: + m_OverrideState: 1 + m_Value: 0.15 + cascadeShadowSplit2: + m_OverrideState: 0 + m_Value: 0.32000002 + cascadeShadowBorder0: + m_OverrideState: 0 + m_Value: 0 + cascadeShadowBorder1: + m_OverrideState: 0 + m_Value: 0 + cascadeShadowBorder2: + m_OverrideState: 0 + m_Value: 0 + cascadeShadowBorder3: + m_OverrideState: 0 + m_Value: 0.5971643 +--- !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: d7fd9488000d3734a9e00ee676215985, type: 3} + m_Name: 2327_Volume + m_EditorClassIdentifier: + components: + - {fileID: -1061804307205530902} diff --git a/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere/2327_Volume.asset.meta b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere/2327_Volume.asset.meta new file mode 100644 index 00000000000..bd80d98d774 --- /dev/null +++ b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere/2327_Volume.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c787c5a4f80464d47a8ac7e52e747c99 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere/Cube.mat b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere/Cube.mat new file mode 100644 index 00000000000..2e3578fa3e4 --- /dev/null +++ b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere/Cube.mat @@ -0,0 +1,276 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &-2314307006900840880 +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: da692e001514ec24dbc4cca1949ff7e8, type: 3} + m_Name: + m_EditorClassIdentifier: + version: 13 + hdPluginSubTargetMaterialVersions: + m_Keys: [] + m_Values: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Cube + m_Shader: {fileID: 4800000, guid: 6e4ae4064600d784cac1e41a9e6f2e59, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _DISABLE_SSR_TRANSPARENT + - _NORMALMAP_TANGENT_SPACE + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: 2225 + stringTagMap: {} + disabledShaderPasses: + - TransparentDepthPrepass + - TransparentDepthPostpass + - TransparentBackface + - RayTracingPrepass + - MOTIONVECTORS + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _AnisotropyMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _BaseColorMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _BentNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _BentNormalMapOS: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _CoatMaskMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissiveColorMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _HeightMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _IridescenceMaskMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _IridescenceThicknessMap: + 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} + - _MaskMap: + 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} + - _NormalMapOS: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _SpecularColorMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _SubsurfaceMaskMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _TangentMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _TangentMapOS: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ThicknessMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _TransmissionMaskMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _TransmittanceColorMap: + 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: + - _AORemapMax: 1 + - _AORemapMin: 0 + - _ATDistance: 1 + - _AddPrecomputedVelocity: 0 + - _AlbedoAffectEmissive: 0 + - _AlphaCutoff: 0.5 + - _AlphaCutoffEnable: 0 + - _AlphaCutoffPostpass: 0.5 + - _AlphaCutoffPrepass: 0.5 + - _AlphaCutoffShadow: 0.5 + - _AlphaDstBlend: 0 + - _AlphaRemapMax: 1 + - _AlphaRemapMin: 0 + - _AlphaSrcBlend: 1 + - _Anisotropy: 0 + - _BlendMode: 0 + - _CoatMask: 0 + - _CullMode: 2 + - _CullModeForward: 2 + - _Cutoff: 0.5 + - _DepthOffsetEnable: 0 + - _DetailAlbedoScale: 1 + - _DetailNormalScale: 1 + - _DetailSmoothnessScale: 1 + - _DiffusionProfile: 0 + - _DiffusionProfileHash: 0 + - _DisplacementLockObjectScale: 1 + - _DisplacementLockTilingScale: 1 + - _DisplacementMode: 0 + - _DoubleSidedEnable: 0 + - _DoubleSidedGIMode: 0 + - _DoubleSidedNormalMode: 1 + - _DstBlend: 0 + - _EmissiveColorMode: 1 + - _EmissiveExposureWeight: 1 + - _EmissiveIntensity: 1 + - _EmissiveIntensityUnit: 0 + - _EnableBlendModePreserveSpecularLighting: 1 + - _EnableFogOnTransparent: 1 + - _EnableGeometricSpecularAA: 0 + - _EnergyConservingSpecularColor: 1 + - _HeightAmplitude: 0.02 + - _HeightCenter: 0.5 + - _HeightMapParametrization: 0 + - _HeightMax: 1 + - _HeightMin: -1 + - _HeightOffset: 0 + - _HeightPoMAmplitude: 2 + - _HeightTessAmplitude: 2 + - _HeightTessCenter: 0.5 + - _InvTilingScale: 1 + - _Ior: 1.5 + - _IridescenceMask: 1 + - _IridescenceThickness: 1 + - _LinkDetailsWithBase: 1 + - _MaterialID: 1 + - _Metallic: 0 + - _MetallicRemapMax: 1 + - _MetallicRemapMin: 0 + - _NormalMapSpace: 0 + - _NormalScale: 1 + - _ObjectSpaceUVMapping: 0 + - _ObjectSpaceUVMappingEmissive: 0 + - _OpaqueCullMode: 2 + - _PPDLodThreshold: 5 + - _PPDMaxSamples: 15 + - _PPDMinSamples: 5 + - _PPDPrimitiveLength: 1 + - _PPDPrimitiveWidth: 1 + - _RayTracing: 0 + - _ReceivesSSR: 1 + - _ReceivesSSRTransparent: 0 + - _RefractionModel: 0 + - _Smoothness: 0.5 + - _SmoothnessRemapMax: 1 + - _SmoothnessRemapMin: 0 + - _SpecularAAScreenSpaceVariance: 0.1 + - _SpecularAAThreshold: 0.2 + - _SpecularOcclusionMode: 1 + - _SrcBlend: 1 + - _StencilRef: 0 + - _StencilRefDepth: 8 + - _StencilRefGBuffer: 10 + - _StencilRefMV: 40 + - _StencilWriteMask: 6 + - _StencilWriteMaskDepth: 9 + - _StencilWriteMaskGBuffer: 15 + - _StencilWriteMaskMV: 41 + - _SubsurfaceMask: 1 + - _SupportDecals: 1 + - _SurfaceType: 0 + - _TexWorldScale: 1 + - _TexWorldScaleEmissive: 1 + - _Thickness: 1 + - _TransmissionEnable: 1 + - _TransmissionMask: 1 + - _TransparentBackfaceEnable: 0 + - _TransparentCullMode: 2 + - _TransparentDepthPostpassEnable: 0 + - _TransparentDepthPrepassEnable: 0 + - _TransparentSortPriority: 0 + - _TransparentWritingMotionVec: 0 + - _TransparentZWrite: 0 + - _UVBase: 0 + - _UVDetail: 0 + - _UVEmissive: 0 + - _UseEmissiveIntensity: 0 + - _UseShadowThreshold: 0 + - _ZTestDepthEqualForOpaque: 3 + - _ZTestGBuffer: 4 + - _ZTestTransparent: 4 + - _ZWrite: 1 + m_Colors: + - _BaseColor: {r: 0.41585082, g: 0.8396226, b: 0.42451236, a: 1} + - _BaseColorMap_MipInfo: {r: 0, g: 0, b: 0, a: 0} + - _Color: {r: 0.4158508, g: 0.8396226, b: 0.42451233, a: 1} + - _DiffusionProfileAsset: {r: 0, g: 0, b: 0, a: 0} + - _DoubleSidedConstants: {r: 1, g: 1, b: -1, a: 0} + - _EmissionColor: {r: 1, g: 1, b: 1, a: 1} + - _EmissiveColor: {r: 0, g: 0, b: 0, a: 1} + - _EmissiveColorLDR: {r: 0, g: 0, b: 0, a: 1} + - _InvPrimScale: {r: 1, g: 1, b: 0, a: 0} + - _IridescenceThicknessRemap: {r: 0, g: 1, b: 0, a: 0} + - _SpecularColor: {r: 1, g: 1, b: 1, a: 1} + - _ThicknessRemap: {r: 0, g: 1, b: 0, a: 0} + - _TransmittanceColor: {r: 1, g: 1, b: 1, a: 1} + - _UVDetailsMappingMask: {r: 1, g: 0, b: 0, a: 0} + - _UVMappingMask: {r: 1, g: 0, b: 0, a: 0} + - _UVMappingMaskEmissive: {r: 1, g: 0, b: 0, a: 0} + m_BuildTextureStacks: [] diff --git a/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere/Cube.mat.meta b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere/Cube.mat.meta new file mode 100644 index 00000000000..21b340e71d7 --- /dev/null +++ b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/2x_Lighting/2327_NumIterationsEnclosingSphere/Cube.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8b0adad419720ce4089b0f7376c32f1e +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: From 0a299c07afba75db3e8bab7b76ebae81fe224eb8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20V=C3=A1zquez=20Mart=C3=ADnez?= Date: Thu, 16 Jul 2026 22:21:11 +0000 Subject: [PATCH 31/52] [Port][6000.5] UUM-143210 - Rendering Debugger - GPU Resident Drawer was resetting the debug data. --- .../Editor/Debugging/DebugWindow.cs | 66 +++++++++---------- .../ProbeVolume/ProbeVolumeLightingTab.cs | 2 +- .../Debugging/DebugDisplaySettingsUI.cs | 22 +++++-- .../Debugging/DebugDisplaySettingsVolumes.cs | 2 +- .../Runtime/Debugging/DebugManager.cs | 63 ++++-------------- .../Runtime/Debugging/RuntimeDebugWindow.cs | 42 +++++++++--- .../Runtime/Deprecated.cs | 56 ++++++++++++++++ .../Debug/DebugDisplayGPUResidentDrawer.cs | 12 ++-- .../Editor/RenderPipeline/HDEditorUtils.cs | 2 +- .../RenderPipeline/HDRenderPipeline.cs | 2 +- .../Debug/DebugDisplaySettingsCommon.cs | 2 +- .../Runtime/UniversalRenderPipeline.cs | 2 +- 12 files changed, 159 insertions(+), 114 deletions(-) diff --git a/Packages/com.unity.render-pipelines.core/Editor/Debugging/DebugWindow.cs b/Packages/com.unity.render-pipelines.core/Editor/Debugging/DebugWindow.cs index 506245e32a4..8cda0c05120 100644 --- a/Packages/com.unity.render-pipelines.core/Editor/Debugging/DebugWindow.cs +++ b/Packages/com.unity.render-pipelines.core/Editor/Debugging/DebugWindow.cs @@ -76,31 +76,26 @@ DebugUI.Panel selectedPanel VisualElement m_LeftPaneElement; VisualElement m_RightPaneElement; - const string k_UssCommon = "Packages/com.unity.render-pipelines.core/Runtime/DEbugging/Runtime UI Resources/DebugWindowCommon.uss"; + const string k_UssCommon = "Packages/com.unity.render-pipelines.core/Runtime/Debugging/Runtime UI Resources/DebugWindowCommon.uss"; const string k_Uss = "Packages/com.unity.render-pipelines.core/Editor/Debugging/DebugWindow.uss"; const string k_Uxml = "Packages/com.unity.render-pipelines.core/Editor/Debugging/DebugWindow.uxml"; - bool m_IsDirty; - - Vector2 m_PanelScroll; - Vector2 m_ContentScroll; - void OnEnable() { DebugManager.instance.displayEditorUI = true; - DebugManager.instance.refreshEditorRequested = false; - hideFlags = HideFlags.HideAndDontSave; autoRepaintOnSceneChange = true; + DebugManager.instance.onSetDirty += RequestRebuild; + DebugManager.instance.onRecreateDebugUI += RequestRebuild; + DebugManager.instance.onPanelSelectionRequested += SetSelectedPanel; + if (m_WidgetStates == null || !AreWidgetStatesValid()) m_WidgetStates = new WidgetStateDictionary(); if (s_WidgetStateMap == null || s_TypeMapDirty) RebuildTypeMaps(); - DebugManager.instance.onSetDirty += MarkDirty; - GraphicsToolLifetimeAnalytic.WindowOpened(); HookLegacyWidgetStateHandlingCallbacks(); @@ -160,6 +155,15 @@ static void SendWidgetValueChangedAnalytic(string queryPath, T previousValue, GraphicsToolUsageAnalytic.ActionPerformed("Widget Value Changed", analytic.ToNestedColumn()); } + private void OnDisable() + { + DebugManager.instance.onSetDirty -= RequestRebuild; + DebugManager.instance.onRecreateDebugUI -= RequestRebuild; + DebugManager.instance.onPanelSelectionRequested -= SetSelectedPanel; + + GraphicsToolLifetimeAnalytic.WindowClosed(); + } + // Note: this won't get called if the window is opened when the editor itself is closed void OnDestroy() { @@ -172,42 +176,22 @@ void OnDestroy() if (debugWindows.Length == 0) DebugManager.instance.displayEditorUI = false; }; - - DebugManager.instance.onSetDirty -= MarkDirty; - + DestroyWidgetStates(); } - private void OnDisable() - { - GraphicsToolLifetimeAnalytic.WindowClosed(); - } + bool m_NeedsRebuild; - void MarkDirty() + void RequestRebuild() { - m_IsDirty = true; + m_NeedsRebuild = true; } void Update() { - // If the render pipeline asset has been reloaded we force-refresh widget states in case - // some debug values need to be refresh/recreated as well (e.g. frame settings on HD) - if (DebugManager.instance.refreshEditorRequested) - { - ReloadWidgetStates(); - m_IsDirty = true; - DebugManager.instance.refreshEditorRequested = false; - } - - string requestedPanel = DebugManager.instance.GetRequestedEditorWindowPanel(); - if (requestedPanel != null) - { - SetSelectedPanel(requestedPanel); - } - - if (m_IsDirty) + if (m_NeedsRebuild) { - m_IsDirty = false; + m_NeedsRebuild = false; RecreateGUI(); } } @@ -293,6 +277,8 @@ private void RecreateGUI() BuildSearchCache(); InitializeSearchField(); + + m_NeedsRebuild = false; } void ResetClicked() @@ -308,6 +294,14 @@ void ResetClicked() if (string.IsNullOrEmpty(panelName)) return; + // UI elements may not be initialized yet if this is called before RecreateGUI + if (m_LeftPaneElement == null || m_RightPaneElement == null) + { + // Just update the selected panel name - RecreateGUI will apply it when it runs + m_SelectedPanelName = panelName; + return; + } + if (selectedPanel != null) { m_LeftPaneElement.Q(name: $"{selectedPanel.displayName}_Tab")?.RemoveFromClassList("selected"); diff --git a/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeVolumeLightingTab.cs b/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeVolumeLightingTab.cs index b910ca7178b..f3ef3cf3662 100644 --- a/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeVolumeLightingTab.cs +++ b/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeVolumeLightingTab.cs @@ -296,7 +296,7 @@ internal static void OpenProbeVolumeDebugPanel(object userData, string[] options var debugWindow = EditorWindow.GetWindow(); debugWindow.titleContent = DebugWindow.s_TitleContent; debugWindow.Show(); - DebugManager.instance.RequestEditorWindowPanel(ProbeReferenceVolume.k_DebugPanelName); + DebugManager.instance.RequestPanelSelection(ProbeReferenceVolume.k_DebugPanelName); #endif } diff --git a/Packages/com.unity.render-pipelines.core/Runtime/Debugging/DebugDisplaySettingsUI.cs b/Packages/com.unity.render-pipelines.core/Runtime/Debugging/DebugDisplaySettingsUI.cs index 6216867ad25..aaeb3e793fb 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/Debugging/DebugDisplaySettingsUI.cs +++ b/Packages/com.unity.render-pipelines.core/Runtime/Debugging/DebugDisplaySettingsUI.cs @@ -18,14 +18,21 @@ private void Reset() if (m_Settings != null) { m_Settings.Reset(); - - // TODO: Tear the UI down and re-create it for now - this is horrible, so reset it instead. - UnregisterDebug(); - RegisterDebug(m_Settings); - DebugManager.instance.RefreshEditor(); + ReregisterDebugPanels(); } } + /// + /// Unregisters and re-registers all DebugUI panels associated with the current . + /// This effectively rebuilds the debug panel hierarchy without touching the Rendering Debugger window state itself. + /// + void ReregisterDebugPanels() + { + // TODO: Tear the UI down and re-create it for now - this is horrible, so reset it instead. + UnregisterDebug(); + RegisterDebug(m_Settings); + } + /// /// Register a display for the UI /// @@ -33,6 +40,7 @@ private void Reset() public void RegisterDebug(IDebugDisplaySettings settings) { DebugManager.instance.RegisterData(this); + DebugManager.instance.onRecreateDebugUI += ReregisterDebugPanels; m_Settings = settings; m_Settings.Add(new DebugDisplaySettingsRenderGraph()); @@ -64,6 +72,7 @@ internal void InitializeDebugUI() displayName: disposableSettingsPanel.PanelName, createIfNull: true, groupIndex: (disposableSettingsPanel is DebugDisplaySettingsPanel debugDisplaySettingsPanel) ? debugDisplaySettingsPanel.Order : 0); + #if UNITY_EDITOR if (DocumentationUtils.TryGetHelpURL(disposableSettingsPanel.GetType(), out var documentationUrl)) panel.documentationUrl = documentationUrl; @@ -73,6 +82,7 @@ internal void InitializeDebugUI() panel.flags = disposableSettingsPanel.Flags; panels.Add(disposableSettingsPanel); + panelChildren.Add(panelWidgets); }; @@ -99,6 +109,7 @@ public void UnregisterDebug() DebugUI.Widget[] panelWidgets = disposableSettingsPanel.Widgets; string panelId = disposableSettingsPanel.PanelName; DebugUI.Panel panel = debugManager.GetPanel(panelId, true); + ObservableList panelChildren = panel.children; disposableSettingsPanel.Dispose(); @@ -109,6 +120,7 @@ public void UnregisterDebug() } debugManager.UnregisterData(this); + debugManager.onRecreateDebugUI -= ReregisterDebugPanels; DebugManager.windowStateChanged -= DebugUIOpened; } diff --git a/Packages/com.unity.render-pipelines.core/Runtime/Debugging/DebugDisplaySettingsVolumes.cs b/Packages/com.unity.render-pipelines.core/Runtime/Debugging/DebugDisplaySettingsVolumes.cs index 855c3b3c54f..89636d1723c 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/Debugging/DebugDisplaySettingsVolumes.cs +++ b/Packages/com.unity.render-pipelines.core/Runtime/Debugging/DebugDisplaySettingsVolumes.cs @@ -291,7 +291,7 @@ internal static void OpenInRenderingDebugger(VolumeComponent volumeComponent = n if (panel == null) return; - DebugManager.instance.RequestEditorWindowPanel(k_PanelTitle); + DebugManager.instance.RequestPanelSelection(k_PanelTitle); // Try to select the given volume component in the component selector drop down if (volumeComponent != null && diff --git a/Packages/com.unity.render-pipelines.core/Runtime/Debugging/DebugManager.cs b/Packages/com.unity.render-pipelines.core/Runtime/Debugging/DebugManager.cs index da39f05dd35..0799b9f94d1 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/Debugging/DebugManager.cs +++ b/Packages/com.unity.render-pipelines.core/Runtime/Debugging/DebugManager.cs @@ -139,9 +139,14 @@ internal void ForEachWidget(Action action) event Action resetData; /// - /// Force an editor request. + /// Event invoked when debug UI needs to be recreated (panels torn down and rebuilt). /// - public bool refreshEditorRequested; + internal event Action onRecreateDebugUI; + + /// + /// Event invoked when a panel selection is requested. + /// + internal event Action onPanelSelectionRequested; string m_RequestedPanel; @@ -178,11 +183,13 @@ public bool isAnyDebugUIActive } /// - /// Refresh the debug window. + /// Recreates the debug UI for all panels. Use this when the panel structure needs to be rebuilt + /// (e.g., when widgets need to be added/removed dynamically based on feature availability). + /// For simple value refreshes, the UI automatically updates through widget getters. /// - public void RefreshEditor() + public void RecreateDebugUI() { - refreshEditorRequested = true; + onRecreateDebugUI?.Invoke(); } /// @@ -195,18 +202,6 @@ public void Reset() resetData?.Invoke(); } - /// - /// Request the runtime debug UI be redrawn on the next update. - /// - [Obsolete("This method is obsolete. #from(6000.5)")] - public void ReDrawOnScreenDebug() - { -#if ENABLE_RENDERING_DEBUGGER_UI - if (displayRuntimeUI) - m_RuntimeDebugWindow?.RequestRecreateGUI(); -#endif - } - /// /// Register debug data. /// @@ -297,18 +292,6 @@ public int PanelIndex([DisallowNull] string displayName) return -1; } - - /// - /// Returns the panel display name - /// - /// The panelIndex for the panel to get the name - /// The display name of the panel, or empty string otherwise - [Obsolete("Method is obsolete. Use PanelDisplayName instead. #from(6000.4) (UnityUpgradable) -> PanelDisplayName", true)] - public string PanelDiplayName(int panelIndex) - { - return PanelDisplayName(panelIndex); - } - /// /// Returns the panel display name /// @@ -322,27 +305,16 @@ public string PanelDisplayName(int panelIndex) return m_Panels[panelIndex].displayName; } - /// - /// Request DebugWindow to open the specified panel. - /// - /// Index of the debug window panel to activate. - [Obsolete("Use RequestEditorWindowPanelName instead. #from(6000.5)")] - public void RequestEditorWindowPanelIndex(int index) - { - if (m_Panels[index] != null) - RequestEditorWindowPanel(m_Panels[index].displayName); - } - /// /// Request DebugWindow to open the specified panel. /// /// Name of window panel to activate. - public void RequestEditorWindowPanel(string panelName) + public void RequestPanelSelection(string panelName) { int panelIndex = FindPanelIndex(panelName); if (panelIndex != -1) { - m_RequestedPanel = panelName; + onPanelSelectionRequested?.Invoke(panelName); } else { @@ -350,13 +322,6 @@ public void RequestEditorWindowPanel(string panelName) } } - internal string GetRequestedEditorWindowPanel() - { - string requestedPanel = m_RequestedPanel; - m_RequestedPanel = null; - return requestedPanel; - } - // TODO: Optimally we should use a query path here instead of a display name /// /// Returns a debug panel. diff --git a/Packages/com.unity.render-pipelines.core/Runtime/Debugging/RuntimeDebugWindow.cs b/Packages/com.unity.render-pipelines.core/Runtime/Debugging/RuntimeDebugWindow.cs index eaa9cffc27a..170ed11cff4 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/Debugging/RuntimeDebugWindow.cs +++ b/Packages/com.unity.render-pipelines.core/Runtime/Debugging/RuntimeDebugWindow.cs @@ -18,14 +18,15 @@ class RuntimeDebugWindow : MonoBehaviour DebugUI.Panel m_SelectedPanel; bool m_PortraitOrientation; - bool m_IsDirty; + bool m_NeedsRebuild; int m_UIVersion = 0; + Dictionary m_ScrollPositions = new Dictionary(); void Awake() { - DebugManager.instance.onSetDirty -= RequestRecreateGUI; - DebugManager.instance.onSetDirty += RequestRecreateGUI; + DebugManager.instance.onSetDirty += RequestRebuild; + DebugManager.instance.onRecreateDebugUI += RequestRebuild; if (m_PanelRenderer == null) { @@ -69,6 +70,20 @@ void BuildDebugUI() UpdateOrientation(forceUpdate: true); + // Save scroll positions before clearing + if (m_TabViewElement != null) + { + m_ScrollPositions.Clear(); + foreach (var tab in m_TabViewElement.Query().ToList()) + { + var scrollView = tab.Q(); + if (scrollView != null) + { + m_ScrollPositions[tab.label] = scrollView.scrollOffset; + } + } + } + m_TabViewElement = m_RootVisualElement.Q(name: "debug-window-tabview"); m_TabViewElement.Clear(); @@ -115,6 +130,12 @@ void BuildDebugUI() scrollView.verticalScroller.slider.focusable = false; scrollView.Add(panel); + // Restore scroll position if saved + if (m_ScrollPositions.TryGetValue(tabLabel.text, out var savedScrollOffset)) + { + scrollView.schedule.Execute(() => scrollView.scrollOffset = savedScrollOffset).StartingIn(0); + } + Tab tab = new Tab(tabLabel.text); tab.name = tabLabel.name; tab.selected += t => SetSelectedPanel(t.label); @@ -137,10 +158,15 @@ void BuildDebugUI() // Defer until after layout so all AttachToPanelEvent callbacks from ScheduleTracked // have fired and registered their schedulers before SetHierarchyEnabled is called. m_TabViewElement.schedule.Execute(_ => SetSelectedPanel(selectedPanelName)).StartingIn(100); + + m_NeedsRebuild = false; } void OnDestroy() { + DebugManager.instance.onSetDirty -= RequestRebuild; + DebugManager.instance.onRecreateDebugUI -= RequestRebuild; + if (m_PanelRenderer != null) { // Unregister the UI reload callback @@ -152,7 +178,6 @@ void OnDestroy() } DebugManager.instance.displayRuntimeUI = false; - DebugManager.instance.onSetDirty -= RequestRecreateGUI; } void ConvertNavigationMoveEvents(NavigationMoveEvent evt) @@ -181,20 +206,17 @@ void ConvertNavigationMoveEvents(NavigationMoveEvent evt) } } - internal void RequestRecreateGUI() + internal void RequestRebuild() { - m_IsDirty = true; + m_NeedsRebuild = true; } void Update() { UpdateOrientation(); - if (m_IsDirty) - { - m_IsDirty = false; + if (m_NeedsRebuild) BuildDebugUI(); - } } void UpdateOrientation(bool forceUpdate = false) diff --git a/Packages/com.unity.render-pipelines.core/Runtime/Deprecated.cs b/Packages/com.unity.render-pipelines.core/Runtime/Deprecated.cs index 5375653abfe..fb44c3f6bf3 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/Deprecated.cs +++ b/Packages/com.unity.render-pipelines.core/Runtime/Deprecated.cs @@ -96,6 +96,62 @@ public static void UnRegisterCamera(T additionalCamera) public sealed partial class DebugManager { + /// + /// Force an editor request. + /// + [Obsolete("Polling pattern is deprecated. Subscribe to onRecreateDebugUI event instead. #from(6000.6)", false)] + public bool refreshEditorRequested; + + /// + /// Refresh the debug window. + /// + [Obsolete("Use RecreateDebugUI() instead. RefreshEditor only marks widgets dirty, it doesn't recreate panel structure. #from(6000.6) (UnityUpgradable) -> RecreateDebugUI(*)", true)] + public void RefreshEditor() + { + refreshEditorRequested = true; + } + + /// + /// Request the runtime debug UI be redrawn on the next update. + /// + [Obsolete("Use RecreateDebugUI() instead. #from(6000.6) (UnityUpgradable) -> RecreateDebugUI(*)", true)] + public void ReDrawOnScreenDebug() + { + RecreateDebugUI(); + } + + /// + /// Request DebugWindow to open the specified panel. + /// + /// Index of the debug window panel to activate. + [Obsolete("Use RequestEditorWindowPanelName instead. #from(6000.5)")] + public void RequestEditorWindowPanelIndex(int index) + { + if (m_Panels[index] != null) + RequestPanelSelection(m_Panels[index].displayName); + } + + /// + /// Request DebugWindow to open the specified panel. + /// + /// Name of window panel to activate. + [Obsolete("Use RequestPanelSelection instead. #from(6000.6) (UnityUpgradable) -> RequestPanelSelection(*)", true)] + public void RequestEditorWindowPanel(string panelName) + { + RequestPanelSelection(panelName); + } + + /// + /// Returns the panel display name + /// + /// The panelIndex for the panel to get the name + /// The display name of the panel, or empty string otherwise + [Obsolete("Method is obsolete. Use PanelDisplayName instead. #from(6000.4) (UnityUpgradable) -> PanelDisplayName", true)] + public string PanelDiplayName(int panelIndex) + { + return PanelDisplayName(panelIndex); + } + /// /// Toggle the debug window. /// diff --git a/Packages/com.unity.render-pipelines.core/Runtime/GPUDriven/Debug/DebugDisplayGPUResidentDrawer.cs b/Packages/com.unity.render-pipelines.core/Runtime/GPUDriven/Debug/DebugDisplayGPUResidentDrawer.cs index d88d21a955e..b06ade30e60 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/GPUDriven/Debug/DebugDisplayGPUResidentDrawer.cs +++ b/Packages/com.unity.render-pipelines.core/Runtime/GPUDriven/Debug/DebugDisplayGPUResidentDrawer.cs @@ -261,7 +261,7 @@ public SettingsPanel(DebugDisplayGPUResidentDrawer data) }; foldout.children.Add(helpBox); - GPUResidentDrawer.initializedChanged += OnGPUResidentDrawerInitialzedChanged; + GPUResidentDrawer.initializedChanged += OnGPUResidentDrawerInitializedChanged; // Avoid creating GRD debug modes when it's not enabled. // This debug UI currently creates ~650 DebugUI Widgets (over 80% of all debug widgets in URP). @@ -299,19 +299,15 @@ public SettingsPanel(DebugDisplayGPUResidentDrawer data) AddInstanceCullingStatsWidget(data); } - private void OnGPUResidentDrawerInitialzedChanged(bool previousValue, bool currentValue) + private void OnGPUResidentDrawerInitializedChanged(bool previousValue, bool currentValue) { - // Reload the UI if GRD enabled state changes, from disabled to enabled only, as the UI did not have all the widgets and we need to add them - // in assembly reloads, or entering playmode we do not have this code path and the SettingsPanel will be recreated itself by the Rendering Debugger - // reconstruction. - if ( previousValue == false && currentValue == true ) - DebugManager.instance.Reset(); + DebugManager.instance.RecreateDebugUI(); } public override void Dispose() { base.Dispose(); - GPUResidentDrawer.initializedChanged -= OnGPUResidentDrawerInitialzedChanged; + GPUResidentDrawer.initializedChanged -= OnGPUResidentDrawerInitializedChanged; } private void AddInstanceCullingStatsWidget(DebugDisplayGPUResidentDrawer data) diff --git a/Packages/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDEditorUtils.cs b/Packages/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDEditorUtils.cs index da77652339d..5b624202e9f 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDEditorUtils.cs +++ b/Packages/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDEditorUtils.cs @@ -311,7 +311,7 @@ static void OpenRenderingDebugger(string panelName) if (panelName != null) { - DebugManager.instance.RequestEditorWindowPanel(panelName); + DebugManager.instance.RequestPanelSelection(panelName); } } 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 1d57eb06b42..608b67d8995 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 @@ -512,7 +512,7 @@ public HDRenderPipeline(HDRenderPipelineAsset asset) m_Asset = asset; HDProbeSystem.Parameters = asset.reflectionSystemParameters; - DebugManager.instance.RefreshEditor(); + DebugManager.instance.RecreateDebugUI(); m_DebugDisplaySettings = DebugDisplaySerializer.GetOrCreate(); m_ValidAPI = true; diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Debug/DebugDisplaySettingsCommon.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Debug/DebugDisplaySettingsCommon.cs index 06e39b969c9..759f6cd136d 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Debug/DebugDisplaySettingsCommon.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Debug/DebugDisplaySettingsCommon.cs @@ -17,7 +17,7 @@ DebugUI.Foldout.ContextMenuItem AddGoToSectionContextMenuItem(string panelName) displayName = $"Open {panelName} Tab...", action = () => { - DebugManager.instance.RequestEditorWindowPanel(panelName); + DebugManager.instance.RequestPanelSelection(panelName); } }; } diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/UniversalRenderPipeline.cs b/Packages/com.unity.render-pipelines.universal/Runtime/UniversalRenderPipeline.cs index bebd965d040..4d089acf9ad 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/UniversalRenderPipeline.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/UniversalRenderPipeline.cs @@ -393,7 +393,7 @@ public UniversalRenderPipeline(UniversalRenderPipelineAsset asset) s_RenderGraph = new RenderGraph("URPRenderGraph"); s_RTHandlePool = new RTHandleResourcePool(); - DebugManager.instance.RefreshEditor(); + DebugManager.instance.RecreateDebugUI(); #if DEVELOPMENT_BUILD || UNITY_EDITOR m_DebugDisplaySettingsUI.RegisterDebug(UniversalRenderPipelineDebugDisplaySettings.Instance); From be42945c0e539f65c8f7228c580f314a77222620 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Sat, 18 Jul 2026 12:30:01 +0000 Subject: [PATCH 32/52] [Port] [6000.5] [URP] Loosen 000_DeferredPlus_Many average threshold --- .../Assets/Scenes/000_DeferredPlus_Many.unity | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/000_DeferredPlus_Many.unity b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/000_DeferredPlus_Many.unity index dac7dd80c71..17a80e5ad93 100644 --- a/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/000_DeferredPlus_Many.unity +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/000_DeferredPlus_Many.unity @@ -33651,7 +33651,7 @@ MonoBehaviour: PerPixelGammaThreshold: 0.003921569 PerPixelAlphaThreshold: 0.003921569 RMSEThreshold: 0 - AverageCorrectnessThreshold: 0.000005 + AverageCorrectnessThreshold: 0.00005 IncorrectPixelsThreshold: 0.0000038146973 UseHDR: 0 UseBackBuffer: 1 From 263a28f4997ca8cae2bc1535ee718d5a44586b68 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Sat, 18 Jul 2026 12:30:01 +0000 Subject: [PATCH 33/52] [Port] [6000.5] [UUM-146401] Fix URP asset Tile-Only Mode warning to appear for all non-default Render Scale values --- .../UniversalRenderPipelineAssetUI.Drawers.cs | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/Packages/com.unity.render-pipelines.universal/Editor/UniversalRenderPipelineAsset/UniversalRenderPipelineAssetUI.Drawers.cs b/Packages/com.unity.render-pipelines.universal/Editor/UniversalRenderPipelineAsset/UniversalRenderPipelineAssetUI.Drawers.cs index f7a9187bd60..bab997335a6 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/UniversalRenderPipelineAsset/UniversalRenderPipelineAssetUI.Drawers.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/UniversalRenderPipelineAsset/UniversalRenderPipelineAssetUI.Drawers.cs @@ -310,10 +310,9 @@ static void DrawQuality(SerializedUniversalRenderPipelineAsset serialized, Edito serialized.renderScale, p => { - // Duplicating logic from UniversalRenderPipeline.InitializeStackedCameraData - const float kRenderScaleThreshold = 0.05f; - bool canRequireIntermediateTexture = Mathf.Abs(1.0f - p.floatValue) >= kRenderScaleThreshold; - if (!canRequireIntermediateTexture) + // Usual threshold is 0.05f, but display warning to users even when RenderScale not actually applied since users are not aware of threshold + bool userAttemptingRenderScale = !Mathf.Approximately(p.floatValue, 1.0f); + if (!userAttemptingRenderScale) return false; // This operation is actually ok on Quest @@ -333,7 +332,7 @@ static void DrawQuality(SerializedUniversalRenderPipelineAsset serialized, Edito if (serialized.renderScale.floatValue < 1.0f || stpUpscalingSelected || fsr1UpscalingSelected) { - EditorGUILayout.HelpBox("Camera depth isn't supported when Upscaling is turned on in the game view. We will automatically fall back to not doing depth-testing for this pass.", MessageType.Warning, true); + EditorGUILayout.HelpBox("Camera depth isn't supported when Upscaling is turned on in the game view. We will automatically fall back to not doing depth-testing for this pass when upscaling is applied.", MessageType.Warning, true); } EditorGUILayout.PropertyField(serialized.enableLODCrossFadeProp, Styles.enableLODCrossFadeText); From 5183909904c2365f108896c77c3606c2a022491e Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Sat, 18 Jul 2026 12:30:02 +0000 Subject: [PATCH 34/52] [Port] [6000.5] Fixed a typo in the HDRP Tessellation reference page --- .../Documentation~/Tessellation.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Tessellation.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Tessellation.md index 989f669fcf6..7727ba0e0a7 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Tessellation.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Tessellation.md @@ -34,5 +34,5 @@ The following property is only available in Master Stacks. In the [Layered Lit T - Motion vectors do not work correctly if the tessellation factor differs for vertices between two frames. ## Performance -- Enabling the Tessellation option have an extra GPU cost, even if the tessellationFactor is 0.0 or 1.0. It is recommened to have additional LOD with shader without tessellation enabled for good performance. -- Tessellation is an expensive GPU operation and it is often lest costly to pre-tessellate a mesh and doing vertex displacement than doing the tessellation process, but it have the benefit of being adapatative. +- Enabling the Tessellation option has an extra GPU cost, even if the tessellationFactor is 0.0 or 1.0. It is recommended to have additional LOD with shader without tessellation enabled for good performance. +- Tessellation is an expensive GPU operation and it is often less costly to pre-tessellate a mesh and do vertex displacement than to do the tessellation process, but it has the benefit of being adaptive. From 015c19e93b900f6c8ac105567266b66d2aab7b3b Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Mon, 20 Jul 2026 21:46:47 +0000 Subject: [PATCH 35/52] [Port] [6000.5] Refactor MockHMD SetupTests to allow for a wait frame after changing the eyes resolution --- .../TestRunner/HDRP_GraphicTestRunner.cs | 23 ++- .../Runtime/ConfigureMockHMD.cs | 154 ++++++++++++++---- 2 files changed, 141 insertions(+), 36 deletions(-) diff --git a/Tests/SRPTests/Packages/com.unity.testing.hdrp/TestRunner/HDRP_GraphicTestRunner.cs b/Tests/SRPTests/Packages/com.unity.testing.hdrp/TestRunner/HDRP_GraphicTestRunner.cs index ab1ccdccaaa..a417417e2a0 100644 --- a/Tests/SRPTests/Packages/com.unity.testing.hdrp/TestRunner/HDRP_GraphicTestRunner.cs +++ b/Tests/SRPTests/Packages/com.unity.testing.hdrp/TestRunner/HDRP_GraphicTestRunner.cs @@ -68,9 +68,9 @@ public static IEnumerator Run(SceneGraphicsTestCase testCase) // Purpose is to setup proper test aspect ratio for the camera to "see" all objects and trigger related shader compilation tasks. int warmupTime = 1; - if (XRGraphicsAutomatedTests.enabled) - warmupTime = Unity.Testing.XR.Runtime.ConfigureMockHMD.SetupTest(settings.xrCompatible, warmupTime, settings.ImageComparisonSettings); - else + Unity.Testing.XR.Runtime.ConfigureMockHMD.SetupTest(settings.xrCompatible, warmupTime, settings.ImageComparisonSettings); + + if (!XRGraphicsAutomatedTests.enabled) camera.targetTexture = RenderTexture.GetTemporary(settings.ImageComparisonSettings.TargetWidth, settings.ImageComparisonSettings.TargetHeight); // Trigger any test specific script. This is because it may change objects state and trigger shader compilation. @@ -153,7 +153,22 @@ public static IEnumerator Run(SceneGraphicsTestCase testCase) if (XRGraphicsAutomatedTests.enabled) { GraphicsTestLogger.Log(LogType.Log, "XR Automated Tests enabled."); - waitFrames = Unity.Testing.XR.Runtime.ConfigureMockHMD.SetupTest(settings.xrCompatible, waitFrames, settings.ImageComparisonSettings); + + if (settings.xrCompatible) + { + Unity.Testing.XR.Runtime.ConfigureMockHMD.ConfigureXRDisplay(settings.xrCompatible, settings.ImageComparisonSettings); + + #if !UNITY_EDITOR + // Some tests need time after eye resolution change before setting player resolution + yield return Unity.Testing.XR.Runtime.ConfigureMockHMD.WaitForXRFrames(settings.xrCompatible, 1); + #endif + + waitFrames = Unity.Testing.XR.Runtime.ConfigureMockHMD.SetPlayerResolutionForXR(settings.xrCompatible, settings.ImageComparisonSettings, waitFrames); + } + else + { + Assert.Ignore("Test scene is not compatible with XR and will be skipped."); + } // Increase tolerance to account for slight changes due to float precision settings.ImageComparisonSettings.AverageCorrectnessThreshold *= settings.xrThresholdMultiplier; diff --git a/Tests/SRPTests/Packages/com.unity.testing.xr/Runtime/ConfigureMockHMD.cs b/Tests/SRPTests/Packages/com.unity.testing.xr/Runtime/ConfigureMockHMD.cs index b4944019cc7..9d4af52220a 100644 --- a/Tests/SRPTests/Packages/com.unity.testing.xr/Runtime/ConfigureMockHMD.cs +++ b/Tests/SRPTests/Packages/com.unity.testing.xr/Runtime/ConfigureMockHMD.cs @@ -1,5 +1,8 @@ +using System.Collections; using NUnit.Framework; using System.Collections.Generic; +using System.Numerics; +using System.Runtime.CompilerServices; using UnityEngine; using UnityEngine.Rendering; @@ -11,6 +14,15 @@ namespace Unity.Testing.XR.Runtime { public class ConfigureMockHMD { + /// + /// Configures MockHMD for XR testing with specified image comparison settings. + /// Sets up the XR display subsystem and configures the player resolution to match. + /// On XR, the player resolution must match the target width and target height specified in the settings. + /// + /// Whether the test scene is compatible with XR. + /// Number of frames to wait before test execution. + /// Image comparison settings containing target resolution. + /// Number of frames to wait. Returns at least 4 frames for XR eye texture resizing when XR is enabled. static public int SetupTest(bool xrCompatible, int waitFrames, UnityEngine.TestTools.Graphics.ImageComparisonSettings settings) { #if ENABLE_VR && USE_XR_MOCK_HMD @@ -18,50 +30,128 @@ static public int SetupTest(bool xrCompatible, int waitFrames, UnityEngine.TestT { if (xrCompatible) { - XRGraphicsAutomatedTests.running = true; + ConfigureXRDisplay(xrCompatible, settings); + int resolutionWaitFrames = SetPlayerResolutionForXR(xrCompatible, settings, waitFrames); - // Validate MockHMD is enabled and running - List xrDisplays = new List(); - SubsystemManager.GetSubsystems(xrDisplays); - Assume.That(xrDisplays.Count == 1 && xrDisplays[0].running, "XR display MockHMD is not running!"); + // XR plugin MockHMD requires a few frames to resize eye textures + return Mathf.Max(waitFrames, resolutionWaitFrames); + } + else + { + Assert.Ignore("Test scene is not compatible with XR and will be skipped."); + } + } +#endif + + return waitFrames; + } - // Configure MockHMD to use single-pass and compare reference image against second view (right eye) - xrDisplays[0].SetPreferredMirrorBlitMode(XRMirrorViewBlitMode.RightEye); + /// + /// Configures the XR display subsystem for MockHMD testing. + /// Sets up single-pass instanced rendering, mirror blit mode, eye resolution, and validates the display is running. + /// On XR, configures eye resolution to match the target width and target height specified in the settings. + /// Safe to call regardless of XR context - will only execute when ENABLE_VR and USE_XR_MOCK_HMD are defined and test is XR compatible. + /// + /// Whether the test scene is compatible with XR. + /// Image comparison settings containing target resolution. + static public void ConfigureXRDisplay(bool xrCompatible, UnityEngine.TestTools.Graphics.ImageComparisonSettings settings) + { + #if ENABLE_VR && USE_XR_MOCK_HMD + if (XRGraphicsAutomatedTests.enabled && xrCompatible) + { + XRGraphicsAutomatedTests.running = true; - // Configure MockHMD stereo mode - xrDisplays[0].textureLayout = XRDisplaySubsystem.TextureLayout.Texture2DArray; - Unity.XR.MockHMD.MockHMD.SetRenderMode(Unity.XR.MockHMD.MockHMDBuildSettings.RenderMode.SinglePassInstanced); + var resolution = GetResolutionFromSettings(settings); - // Configure MockHMD to match the original settings from the test scene - int w = 1920; - int h = 1080; + // Validate MockHMD is enabled and running + List xrDisplays = new List(); + SubsystemManager.GetSubsystems(xrDisplays); + Assume.That(xrDisplays.Count == 1 && xrDisplays[0].running, "XR display MockHMD is not running!"); - if(!settings.UseBackBuffer) - { - w = settings.TargetWidth; - h = settings.TargetHeight; - } + // Configure MockHMD to use single-pass and compare reference image against second view (right eye) + xrDisplays[0].SetPreferredMirrorBlitMode(XRMirrorViewBlitMode.RightEye); - Unity.XR.MockHMD.MockHMD.SetEyeResolution(w, h); - Unity.XR.MockHMD.MockHMD.SetMirrorViewCrop(0.0f); + // Configure MockHMD stereo mode + xrDisplays[0].textureLayout = XRDisplaySubsystem.TextureLayout.Texture2DArray; + Unity.XR.MockHMD.MockHMD.SetRenderMode(Unity.XR.MockHMD.MockHMDBuildSettings.RenderMode.SinglePassInstanced); -#if UNITY_EDITOR - UnityEditor.TestTools.Graphics.SetupGraphicsTestCases.SetGameViewSize(w, h); -#else - Screen.SetResolution(w, h, FullScreenMode.Windowed); -#endif - } - else + Unity.XR.MockHMD.MockHMD.SetEyeResolution(resolution.width, resolution.height); + Unity.XR.MockHMD.MockHMD.SetMirrorViewCrop(0.0f); + } + #endif + } + + + /// + /// Sets the player/game view resolution to match XR eye texture resolution. + /// On XR, this resolution must match the target width and target height of the test settings. + /// Safe to call regardless of XR context - will only execute when ENABLE_VR and USE_XR_MOCK_HMD are defined and test is XR compatible. + /// + /// Whether the test scene is compatible with XR. + /// Image comparison settings containing target resolution. + /// Base number of frames to wait. + /// Number of frames to wait (4) for XR eye textures to properly resize, or original waitFrames if not in XR context. + static public int SetPlayerResolutionForXR(bool xrCompatible, UnityEngine.TestTools.Graphics.ImageComparisonSettings settings, int waitFrames) + { + #if ENABLE_VR && USE_XR_MOCK_HMD + if (XRGraphicsAutomatedTests.enabled && xrCompatible) + { + XRGraphicsAutomatedTests.running = true; + + var resolution = GetResolutionFromSettings(settings); + + #if UNITY_EDITOR + UnityEditor.TestTools.Graphics.SetupGraphicsTestCases.SetGameViewSize(resolution.width, resolution.height); + #else + Screen.SetResolution(resolution.width, resolution.height, FullScreenMode.Windowed); + #endif + return Mathf.Max(waitFrames, 4); + } + #endif + return waitFrames; + } + + /// + /// Waits for the specified number of frames when XR is active and the test is XR compatible. + /// This is useful for allowing XR eye textures and display settings to properly update after configuration changes. + /// Only yields frames when ENABLE_VR and USE_XR_MOCK_HMD are defined, XRGraphicsAutomatedTests is enabled, and test is XR compatible. + /// Otherwise, completes immediately without waiting. + /// + /// Whether the test scene is compatible with XR. + /// Number of frames to wait. + /// IEnumerator for coroutine execution. + static public IEnumerator WaitForXRFrames(bool xrCompatible, int frameCount) + { + #if ENABLE_VR && USE_XR_MOCK_HMD + if (XRGraphicsAutomatedTests.enabled && xrCompatible) + { + for (int i = 0; i < frameCount; i++) { - Assert.Ignore("Test scene is not compatible with XR and will be skipped."); + yield return new WaitForEndOfFrame(); } + } + #endif + yield break; + } - // XR plugin MockHMD requires a few frames to resize eye textures - return Mathf.Max(waitFrames, 4); + /// + /// Extracts the target resolution from image comparison settings. + /// Returns the specified target width/height, or defaults to 1920x1080 if using back buffer. + /// + /// Image comparison settings. + /// Resolution as (width, height) tuple. + static private (int width, int height) GetResolutionFromSettings(UnityEngine.TestTools.Graphics.ImageComparisonSettings settings) + { + int w = 1920; + int h = 1080; + + if (!settings.UseBackBuffer) + { + w = settings.TargetWidth; + h = settings.TargetHeight; } -#endif - return waitFrames; + return (w, h); } } } From d553d4ff120718110e674fea8c41f3e28b52e0ed Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Mon, 20 Jul 2026 21:46:48 +0000 Subject: [PATCH 36/52] [Port] [6000.5] docg-8934: implement pages fix titles --- .../Documentation~/Arithmetic.md | 40 +- .../Documentation~/Attribute.md | 8 +- .../Documentation~/Bitwise.md | 12 +- .../Documentation~/Block-Burst.md | 8 +- .../Block-CalculateMassFromVolume.md | 8 +- .../Documentation~/Block-CameraFade.md | 2 +- .../Block-CollideWithDepthBuffer.md | 4 +- .../Block-Collision-LandingPage.md | 8 +- .../Block-ConformToSignedDistanceField.md | 2 +- .../Documentation~/Block-ConformToSphere.md | 2 +- .../Documentation~/Block-ConnectTarget.md | 2 +- .../Documentation~/Block-ConstantRate.md | 4 +- .../Documentation~/Block-CustomHLSL.md | 2 +- .../Documentation~/Block-FlipbookPlayer.md | 2 +- .../Documentation~/Block-Force.md | 2 +- .../Documentation~/Block-Gravity.md | 2 +- .../Block-IncrementStripIndexOnStart.md | 6 +- .../Documentation~/Block-KillShape.md | 4 +- .../Documentation~/Block-LinearDrag.md | 2 +- .../Documentation~/Block-Orient.md | 2 +- .../Documentation~/Block-ScreenSpaceSize.md | 4 +- .../Documentation~/Block-SetAttribute.md | 2 +- .../Block-SetAttributeFromCurve.md | 4 +- .../Block-SetAttributeFromMap.md | 2 +- .../Block-SetPosition(Depth).md | 4 +- .../Documentation~/Block-SetPosition(Mesh).md | 4 +- .../Block-SetPosition(Sequential).md | 4 +- .../Block-SetPosition(SkinnedMesh).md | 4 +- .../Block-SetPositionShape-LandingPage.md | 12 +- .../Documentation~/Block-SetPositionShape.md | 2 +- .../Documentation~/Block-SetSpawnEvent.md | 6 +- .../Documentation~/Block-SetSpawnTime.md | 6 +- .../Documentation~/Block-SpawnOverDistance.md | 6 +- .../Block-SubpixelAntiAliasing.md | 2 +- .../Documentation~/Block-TileWarpPositions.md | 2 +- .../Documentation~/Block-TriggerShape.md | 4 +- .../Documentation~/Block-Turbulence.md | 2 +- .../Documentation~/Block-UpdatePosition.md | 2 +- .../Documentation~/Block-UpdateRotation.md | 2 +- .../Documentation~/Block-VariableRate.md | 4 +- .../Documentation~/Block-VectorForceField.md | 4 +- ...ocityFromDirectionAndSpeed(ChangeSpeed).md | 6 +- ...cityFromDirectionAndSpeed(NewDirection).md | 6 +- ...yFromDirectionAndSpeed(RandomDirection).md | 6 +- ...-VelocityFromDirectionAndSpeed(Tangent).md | 6 +- .../Documentation~/Builtin.md | 12 +- .../Documentation~/Camera.md | 10 +- .../Documentation~/Clamp.md | 16 +- .../Documentation~/Color.md | 12 +- .../Documentation~/Constants.md | 4 +- .../Documentation~/Context-Event.md | 2 +- .../Documentation~/Context-GPUEvent.md | 2 +- .../Documentation~/Context-Initialize.md | 2 +- .../Context-OutputDistortion.md | 2 +- .../Context-OutputForwardDecal.md | 4 +- .../Documentation~/Context-OutputLine.md | 4 +- .../Context-OutputLitSettings.md | 2 +- .../Documentation~/Context-OutputMesh.md | 2 +- .../Context-OutputParticleHDRPLitDecal.md | 8 +- ...Context-OutputParticleHDRPVolumetricFog.md | 8 +- .../Context-OutputParticleMesh.md | 2 +- .../Context-OutputParticleURPLitDecal.md | 8 +- .../Documentation~/Context-OutputPoint.md | 4 +- .../Documentation~/Context-OutputPrimitive.md | 4 +- .../Context-OutputShaderGraphMesh.md | 2 +- ...ontext-OutputShaderGraphPlanarPrimitive.md | 2 +- .../Context-OutputShaderGraphStrip.md | 4 +- .../Context-OutputSharedSettings.md | 2 +- .../Documentation~/Context-Spawn.md | 2 +- .../Documentation~/Context-Update.md | 2 +- .../Documentation~/Context.md | 38 +- .../Documentation~/Coordinates.md | 16 +- .../Documentation~/CustomSpawn.md | 8 +- .../Documentation~/Force.md | 14 +- .../Documentation~/Geometry.md | 36 +- .../Documentation~/Implicit.md | 4 +- .../Documentation~/Inline.md | 74 +-- .../Documentation~/Logic.md | 16 +- .../Documentation~/Math.md | 22 +- .../Documentation~/Noise.md | 12 +- .../Documentation~/Operator-Absolute.md | 2 +- .../Documentation~/Operator-Acos.md | 2 +- .../Documentation~/Operator-Add.md | 2 +- .../Operator-AgeOverLifetime.md | 2 +- .../Documentation~/Operator-AppendVector.md | 2 +- .../Documentation~/Operator-Area(Circle).md | 2 +- .../Documentation~/Operator-Asin.md | 2 +- .../Documentation~/Operator-Atan.md | 2 +- .../Documentation~/Operator-Atan2.md | 2 +- .../Documentation~/Operator-BitwiseAnd.md | 4 +- .../Operator-BitwiseComplement.md | 4 +- .../Operator-BitwiseLeftShift.md | 4 +- .../Documentation~/Operator-BitwiseOr.md | 4 +- .../Operator-BitwiseRightShift.md | 4 +- .../Documentation~/Operator-BitwiseXor.md | 4 +- .../Documentation~/Operator-Branch.md | 2 +- .../Documentation~/Operator-BufferCount.md | 2 +- .../Documentation~/Operator-Ceiling.md | 2 +- .../Operator-CellularCurlNoise.md | 2 +- .../Documentation~/Operator-CellularNoise.md | 2 +- .../Documentation~/Operator-ChangeSpace.md | 2 +- .../Documentation~/Operator-Clamp.md | 2 +- .../Documentation~/Operator-ColorLuma.md | 2 +- .../Documentation~/Operator-Compare.md | 2 +- .../Operator-ConstructMatrix.md | 2 +- .../Documentation~/Operator-Cosine.md | 2 +- .../Documentation~/Operator-CrossProduct.md | 2 +- .../Documentation~/Operator-CustomHLSL.md | 2 +- .../Documentation~/Operator-DeltaTime.md | 2 +- .../Documentation~/Operator-Discretize.md | 2 +- .../Documentation~/Operator-Distance(Line).md | 4 +- .../Operator-Distance(Plane).md | 4 +- .../Operator-Distance(Sphere).md | 4 +- .../Documentation~/Operator-Distance.md | 2 +- .../Documentation~/Operator-Divide.md | 2 +- .../Documentation~/Operator-DotProduct.md | 2 +- .../Documentation~/Operator-Epsilon.md | 4 +- .../Documentation~/Operator-Exp.md | 2 +- .../Documentation~/Operator-Floor.md | 2 +- .../Documentation~/Operator-Fractional.md | 2 +- .../Documentation~/Operator-FrameIndex.md | 2 +- .../Operator-GetAttributeAge.md | 2 +- .../Operator-GetAttributeAlive.md | 2 +- .../Operator-GetAttributeAlpha.md | 2 +- .../Operator-GetAttributeAngle.md | 2 +- .../Operator-GetAttributeAngularVelocity.md | 2 +- .../Operator-GetAttributeAxisX.md | 2 +- .../Operator-GetAttributeAxisY.md | 2 +- .../Operator-GetAttributeAxisZ.md | 2 +- .../Operator-GetAttributeColor.md | 2 +- .../Operator-GetAttributeDirection.md | 2 +- .../Operator-GetAttributeLifetime.md | 2 +- .../Operator-GetAttributeMass.md | 2 +- .../Operator-GetAttributeOldPosition.md | 2 +- ...erator-GetAttributeParticleCountInStrip.md | 2 +- .../Operator-GetAttributeParticleID.md | 4 +- ...erator-GetAttributeParticleIndexInStrip.md | 2 +- .../Operator-GetAttributePivot.md | 2 +- .../Operator-GetAttributePosition.md | 2 +- .../Operator-GetAttributeScale.md | 2 +- .../Operator-GetAttributeSeed.md | 2 +- .../Operator-GetAttributeSize.md | 2 +- .../Operator-GetAttributeSpawnIndex.md | 2 +- .../Operator-GetAttributeSpawnTime.md | 2 +- .../Operator-GetAttributeStripIndex.md | 2 +- .../Operator-GetAttributeTargetPosition.md | 2 +- .../Operator-GetAttributeTexIndex.md | 2 +- .../Operator-GetAttributeVelocity.md | 2 +- .../Operator-GetCustomAttribute.md | 2 +- .../Operator-GetTextureDimensions.md | 2 +- .../Documentation~/Operator-HSVToRGB.md | 4 +- .../Documentation~/Operator-InlineAABox.md | 2 +- .../Operator-InlineAnimationCurve.md | 2 +- .../Operator-InlineArcCircle.md | 2 +- .../Documentation~/Operator-InlineArcCone.md | 2 +- .../Operator-InlineArcSphere.md | 2 +- .../Documentation~/Operator-InlineArcTorus.md | 2 +- .../Documentation~/Operator-InlineCamera.md | 2 +- .../Documentation~/Operator-InlineCircle.md | 2 +- .../Documentation~/Operator-InlineColor.md | 2 +- .../Documentation~/Operator-InlineCone.md | 2 +- .../Documentation~/Operator-InlineCubemap.md | 2 +- .../Operator-InlineCubemapArray.md | 2 +- .../Documentation~/Operator-InlineCylinder.md | 2 +- .../Operator-InlineDirection.md | 2 +- .../Documentation~/Operator-InlineFlipBook.md | 2 +- .../Documentation~/Operator-InlineGradient.md | 2 +- .../Documentation~/Operator-InlineLine.md | 2 +- .../Operator-InlineMatrix4x4.md | 2 +- .../Documentation~/Operator-InlineMesh.md | 2 +- .../Operator-InlineOrientedBox.md | 2 +- .../Documentation~/Operator-InlinePlane.md | 2 +- .../Documentation~/Operator-InlinePosition.md | 2 +- .../Documentation~/Operator-InlineSphere.md | 2 +- .../Operator-InlineTerrainType.md | 2 +- .../Operator-InlineTexture2D.md | 2 +- .../Operator-InlineTexture2DArray.md | 2 +- .../Operator-InlineTexture3D.md | 2 +- .../Documentation~/Operator-InlineTorus.md | 2 +- .../Operator-InlineTransform.md | 2 +- .../Documentation~/Operator-InlineVector.md | 2 +- .../Documentation~/Operator-InlineVector2.md | 2 +- .../Documentation~/Operator-InlineVector3.md | 2 +- .../Documentation~/Operator-InlineVector4.md | 2 +- .../Documentation~/Operator-Inlinebool.md | 2 +- .../Documentation~/Operator-Inlinefloat.md | 2 +- .../Documentation~/Operator-Inlineint.md | 2 +- .../Documentation~/Operator-Inlineuint.md | 2 +- .../Documentation~/Operator-InverseLerp.md | 2 +- .../Operator-InvertTRS(Matrix).md | 4 +- .../Documentation~/Operator-Length.md | 4 +- .../Documentation~/Operator-Lerp.md | 2 +- .../Operator-LoadCameraBuffer.md | 2 +- .../Documentation~/Operator-LoadTexture2D.md | 2 +- .../Operator-LoadTexture2DArray.md | 2 +- .../Documentation~/Operator-LoadTexture3D.md | 2 +- .../Documentation~/Operator-LocalToWorld.md | 4 +- .../Documentation~/Operator-Log.md | 2 +- .../Documentation~/Operator-LogicAnd.md | 2 +- .../Documentation~/Operator-LogicNand.md | 4 +- .../Documentation~/Operator-LogicNor.md | 2 +- .../Documentation~/Operator-LogicNot.md | 2 +- .../Documentation~/Operator-LogicOr.md | 2 +- .../Documentation~/Operator-LookAT.md | 2 +- .../Documentation~/Operator-MainCamera.md | 2 +- .../Documentation~/Operator-Maximum.md | 2 +- .../Documentation~/Operator-MeshIndexCount.md | 2 +- .../Operator-MeshTriangleCount.md | 2 +- .../Operator-MeshVertexCount.md | 2 +- .../Documentation~/Operator-Minimum.md | 2 +- .../Documentation~/Operator-Modulo.md | 2 +- .../Documentation~/Operator-Multiply.md | 2 +- .../Documentation~/Operator-Negate.md | 4 +- .../Documentation~/Operator-Normalize.md | 2 +- .../Documentation~/Operator-OneMinus.md | 4 +- .../Operator-PerlinCurlNoise.md | 2 +- .../Documentation~/Operator-PerlinNoise.md | 2 +- .../Documentation~/Operator-Pi.md | 4 +- .../Documentation~/Operator-PointCache.md | 4 +- .../Operator-PolarToRectangular.md | 2 +- .../Operator-Position(Depth).md | 4 +- .../Documentation~/Operator-Power.md | 2 +- .../Documentation~/Operator-RGBToHSV.md | 4 +- .../Documentation~/Operator-RandomNumber.md | 2 +- .../Operator-RandomSelectorWeighted.md | 4 +- .../Documentation~/Operator-Reciprocal.md | 4 +- .../Operator-RectangularToPolar.md | 2 +- .../Operator-RectangularToSpherical.md | 2 +- .../Documentation~/Operator-Remap(-11).md | 4 +- .../Documentation~/Operator-Remap(01).md | 4 +- .../Documentation~/Operator-Remap.md | 4 +- .../Documentation~/Operator-Rotate2D.md | 2 +- .../Documentation~/Operator-Rotate3D.md | 2 +- .../Documentation~/Operator-Round.md | 2 +- .../Operator-SampleAttributeMap.md | 2 +- .../Documentation~/Operator-SampleBezier.md | 2 +- .../Documentation~/Operator-SampleBuffer.md | 6 +- .../Operator-SampleCameraBuffer.md | 2 +- .../Documentation~/Operator-SampleCurve.md | 2 +- .../Documentation~/Operator-SampleGradient.md | 2 +- .../Documentation~/Operator-SampleMesh.md | 2 +- .../Operator-SampleMeshIndex.md | 6 +- .../Documentation~/Operator-SampleSDF.md | 2 +- .../Operator-SampleSkinnedMesh.md | 2 +- .../Operator-SampleTexture2D.md | 2 +- .../Operator-SampleTexture2DArray.md | 2 +- .../Operator-SampleTexture3D.md | 2 +- .../Operator-SampleTextureCube.md | 2 +- .../Operator-SampleTextureCubeArray.md | 2 +- .../Documentation~/Operator-Saturate.md | 2 +- .../Documentation~/Operator-SawtoothWave.md | 2 +- .../Documentation~/Operator-Sign.md | 2 +- .../Documentation~/Operator-Sine.md | 2 +- .../Documentation~/Operator-SineWave.md | 2 +- .../Operator-SkinnedLocalTransform.md | 2 +- .../Operator-SkinnedMeshIndexCount.md | 2 +- .../Operator-SkinnedMeshTriangleCount.md | 2 +- .../Operator-SkinnedMeshVertexCount.md | 2 +- .../Operator-SkinnedWorldTransform.md | 2 +- .../Documentation~/Operator-Smoothstep.md | 2 +- .../Documentation~/Operator-SpawnState.md | 4 +- .../Operator-SphericalToRectangular.md | 2 +- .../Documentation~/Operator-SquareRoot.md | 2 +- .../Documentation~/Operator-SquareWave.md | 2 +- .../Operator-SquaredDistance.md | 2 +- .../Documentation~/Operator-SquaredLength.md | 2 +- .../Documentation~/Operator-Step.md | 2 +- .../Documentation~/Operator-Subtract.md | 2 +- .../Documentation~/Operator-Switch.md | 2 +- .../Documentation~/Operator-Swizzle.md | 2 +- .../Documentation~/Operator-SystemSeed.md | 2 +- .../Documentation~/Operator-Tangent.md | 2 +- .../Documentation~/Operator-TotalTime.md | 2 +- .../Operator-Transform(Direction).md | 4 +- .../Operator-Transform(Matrix).md | 4 +- .../Operator-Transform(Position).md | 4 +- .../Operator-Transform(Vector).md | 4 +- .../Operator-Transform(Vector4).md | 4 +- .../Operator-Transpose(Matrix).md | 4 +- .../Documentation~/Operator-TriangleWave.md | 2 +- .../Documentation~/Operator-ValueCurlNoise.md | 2 +- .../Documentation~/Operator-ValueNoise.md | 2 +- .../Operator-ViewportToWorldPoint.md | 4 +- .../Operator-Volume(AxisAlignedBox).md | 4 +- .../Documentation~/Operator-Volume(Cone).md | 4 +- .../Operator-Volume(Cylinder).md | 4 +- .../Operator-Volume(OrientedBox).md | 4 +- .../Documentation~/Operator-Volume(Sphere).md | 4 +- .../Documentation~/Operator-Volume(Torus).md | 4 +- .../Documentation~/Operator-WorldToLocal.md | 2 +- .../Operator-WorldToViewportPoint.md | 4 +- .../Documentation~/Operator.md | 2 +- .../Documentation~/OperatorAttribute.md | 58 +- .../Documentation~/Orientation.md | 4 +- .../Documentation~/Output.md | 4 +- .../Documentation~/Random.md | 4 +- .../Documentation~/Reference-Attributes.md | 2 +- .../Documentation~/Remap.md | 6 +- .../Documentation~/Sampling.md | 58 +- .../Documentation~/SharedOutputSettings.md | 6 +- .../Documentation~/Spawn.md | 14 +- .../Documentation~/TableOfContents.md | 621 +++++++++--------- .../Documentation~/Timeline.md | 2 +- .../Documentation~/Trigonometry.md | 14 +- .../Documentation~/Vector.md | 28 +- .../Documentation~/Velocity.md | 10 +- .../Documentation~/VisualEffectPreferences.md | 4 +- .../Documentation~/Wave.md | 8 +- 308 files changed, 973 insertions(+), 976 deletions(-) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Arithmetic.md b/Packages/com.unity.visualeffectgraph/Documentation~/Arithmetic.md index 3399a069ef4..24bbabe6daf 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Arithmetic.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Arithmetic.md @@ -4,28 +4,28 @@ Perform mathematical calculations on input data. | **Page** | **Description** | | --- | --- | -| [Absolute](Operator-Absolute.md) | Calculate the absolute value of an input. | -| [Add](Operator-Add.md) | Calculate the sum of all inputs. | -| [Divide](Operator-Divide.md) | Divide the first input sequentially by all other inputs. | -| [Fractional](Operator-Fractional.md) | Extract the fractional part of an input. | -| [Inverse Lerp](Operator-InverseLerp.md) | Calculate the fraction representing how far a value is between two values. | -| [Lerp](Operator-Lerp.md) | Calculate a linear interpolation between two values. | -| [Modulo](Operator-Modulo.md) | Calculate the remainder of dividing of one value by another. | -| [Multiply](Operator-Multiply.md) | Multiply all inputs together. | -| [Negate](Operator-Negate.md) | Multiply an input value by -1 to invert its sign. | -| [One Minus](Operator-OneMinus.md) | Subtract an input value from one. | -| [Power](Operator-Power.md) | Raise one input to the power of another input. | -| [Reciprocal](Operator-Reciprocal.md) | Calculate the result of dividing 1 by an input value. | -| [Sign](Operator-Sign.md) | Return whether an input is positive, negative, or 0. | -| [Smoothstep](Operator-Smoothstep.md) | Calculate smooth Hermite interpolation between two values. | -| [Square Root](Operator-SquareRoot.md) | Calculate the square root of an input. | -| [Step](Operator-Step.md) | Compare an input value to a threshold and return whether an input is above or below the threshold | -| [Subtract](Operator-Subtract.md) | Subtract one or more inputs from another input. | +| [Absolute Operator](Operator-Absolute.md) | Calculate the absolute value of an input. | +| [Add Operator](Operator-Add.md) | Calculate the sum of all inputs. | +| [Divide Operator](Operator-Divide.md) | Divide the first input sequentially by all other inputs. | +| [Fractional Operator](Operator-Fractional.md) | Extract the fractional part of an input. | +| [Inverse Lerp Operator](Operator-InverseLerp.md) | Calculate the fraction representing how far a value is between two values. | +| [Lerp Operator](Operator-Lerp.md) | Calculate a linear interpolation between two values. | +| [Modulo Operator](Operator-Modulo.md) | Calculate the remainder of dividing of one value by another. | +| [Multiply Operator](Operator-Multiply.md) | Multiply all inputs together. | +| [Negate Operator](Operator-Negate.md) | Multiply an input value by -1 to invert its sign. | +| [One Minus Operator](Operator-OneMinus.md) | Subtract an input value from one. | +| [Power Operator](Operator-Power.md) | Raise one input to the power of another input. | +| [Reciprocal Operator](Operator-Reciprocal.md) | Calculate the result of dividing 1 by an input value. | +| [Sign Operator](Operator-Sign.md) | Return whether an input is positive, negative, or 0. | +| [Smoothstep Operator](Operator-Smoothstep.md) | Calculate smooth Hermite interpolation between two values. | +| [Square Root Operator](Operator-SquareRoot.md) | Calculate the square root of an input. | +| [Step Operator](Operator-Step.md) | Compare an input value to a threshold and return whether an input is above or below the threshold | +| [Subtract Operator](Operator-Subtract.md) | Subtract one or more inputs from another input. | ## Additional resources -- [Clamp](Clamp.md) -- [Remap](Remap.md) -- [Math](Math.md) +- [Clamp Operators](Clamp.md) +- [Remap Operators](Remap.md) +- [Math Operators](Math.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Attribute.md b/Packages/com.unity.visualeffectgraph/Documentation~/Attribute.md index 109c928122d..c5dca980919 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Attribute.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Attribute.md @@ -4,10 +4,10 @@ Write values to the [Attributes](Attributes.md) of particles. | **Page** | **Description** | | --- | --- | -| [Curve](Block-SetAttributeFromCurve.md) | Write values to an attribute based on a sample from an Animation Curve or Gradient. | -| [Derived > Calculate Mass from Volume](Block-CalculateMassFromVolume.md) | Set the mass of a particle based on its scale and density. | -| [Map](Block-SetAttributeFromMap.md) | Sample data from textures and store them in attributes. | -| [Set](Block-SetAttribute.md) | Write values to an attribute directly, or use random modes to set attributes to random values. | +| [Curve Block](Block-SetAttributeFromCurve.md) | Write values to an attribute based on a sample from an Animation Curve or Gradient. | +| [Derived > Calculate Mass from Volume Block](Block-CalculateMassFromVolume.md) | Set the mass of a particle based on its scale and density. | +| [Map Block](Block-SetAttributeFromMap.md) | Sample data from textures and store them in attributes. | +| [Set Block](Block-SetAttribute.md) | Write values to an attribute directly, or use random modes to set attributes to random values. | ## Additional resources diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Bitwise.md b/Packages/com.unity.visualeffectgraph/Documentation~/Bitwise.md index 7a300d257ea..30f08cf4eaf 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Bitwise.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Bitwise.md @@ -4,12 +4,12 @@ Perform bitwise logical operations on inputs. | **Page** | **Description** | | --- | --- | -| [And](Operator-BitwiseAnd.md) | Perform a bitwise AND operation, which outputs 1 if both bits are 1. | -| [Complement](Operator-BitwiseComplement.md) | Perform a bitwise NOT operation to invert each bit. | -| [Left Shift](Operator-BitwiseLeftShift.md) | Shift an input value left by a specified number of bits. | -| [Or](Operator-BitwiseOr.md) | Perform a bitwise OR operation, which outputs 1 if either bit is 1. | -| [Right Shift](Operator-BitwiseRightShift.md) | Shift an input value right by a specified number of bits. | -| [Xor](Operator-BitwiseXor.md) | Perform a bitwise XOR operation, which outputs 1 if only one bit is 1. | +| [And Operator](Operator-BitwiseAnd.md) | Perform a bitwise AND operation, which outputs 1 if both bits are 1. | +| [Complement Operator](Operator-BitwiseComplement.md) | Perform a bitwise NOT operation to invert each bit. | +| [Left Shift Operator](Operator-BitwiseLeftShift.md) | Shift an input value left by a specified number of bits. | +| [Or Operator](Operator-BitwiseOr.md) | Perform a bitwise OR operation, which outputs 1 if either bit is 1. | +| [Right Shift Operator](Operator-BitwiseRightShift.md) | Shift an input value right by a specified number of bits. | +| [Xor Operator](Operator-BitwiseXor.md) | Perform a bitwise XOR operation, which outputs 1 if only one bit is 1. | ## Additional resources diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-Burst.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-Burst.md index 61eae65cd74..0f1c24eba02 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-Burst.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-Burst.md @@ -1,9 +1,9 @@ -# Single/Periodic Burst +# Single/Periodic Burst Blocks Menu Path: -- **Spawn > Single Burst** -- **Spawn > Periodic Burst** +- **Spawn** > **Single Burst** +- **Spawn** > **Periodic Burst** The Single/Periodic Burst Block spawns a number of particles instantly either once, or periodically using a delay. When this Block triggers a burst of particles to spawn, it increments the [spawnCount](https://docs.unity3d.com/Documentation/ScriptReference/VFX.VFXSpawnerState-spawnCount.html) instantly. If you change the **Repeat** setting to **Periodic**, this Block changes its name to **Periodic Burst** and spawns bursts of particles after a delay. @@ -11,7 +11,7 @@ The Single/Periodic Burst Block spawns a number of particles instantly either on This Block is compatible with the following Contexts: -- [Spawn](Context-Spawn.md) +- [Spawn Context](Context-Spawn.md) ## Block settings diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-CalculateMassFromVolume.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-CalculateMassFromVolume.md index 28526d30e7a..371788ef402 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-CalculateMassFromVolume.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-CalculateMassFromVolume.md @@ -1,6 +1,6 @@ -# Calculate Mass from Volume +# Calculate Mass from Volume Block -Menu Path : **Attribute > Derived > Calculate Mass from Volume** +Menu Path : **Attribute** > **Derived** > **Calculate Mass from Volume** The **Calculate Mass from Volume** Block sets a particle’s **Mass** attribute based on its volume, derived from the **Scale** attribute and the Block’s **Density** property. This Block is useful for calculating the mass of particles with different scales so they behave believably during physics simulations. @@ -8,8 +8,8 @@ The **Calculate Mass from Volume** Block sets a particle’s **Mass** attribute This Block is compatible with the following Contexts: -- [Initialize](Context-Initialize.md) -- [Update](Context-Update.md) +- [Initialize Context](Context-Initialize.md) +- [Update Context](Context-Update.md) ## Block properties diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-CameraFade.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-CameraFade.md index 2b5ad64e6c9..ab349e6a665 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-CameraFade.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-CameraFade.md @@ -1,4 +1,4 @@ -# Camera Fade +# Camera Fade Block Menu Path : **Output > Camera Fade** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-CollideWithDepthBuffer.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-CollideWithDepthBuffer.md index 8181049fcdb..1f595a59074 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-CollideWithDepthBuffer.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-CollideWithDepthBuffer.md @@ -1,6 +1,6 @@ -# Collide with Depth Buffer +# Collide with Depth Buffer Block -Menu Path : **Collision > Collide with Depth Buffer** +Menu Path : **Collision** > **Collide with Depth Buffer** The **Collide with Depth Buffer** Block makes particles collide with a specific Camera’s depth buffer. This is especially useful for fast moving particles like sparks or rain drops where precise collision is not as important. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-Collision-LandingPage.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-Collision-LandingPage.md index 44c98a1281b..d5e5c0e4a09 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-Collision-LandingPage.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-Collision-LandingPage.md @@ -4,10 +4,10 @@ Configure how particles collide with shapes or the depth buffer. | **Page** | **Description** | | --- | --- | -| [Collision Shape](Block-CollisionShape.md) | Define a shape that particles collide with. | -| [Collide with Depth Buffer](Block-CollideWithDepthBuffer.md) | Make particles collide with a camera's depth buffer. | -| [Kill Shape](Block-KillShape.md) | Define a shape that destroys particles that collide with it. | -| [Trigger Shape](Block-TriggerShape.md) | Define a shape that detects particle collisions and updates collision attributes. | +| [Collision Shape Block](Block-CollisionShape.md) | Define a shape that particles collide with. | +| [Collide with Depth Buffer Block](Block-CollideWithDepthBuffer.md) | Make particles collide with a camera's depth buffer. | +| [Kill Shape Block](Block-KillShape.md) | Define a shape that destroys particles that collide with it. | +| [Trigger Shape Block](Block-TriggerShape.md) | Define a shape that detects particle collisions and updates collision attributes. | ## Additional resources diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-ConformToSignedDistanceField.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-ConformToSignedDistanceField.md index bde589962a5..d57857c2c2d 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-ConformToSignedDistanceField.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-ConformToSignedDistanceField.md @@ -1,4 +1,4 @@ -# Attractor Shape Signed Distance Field +# Attractor Shape Signed Distance Field Block Menu Path : **Force > Attractor Shape Signed Distance Field** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-ConformToSphere.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-ConformToSphere.md index 08618da3648..d95badbf80d 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-ConformToSphere.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-ConformToSphere.md @@ -1,4 +1,4 @@ -# Attractor Shape Sphere +# Attractor Shape Sphere Block Menu Path : **Force > Attractor Shape Sphere** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-ConnectTarget.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-ConnectTarget.md index 3437e37cccd..ebd32f5f3c5 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-ConnectTarget.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-ConnectTarget.md @@ -1,4 +1,4 @@ -# Connect Target +# Connect Target Block Menu Path : **Orientation > Connect Target** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-ConstantRate.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-ConstantRate.md index 46ff602a18c..e270810943f 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-ConstantRate.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-ConstantRate.md @@ -1,6 +1,6 @@ -# Constant Rate +# Constant Rate Block -Menu Path : **Spawn > Constant Rate** +Menu Path : **Spawn** > **Constant Rate** The Constant Rate Block adds a spawn count over time at a constant rate. For instance, if the rate is 10, this Block tiggers 10 spawn events per second for its Spawn Context. A rate below one is also valid, if the rate is 0.5, the rate is once every two seconds. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-CustomHLSL.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-CustomHLSL.md index efd79866d9b..090d669775b 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-CustomHLSL.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-CustomHLSL.md @@ -1,6 +1,6 @@ # Custom HLSL Block -Menu Path : **HLSL > Custom HLSL** +Menu Path : **HLSL** > **Custom HLSL** The **Custom HLSL** Block allows you to write an HLSL function that takes inputs and can read and write to particle attributes. For general information about Custom HLSL nodes, refer to [Custom HLSL Nodes](CustomHLSL-Common.md). diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-FlipbookPlayer.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-FlipbookPlayer.md index 483f1b0c654..b7331b7f317 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-FlipbookPlayer.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-FlipbookPlayer.md @@ -1,4 +1,4 @@ -# Flipbook Player +# Flipbook Player Block Menu Path : **FlipBook > Flipbook Player** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-Force.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-Force.md index 42689d6ddca..538e0d27534 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-Force.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-Force.md @@ -1,4 +1,4 @@ -# Force +# Force Block Menu Path : **Force > Force** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-Gravity.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-Gravity.md index 32fc1fc7c36..b839d087a18 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-Gravity.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-Gravity.md @@ -1,4 +1,4 @@ -# Gravity +# Gravity Block Menu Path : **Force >** **Gravity** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-IncrementStripIndexOnStart.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-IncrementStripIndexOnStart.md index be25f156579..ee54a260f42 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-IncrementStripIndexOnStart.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-IncrementStripIndexOnStart.md @@ -1,6 +1,6 @@ -# Increment Strip Index On Start +# Increment Strip Index On Start Block -Menu Path: **Spawn > Custom > Increment Strip Index On Start** +Menu Path: **Spawn** > **Custom** > **Increment Strip Index On Start** The **Increment Strip Index On Start** Block helps to manage the initialization of Particle Strips. A Particle Strip comprises of linked groups of particles and the amount of these groups is defined by the strip's stripIndex attribute. Each particle with the same stripIndex attribute will a be part of the same strip, incrementing the stripIndex will create a new strip. This Block increments the Particle Strip's stripIndex attribute (unsigned integer) each time the start event of the Spawn Context triggers. This adds a new linked group of particles to the Particle Strip. @@ -12,7 +12,7 @@ The stripIndex attribute returns to zero when a stop event triggers or if stripI This Block is compatible with the following Contexts: -- [Spawn](Context-Spawn.md) +- [Spawn Context](Context-Spawn.md) ## Block properties diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-KillShape.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-KillShape.md index 5cd2cce008f..8cdd11fc210 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-KillShape.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-KillShape.md @@ -11,8 +11,8 @@ If you change the **Behavior** property of the block, the Block changes to the f You can add the Kill Shape Block to the following Contexts: -- [Initialize](Context-Initialize.md) -- [Update](Context-Update.md) +- [Initialize Particle Context](Context-Initialize.md) +- [Update Particle Context](Context-Update.md) To add a Kill Shape Block to your graph, open the graph element menu as described in [Adding graph elements](VisualEffectGraphWindow.md#adding-graph-elements) then select **Collision** > **Kill Shape**. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-LinearDrag.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-LinearDrag.md index 0b78ec9a6ba..8063ac42bd9 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-LinearDrag.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-LinearDrag.md @@ -1,4 +1,4 @@ -# Linear Drag +# Linear Drag Block Menu Path : **Force >** **Linear Drag** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-Orient.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-Orient.md index eeb3c2e5af1..d4aeaa0b7e5 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-Orient.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-Orient.md @@ -1,4 +1,4 @@ -# Orient: Face [Mode] +# Orient: Face [Mode] Block Menu Path : **Orientation > Orient: Face [Mode]** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-ScreenSpaceSize.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-ScreenSpaceSize.md index c1814621994..d48feb3167c 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-ScreenSpaceSize.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-ScreenSpaceSize.md @@ -1,6 +1,6 @@ -# Screen Space Size +# Screen Space Size Block -Menu Path : **Output > Screen Space Size** +Menu Path : **Output** > **Screen Space Size** The **Screen Space Size** Block calculates the scaleXYZ property of each particle to reach a size relative to the pixel size or screen size. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetAttribute.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetAttribute.md index 61457c510f0..32e45bb2b12 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetAttribute.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetAttribute.md @@ -1,4 +1,4 @@ -# Set Attribute +# Set Attribute Block Menu Path : **Attribute > Set > [Add/Blend/Inherit/Multiply/Set] \ ** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetAttributeFromCurve.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetAttributeFromCurve.md index f7b75f987d2..8eb8a62251e 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetAttributeFromCurve.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetAttributeFromCurve.md @@ -1,6 +1,6 @@ -# Set Attribute from Curve/Gradient +# Set Attribute from Curve/Gradient Block -Menu Path : **Attribute > Curve > [Add/Set] \ \** +Menu Path : **Attribute** > **Curve** > **[Add/Set] \ \** The **Set Attribute from Curve/Gradient** Block is a generic Block that allows you to write values to an attribute, based on a sample from an **Animation Curve** or **Gradient**, using composition. This Block can use various sampling modes to do this. The sampling modes are: diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetAttributeFromMap.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetAttributeFromMap.md index e7ac52f8aea..9994e337f53 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetAttributeFromMap.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetAttributeFromMap.md @@ -1,4 +1,4 @@ -# Set Attribute from Map +# Set Attribute from Map Block Menu Path : **Attribute > Set \ From Map** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPosition(Depth).md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPosition(Depth).md index 49c0b96a299..fa873e589b8 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPosition(Depth).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPosition(Depth).md @@ -1,6 +1,6 @@ -# Set Position (Depth) +# Set Position (Depth) Block -Menu Path : **Position > Set Position (Depth)** +Menu Path : **Position** > **Set Position (Depth)** The **Set Position (Depth)** Block calculates a position based on a Camera and its depth buffer then stores the position to the [position attribute](Reference-Attributes.md). diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPosition(Mesh).md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPosition(Mesh).md index 429313d6d91..97f3d0479b3 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPosition(Mesh).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPosition(Mesh).md @@ -1,6 +1,6 @@ -# Set Position (Mesh) +# Set Position (Mesh) Block -Menu Path: **Position > Set Position (Mesh)** +Menu Path: **Position** > **Set Position (Mesh)** Use the **Set Position (Mesh)** Block to set particle positions based on the shape of a mesh. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPosition(Sequential).md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPosition(Sequential).md index c6f18065d05..aef7842c11d 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPosition(Sequential).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPosition(Sequential).md @@ -1,6 +1,6 @@ -# Set Position (Sequential) +# Set Position (Sequential) Block -Menu Path : **Position > Set Position (Sequential : \)** +Menu Path : **Position** > **Set Position (Sequential : \)** The **Set Position (Sequential)** Block calculates a position based on arithmetic sequences and stores the result in the **position** attribute. Optionally, it can also calculate a position based on an offset index in the sequence and store the result in the **targetPosition** attribute. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPosition(SkinnedMesh).md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPosition(SkinnedMesh).md index e4e1aa3343c..321ba1b03dc 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPosition(SkinnedMesh).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPosition(SkinnedMesh).md @@ -1,6 +1,6 @@ -# Set Position (Skinned Mesh) +# Set Position (Skinned Mesh) Block -Menu Path: **Position > Set Position (Skinned Mesh)** +Menu Path: **Position** > **Set Position (Skinned Mesh)** Use the **Set Position (Skinned Mesh)** Block to set particle positions based on the shape of a Skinned Mesh Renderer component. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPositionShape-LandingPage.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPositionShape-LandingPage.md index 19d30f13129..700ec5056c8 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPositionShape-LandingPage.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPositionShape-LandingPage.md @@ -4,12 +4,12 @@ Configure particle positions based on an input. | **Page** | **Description** | |-|-| -| [Set Position (Depth)](Block-SetPosition(Depth).md) | Explore the properties of the Set Position (Depth) block. | -| [Set Position (Mesh)](Block-SetPosition(Mesh).md) | Explore the properties of the Set Position (Mesh) block. | -| [Set Position (Skinned Mesh)](Block-SetPosition(SkinnedMesh).md) | Explore the properties of the Set Position (Skinned Mesh) block. | -| [Set Position Shape Block reference](Block-SetPositionShape.md) | Explore the properties of the Set Position Shape block. | -| [Set Position (Sequential)](Block-SetPosition(Sequential).md) | Explore the properties of the Set Position (Sequential) block. | -| [Tile/Warp Positions](Block-TileWarpPositions.md) | Explore the properties of the Tile/Warp Positions block. | +| [Set Position (Depth) Block](Block-SetPosition(Depth).md) | Explore the properties of the Set Position (Depth) block. | +| [Set Position (Mesh) Block](Block-SetPosition(Mesh).md) | Explore the properties of the Set Position (Mesh) block. | +| [Set Position (Skinned Mesh) Block](Block-SetPosition(SkinnedMesh).md) | Explore the properties of the Set Position (Skinned Mesh) block. | +| [Set Position Shape Block reference Block](Block-SetPositionShape.md) | Explore the properties of the Set Position Shape block. | +| [Set Position (Sequential) Block](Block-SetPosition(Sequential).md) | Explore the properties of the Set Position (Sequential) block. | +| [Tile/Warp Positions Block](Block-TileWarpPositions.md) | Explore the properties of the Tile/Warp Positions block. | ## Additional resources diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPositionShape.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPositionShape.md index 840d471e2b9..2ab560f691e 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPositionShape.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPositionShape.md @@ -1,4 +1,4 @@ -# Set Position Shape Block reference +# Set Position Shape Block The Set Position Shape Block calculates particle positions based on an input shape, then stores them in the [position attribute](Reference-Attributes.md) of particles. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetSpawnEvent.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetSpawnEvent.md index fc18d739443..7aec3c096b4 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetSpawnEvent.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetSpawnEvent.md @@ -1,6 +1,6 @@ -# Set SpawnEvent \ +# Set SpawnEvent Block -Menu Path: **Spawn > Set SpawnEvent \** +Menu Path: **Spawn** > **Set SpawnEvent \** The **Set SpawnEvent** Block modifies the content of attributes stored in the Context [event attribute](https://docs.unity3d.com/2019.3/Documentation/ScriptReference/VFX.VFXSpawnerState-vfxEventAttribute.html). @@ -8,7 +8,7 @@ The **Set SpawnEvent** Block modifies the content of attributes stored in the Co This Block is compatible with the following Contexts: -- [Spawn](Context-Spawn.md) +- [Spawn Context](Context-Spawn.md) ## Block settings diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetSpawnTime.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetSpawnTime.md index 5390a751f96..74acfc7ecba 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetSpawnTime.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetSpawnTime.md @@ -1,6 +1,6 @@ -# Set Spawn Time +# Set Spawn Time Block -Menu Path: **Spawn > Custom > Set Spawn Time** +Menu Path: **Spawn** > **Custom** > **Set Spawn Time** The **Set Spawn Time** Block allows following Initialize Contexts to use the time since the spawn Context’s last play event (see [totalTime](https://docs.unity3d.com/2019.3/Documentation/ScriptReference/VFX.VFXSpawnerState-totalTime.html)). @@ -12,7 +12,7 @@ In this example, the left system uses source spawnTime, which resets for each st This Block is compatible with the following Contexts: -- [Spawn](Context-Spawn.md) +- [Spawn Context](Context-Spawn.md) ## Remarks diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SpawnOverDistance.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SpawnOverDistance.md index eb1105b5257..03632cc83c2 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SpawnOverDistance.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SpawnOverDistance.md @@ -1,6 +1,6 @@ -# Spawn Over Distance +# Spawn Over Distance Block -Menu Path: **Spawn > Custom > Spawn Over Distance** +Menu Path: **Spawn** > **Custom** > **Spawn Over Distance** The **Spawn Over Distance** Block calculates the displacement of a position relative to the previous frame's value. Depending on this size of the displacement and the **Rate Per Unit** property, the system spawns a particle. @@ -10,7 +10,7 @@ The **Spawn Over Distance** Block calculates the displacement of a position rela This Block is compatible with the following Contexts: -- [Spawn](Context-Spawn.md) +- [Spawn Context](Context-Spawn.md) ## Block properties diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SubpixelAntiAliasing.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SubpixelAntiAliasing.md index 260fd474932..83bce0fdc79 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SubpixelAntiAliasing.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SubpixelAntiAliasing.md @@ -1,4 +1,4 @@ -# Subpixel Anti-Aliasing +# Subpixel Anti-Aliasing Block Menu Path : **Output > Subpixel Anti-Aliasing** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-TileWarpPositions.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-TileWarpPositions.md index 5b40d6239c2..b593a1bd49f 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-TileWarpPositions.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-TileWarpPositions.md @@ -1,4 +1,4 @@ -# Tile/Warp Positions +# Tile/Warp Positions Block Menu Path : **Position > Tile Warp Positions** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-TriggerShape.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-TriggerShape.md index 5eaf5600069..1c1b263e24c 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-TriggerShape.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-TriggerShape.md @@ -11,8 +11,8 @@ If you change the **Behavior** property of the block, the Block changes to the f You can add the Trigger Shape Block to the following Contexts: -- [Initialize](Context-Initialize.md) -- [Update](Context-Update.md) +- [Initialize Particle Context](Context-Initialize.md) +- [Update Particle Context](Context-Update.md) To add a Trigger Shape Block to your graph, [open the menu for adding a graph element](VisualEffectGraphWindow.md#adding-graph-elements) then select **Collision** > **Trigger Shape**. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-Turbulence.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-Turbulence.md index 2b71b04d6e0..d33b6a7363b 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-Turbulence.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-Turbulence.md @@ -1,4 +1,4 @@ -# Turbulence +# Turbulence Block Menu Path : **Force > Turbulence** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-UpdatePosition.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-UpdatePosition.md index 9df34d3868a..23998acb0d4 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-UpdatePosition.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-UpdatePosition.md @@ -1,4 +1,4 @@ -# Integration : Update Position +# Integration : Update Position Block Menu Path : **Implicit > Integration : Update Position** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-UpdateRotation.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-UpdateRotation.md index 2a0a325b8a1..966fdecf9fb 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-UpdateRotation.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-UpdateRotation.md @@ -1,4 +1,4 @@ -# Integration : Update Rotation +# Integration : Update Rotation Block Menu Path : **Implicit > Integration : Update Rotation** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-VariableRate.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-VariableRate.md index 2178020986d..70d9691b4eb 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-VariableRate.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-VariableRate.md @@ -1,4 +1,4 @@ -# Variable Rate +# Variable Rate Block Menu Path : **Spawn > Variable Rate** @@ -8,7 +8,7 @@ The Variable Rate Block uses a more advanced approach than the [Constant Rate Bl This Block is compatible with the following Contexts: -- [Spawn](Context-Spawn.md) +- [Spawn Context](Context-Spawn.md) ## Block properties diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-VectorForceField.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-VectorForceField.md index 3179608c24c..0b5e0f4f3e2 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-VectorForceField.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-VectorForceField.md @@ -1,6 +1,6 @@ -# Vector Field Force +# Vector Field Force Block -Menu Path : **Force > Vector Field Force** +Menu Path : **Force** > **Vector Field Force** The **Vector Field Force** Block uses [vector fields](VectorFields.md) to apply a force to the particles. This Block is useful for adding specific forces created in advance and stored in vector field assets. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-VelocityFromDirectionAndSpeed(ChangeSpeed).md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-VelocityFromDirectionAndSpeed(ChangeSpeed).md index 002435e2cb9..9bde4428756 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-VelocityFromDirectionAndSpeed(ChangeSpeed).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-VelocityFromDirectionAndSpeed(ChangeSpeed).md @@ -1,4 +1,4 @@ -# Velocity from Direction & Speed (Change Speed) +# Velocity from Direction & Speed (Change Speed) Block > [!IMPORTANT] > This feature is experimental. To use this feature, open the **Preferences** window, go to the **Visual Effects** tab, and enable **Experimental Operators/Blocks**. @@ -14,8 +14,8 @@ To do this, it scales the direction vector by a speed, and composes it with the This Block is compatible with the following Contexts: -- [Initialize](Context-Initialize.md) -- [Update](Context-Update.md) +- [Initialize Context](Context-Initialize.md) +- [Update Context](Context-Update.md) ## Block settings diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-VelocityFromDirectionAndSpeed(NewDirection).md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-VelocityFromDirectionAndSpeed(NewDirection).md index fc6836a7f59..aab1c3ba095 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-VelocityFromDirectionAndSpeed(NewDirection).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-VelocityFromDirectionAndSpeed(NewDirection).md @@ -1,4 +1,4 @@ -# Velocity from Direction & Speed (New Direction) +# Velocity from Direction & Speed (New Direction) Block > [!IMPORTANT] > This feature is experimental. To use this feature, open the **Preferences** window, go to the **Visual Effects** tab, and enable **Experimental Operators/Blocks**. @@ -15,8 +15,8 @@ The Block then scales the final direction vector by a speed, and composes it wit This Block is compatible with the following Contexts: -- [Initialize](Context-Initialize.md) -- [Update](Context-Update.md) +- [Initialize Context](Context-Initialize.md) +- [Update Context](Context-Update.md) ## Block settings diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-VelocityFromDirectionAndSpeed(RandomDirection).md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-VelocityFromDirectionAndSpeed(RandomDirection).md index 888adb88050..ac2c0982380 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-VelocityFromDirectionAndSpeed(RandomDirection).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-VelocityFromDirectionAndSpeed(RandomDirection).md @@ -1,4 +1,4 @@ -# Velocity from Direction & Speed (Random Direction) +# Velocity from Direction & Speed (Random Direction) Block > [!IMPORTANT] > This feature is experimental. To use this feature, open the **Preferences** window, go to the **Visual Effects** tab, and enable **Experimental Operators/Blocks**. @@ -15,8 +15,8 @@ The Block then scales the final direction vector by a speed, and composes it wit This Block is compatible with the following Contexts: -- [Initialize](Context-Initialize.md) -- [Update](Context-Update.md) +- [Initialize Context](Context-Initialize.md) +- [Update Context](Context-Update.md) ## Block settings diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-VelocityFromDirectionAndSpeed(Tangent).md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-VelocityFromDirectionAndSpeed(Tangent).md index 75b5cddfc4d..bef3184ddc8 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-VelocityFromDirectionAndSpeed(Tangent).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-VelocityFromDirectionAndSpeed(Tangent).md @@ -1,4 +1,4 @@ -# Velocity from Direction & Speed (Tangent) +# Velocity from Direction & Speed (Tangent) Block > [!IMPORTANT] > This feature is experimental. To use this feature, open the **Preferences** window, go to the **Visual Effects** tab, and enable **Experimental Operators/Blocks**. @@ -17,8 +17,8 @@ The Block then scales the final direction vector by a speed, and composes it wit This Block is compatible with the following Contexts: -- [Initialize](Context-Initialize.md) -- [Update](Context-Update.md) +- [Initialize Context](Context-Initialize.md) +- [Update Context](Context-Update.md) ## Block settings diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Builtin.md b/Packages/com.unity.visualeffectgraph/Documentation~/Builtin.md index 08fa076d23e..0bdfab421a4 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Builtin.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Builtin.md @@ -4,12 +4,12 @@ Operators that output time, frame indices, and coordinates. | **Page** | **Description** | | --- | --- | -| [Delta Time](Operator-DeltaTime.md) | Get the time in seconds between the current and previous frames. | -| [Frame Index](Operator-FrameIndex.md) | Get the current frame index. | -| [Local to World](Operator-LocalToWorld.md) | Get a matrix that transforms a point from local space to world space. | -| [System Seed](Operator-SystemSeed.md) | Get the seed used to generate random numbers. | -| [Total Time](Operator-TotalTime.md) | Get the total time since the effect started. | -| [World to Local](Operator-WorldToLocal.md) | Get a matrix that transforms a point from world space to local space. | +| [Delta Time Operator](Operator-DeltaTime.md) | Get the time in seconds between the current and previous frames. | +| [Frame Index Operator](Operator-FrameIndex.md) | Get the current frame index. | +| [Local to World Operator](Operator-LocalToWorld.md) | Get a matrix that transforms a point from local space to world space. | +| [System Seed Operator](Operator-SystemSeed.md) | Get the seed used to generate random numbers. | +| [Total Time Operator](Operator-TotalTime.md) | Get the total time since the effect started. | +| [World to Local Operator](Operator-WorldToLocal.md) | Get a matrix that transforms a point from world space to local space. | ## Additional resources diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Camera.md b/Packages/com.unity.visualeffectgraph/Documentation~/Camera.md index 82d266352db..3e98f9801c8 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Camera.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Camera.md @@ -4,12 +4,12 @@ Output information about cameras, and convert between view space and world space | **Page** | **Description** | | --- | --- | -| [Main Camera](Operator-MainCamera.md) | Get information about the current main camera, including integration with the active Scriptable Render Pipeline. | -| [Viewport to World Point](Operator-ViewportToWorldPoint.md) | Transform a position from viewport space to world space | -| [World to Viewport Point](Operator-WorldToViewportPoint.md) | Transform a position from world space to view space. | +| [Main Camera Operator](Operator-MainCamera.md) | Get information about the current main camera, including integration with the active Scriptable Render Pipeline. | +| [Viewport To World Point Operator](Operator-ViewportToWorldPoint.md) | Transform a position from viewport space to world space | +| [World To Viewport Point Operator](Operator-WorldToViewportPoint.md) | Transform a position from world space to view space. | ## Additional resources -- [Coordinates](Coordinates.md) -- [Geometry](Geometry.md) +- [Coordinates Operator](Coordinates.md) +- [Geometry Operators](Geometry.md) - [Built-in Operators](Builtin.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Clamp.md b/Packages/com.unity.visualeffectgraph/Documentation~/Clamp.md index 61dc923b2bc..9821c376f17 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Clamp.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Clamp.md @@ -4,11 +4,11 @@ Clamp, round, or limit values. | **Page** | **Description** | | --- | --- | -| [Ceiling](Operator-Ceiling.md) | Round an input up to the nearest integer. | -| [Clamp](Operator-Clamp.md) | Limit an input value between a lower and upper bound for each axis. | -| [Discretize](Operator-Discretize.md) | Get the multiple of an input that's closest to a second input. | -| [Floor](Operator-Floor.md) | Round an input value down to the nearest integer. | -| [Maximum](Operator-Maximum.md) | Get the largest value from all input values. | -| [Minimum](Operator-Minimum.md) | Get the smallest value from all input values. | -| [Round](Operator-Round.md) | Round an input value to the nearest integer. | -| [Saturate](Operator-Saturate.md) | Clamp a value between 0 and 1. | +| [Ceiling Operator](Operator-Ceiling.md) | Round an input up to the nearest integer. | +| [Clamp Operator](Operator-Clamp.md) | Limit an input value between a lower and upper bound for each axis. | +| [Discretize Operator](Operator-Discretize.md) | Get the multiple of an input that's closest to a second input. | +| [Floor Operator](Operator-Floor.md) | Round an input value down to the nearest integer. | +| [Maximum Operator](Operator-Maximum.md) | Get the largest value from all input values. | +| [Minimum Operator](Operator-Minimum.md) | Get the smallest value from all input values. | +| [Round Operator](Operator-Round.md) | Round an input value to the nearest integer. | +| [Saturate Operator](Operator-Saturate.md) | Clamp a value between 0 and 1. | diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Color.md b/Packages/com.unity.visualeffectgraph/Documentation~/Color.md index 37b072347b6..495385c2d9d 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Color.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Color.md @@ -4,15 +4,15 @@ Output and convert color values. | **Page** | **Description** | | --- | --- | -| [Color Luma](Operator-ColorLuma.md) | Get the perceived brightness of an input color. | -| [HSV to RGB](Operator-HSVToRGB.md) | Convert hue, saturation, value (HSV) color values to red, green, blue (RGB) color values. | -| [RGB to HSV](Operator-RGBToHSV.md) | Convert red, green, blue (RGB) color values to hue, saturation, value (HSV) color values. | +| [Color Luma Operator](Operator-ColorLuma.md) | Get the perceived brightness of an input color. | +| [HSV to RGB Operator](Operator-HSVToRGB.md) | Convert hue, saturation, value (HSV) color values to red, green, blue (RGB) color values. | +| [RGB to HSV Operator](Operator-RGBToHSV.md) | Convert red, green, blue (RGB) color values to hue, saturation, value (HSV) color values. | ## Additional resources -- [Color](Operator-InlineColor.md) -- [Sample Gradient](Operator-SampleGradient.md) -- [Saturate](Operator-Saturate.md) +- [Color Operator](Operator-InlineColor.md) +- [Sample Gradient Operator](Operator-SampleGradient.md) +- [Saturate Operator](Operator-Saturate.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Constants.md b/Packages/com.unity.visualeffectgraph/Documentation~/Constants.md index 0d4369f97f4..aa360cdb7ac 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Constants.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Constants.md @@ -4,8 +4,8 @@ Get mathematical constants. | **Page** | **Description** | | --- | --- | -| [Epsilon (ε)](Operator-Epsilon.md) | Get a tiny value that you can use to avoid precision issues when you compare float values. | -| [Pi (π)](Operator-Pi.md) | Get the ratio of a circle's circumference to its diameter. | +| [Epsilon (ε) Operator](Operator-Epsilon.md) | Get a tiny value that you can use to avoid precision issues when you compare float values. | +| [Pi (π) Operator](Operator-Pi.md) | Get the ratio of a circle's circumference to its diameter. | ## Additional resources diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-Event.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-Event.md index 44ca39bf6b2..affcb04579f 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Context-Event.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-Event.md @@ -1,4 +1,4 @@ -# Event +# Event Context Menu Path : **Context > Event** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-GPUEvent.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-GPUEvent.md index 69379a3ed72..5ccb875b8db 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Context-GPUEvent.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-GPUEvent.md @@ -1,4 +1,4 @@ -# GPU Event +# GPU Event Context Menu Path : **Context > GPUEvent** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-Initialize.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-Initialize.md index a3f60e88348..5daa310a3f3 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Context-Initialize.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-Initialize.md @@ -1,4 +1,4 @@ -# Initialize +# Initialize Particle Context Menu Path : **Context > Initialize Particle** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputDistortion.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputDistortion.md index da3043839db..d08360f307c 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputDistortion.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputDistortion.md @@ -1,4 +1,4 @@ -# Output Distortion +# Output Distortion Context Menu Path : **Context > Output [Strip/Particle] Distortion [Quad/Mesh]** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputForwardDecal.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputForwardDecal.md index 85b35a42efe..59a0df5147e 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputForwardDecal.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputForwardDecal.md @@ -1,6 +1,6 @@ -# Output Particle Forward Decal +# Output Particle Forward Decal Context -Menu Path : **Context > Output Particle Forward Decal** +Menu Path : **Context** > **Output Particle Forward Decal** The **Output Particle Forward Decal** Context renders a particle system using a decal. A decal is a box into which the Visual Effect Graph projects a texture. Unity then renders the texture on any intersecting geometry along its xy plane. This means decal particles that don’t intersect any geometry are not visible. Note that although they are not visible, they still contribute to the resource intensity required to simulate and render the system. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputLine.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputLine.md index 45463aec405..cce74bb399c 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputLine.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputLine.md @@ -1,6 +1,6 @@ -# Output Particle Line +# Output Particle Line Context -Menu Path : **Context > Output Particle Line** +Menu Path : **Context** > **Output Particle Line** This **Output Particle Line** Context uses lines to render a particle system. Lines are defined by two end-points and are always a single pixel width regardless of the distance of the particle to the camera or the particle's size and scale attributes. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputLitSettings.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputLitSettings.md index 555f74e4e55..26a413902ad 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputLitSettings.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputLitSettings.md @@ -1,4 +1,4 @@ -# Lit Output Settings +# Lit Output Settings Context Menu Path : **Context > Output [Data Type] Lit [Type]** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputMesh.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputMesh.md index b09a8a66174..0eea688287f 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputMesh.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputMesh.md @@ -1,4 +1,4 @@ -# Output Mesh +# Output Mesh Context Menu Path : **Context > Output Mesh** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputParticleHDRPLitDecal.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputParticleHDRPLitDecal.md index 401e40b06df..2f7b37cdc5e 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputParticleHDRPLitDecal.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputParticleHDRPLitDecal.md @@ -1,4 +1,4 @@ -# Output Particle HDRP Lit Decal +# Output Particle HDRP Lit Decal Context The **Output Particle HDRP Lit Decal** Context uses a decal to render a particle system. A decal is a box that the Visual Effect Graph projects a texture into. Unity renders that texture on any geometry that intersects the decal along its xy plane. This means decal particles that don’t intersect any geometry are not visible. When a decal is not visible, it still contributes to the resource intensity required to simulate and render the system. @@ -18,7 +18,7 @@ The particles project their properties along their positive Z-axis. Below is a list of settings and properties specific to the Output Particle HDRP Lit Decal Context. For information about the generic output settings this Context shares with all other Contexts, see [Output Lit Settings and Properties](Context-OutputLitSettings.md). -# Context Settings +## Context Settings | **Input** | **Type** | **Description** | |------------------------------|----------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| @@ -32,7 +32,7 @@ Below is a list of settings and properties specific to the Output Particle HDRP -# Context Properties +## Context Properties | **Input** | **Type** | **Description** | |-----------------------|----------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| @@ -43,7 +43,7 @@ Below is a list of settings and properties specific to the Output Particle HDRP -# Limitations +## Limitations - This Output does not support Shader Graph. - For this Context to work, enable Decals in the HDRP Asset and in the HDRP Settings. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputParticleHDRPVolumetricFog.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputParticleHDRPVolumetricFog.md index 8973887a3f3..b25e691b49a 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputParticleHDRPVolumetricFog.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputParticleHDRPVolumetricFog.md @@ -1,4 +1,4 @@ -# Output Particle HDRP Volumetric Fog +# Output Particle HDRP Volumetric Fog Context The **Output Particle HDRP Volumetric Fog** Context allows for the injection of fog directly into HDRP's volumetric lighting system, resulting in dynamic fog effects created with the VFX graph simulation. @@ -10,7 +10,7 @@ The particle color controls the color of the fog, and the particle alpha control Menu Path : **Context > Output Particle HDRP Volumetric Fog** -# Context Settings +## Context Settings | **Input** | **Type** | **Description** | |------------------------------|----------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| @@ -20,7 +20,7 @@ Menu Path : **Context > Output Particle HDRP Volumetric Fog** | **Use Distance Fading** | Bool | Exposes two ports to control the particle fading. Distance fade consists of a Start and End distance, where the particle alpha is interpolated to 0 (that is, when the particle center distance from the camera equals **Distance Fade Start** the alpha is multiplied by 1, and when the distance reaches **Distance Fade End** it is multiplied by 0). Distance Fading can help prevent small fog particles from flickering. | -# Context Properties +## Context Properties | **Input** | **Type** | **Description** | |-----------------------|----------|-------------------| @@ -33,7 +33,7 @@ Menu Path : **Context > Output Particle HDRP Volumetric Fog** | **Distance Fade End** | Float | Determines the distance from the camera to the particle center where the particle ends fading. | -# Limitations +## Limitations - This Output does not support [Shader Graph](https://docs.unity3d.com/Packages/com.unity.shadergraph@latest). - For this Context to work, enable Volumetric Fog in the HDRP Asset and in the HDRP Global Settings. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputParticleMesh.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputParticleMesh.md index acc4222386a..5e44c2522ac 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputParticleMesh.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputParticleMesh.md @@ -1,4 +1,4 @@ -# Output Particle Mesh +# Output Particle Mesh Context Menu Path : **Context > Output Particle Mesh** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputParticleURPLitDecal.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputParticleURPLitDecal.md index 5e6e772735b..33f90f00acf 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputParticleURPLitDecal.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputParticleURPLitDecal.md @@ -1,4 +1,4 @@ -# Output Particle URP Lit Decal +# Output Particle URP Lit Decal Context The **Output Particle URP Lit Decal** Context uses a decal to render a particle system. A decal is a box that the Visual Effect Graph projects a texture into. Unity renders that texture on any geometry that intersects the decal along its xy plane. This means decal particles that don’t intersect any geometry are not visible. When a decal is not visible, it still contributes to the resource intensity required to simulate and render the system. @@ -21,7 +21,7 @@ The particles project their properties along their positive Z-axis. Below is a list of settings and properties specific to the Output Particle URP Lit Decal Context. For information about the generic output settings this Context shares with all other Contexts, see [Output Lit Settings and Properties](Context-OutputLitSettings.md). -# Context Settings +## Context Settings | **Input** | **Type** | **Description** | | -------------------------- | -------- | ------------------------------------------------------------ | @@ -39,7 +39,7 @@ Below is a list of settings and properties specific to the Output Particle URP L -# Context Properties +## Context Properties | **Input** | **Type** | **Description** | | --------------------- | -------- | ------------------------------------------------------------ | @@ -50,7 +50,7 @@ Below is a list of settings and properties specific to the Output Particle URP L -# Limitations +## Limitations - This Output does not support Shader Graph. - For this Context to work, add the[ Decal Renderer Feature](https://docs.unity3d.com/Packages/com.unity.render-pipelines.universal@latest?subfolder=/manual/renderer-feature-decal.html) to your Renderer. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputPoint.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputPoint.md index 3616c9325b5..3616972a8e4 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputPoint.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputPoint.md @@ -1,5 +1,5 @@ -# Output Particle Point -Menu Path : **Context > Output Particle Point** +# Output Particle Point Context +Menu Path : **Context** > **Output Particle Point** The **Output Particle Point** Context uses points to render a particle system. It always draws points as single pixels regardless of the distance of the particle to the camera or each particle's size and scale attributes. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputPrimitive.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputPrimitive.md index 1d45f63c1f6..cee9d1d91ae 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputPrimitive.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputPrimitive.md @@ -1,6 +1,6 @@ -# Output Particle Primitive +# Output Particle Primitive Context -Menu Path : **Context > Output Particle [Primitive]** +Menu Path : **Context** > **Output Particle [Primitive]** *(Output Particle (Lit) Quad, Output Particle (Lit) Triangle, Output Particle (Lit) Octagon)* The Output Particle primitives (quad/triangle/octagon) Context are the most commonly-used output types and are great for a wide range of effects. They come in a regular (unlit) and a [Lit](Context-OutputLitSettings.md) variety (HDRP-only). diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputShaderGraphMesh.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputShaderGraphMesh.md index d17c193fa7e..8cb9d67c05c 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputShaderGraphMesh.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputShaderGraphMesh.md @@ -1,4 +1,4 @@ -# Output ShaderGraph Mesh +# Output Particle ShaderGraph Mesh Context Menu Path : **Context > Output Particle ShaderGraph Mesh** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputShaderGraphPlanarPrimitive.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputShaderGraphPlanarPrimitive.md index f963b25a63b..3ac1e37a504 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputShaderGraphPlanarPrimitive.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputShaderGraphPlanarPrimitive.md @@ -1,4 +1,4 @@ -# Output ShaderGraph Quad +# Output ShaderGraph Quad Context Menu Path : **Context > Output Particle ShaderGraph Quad** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputShaderGraphStrip.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputShaderGraphStrip.md index c4e1726e84d..82240d1bde9 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputShaderGraphStrip.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputShaderGraphStrip.md @@ -1,6 +1,6 @@ -# Output ShaderGraph Strip +# Output Particle ShaderGraph Strip Context -Menu Path : **Context > Output Particle ShaderGraph Strip** +Menu Path : **Context** > **Output Particle ShaderGraph Strip** [!include[](Snippets/Context-OutputShaderGraph-InlineIntro.md)] diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputSharedSettings.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputSharedSettings.md index 922f4e8ac59..6fcdad52ee5 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputSharedSettings.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputSharedSettings.md @@ -1,4 +1,4 @@ -# Shared output settings and properties +# Shared output settings and properties Context All outputs share these settings and property ports. In case of Shader Graph Output, some settings are actually provided by the Shader Graph Asset. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-Spawn.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-Spawn.md index 74aad6e5a91..b676ac8942e 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Context-Spawn.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-Spawn.md @@ -1,4 +1,4 @@ -# Spawn +# Spawn Context Menu Path : **Context > Spawn** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-Update.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-Update.md index 15cd95b6d8a..f1e896a950d 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Context-Update.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-Update.md @@ -1,4 +1,4 @@ -# Update +# Update Particle Context Menu Path : **Context > Update Particle** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context.md index 5af7ddabebc..0f67d098ad6 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Context.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context.md @@ -4,25 +4,25 @@ Explore the different [Contexts](Contexts.md) you can add to a graph. | **Page** | **Description** | | --- | --- | -| [Event](Context-Event.md) | Define names for events that trigger actions in a graph. | -| [GPU Event](Context-GPUEvent.md) | Spawn new particles from specific Blocks in Update or Initialize Contexts. | -| [Initialize Particle](Context-Initialize.md) | Process an event and initialize new particle elements. | -| [Output Decal](Context-OutputForwardDecal.md) | Render a particle system using a projected decal texture. | -| [Output Distortion](Context-OutputDistortion.md) | In the High Definition Render Pipeline (HDRP), use distortion to simulate effects like heat haze from fire. | -| [Output Line](Context-OutputLine.md) | Render particles as lines. | -| [Output Mesh](Context-OutputMesh.md) | Render a static mesh. | -| [Output Particle HDRP Lit Decal](Context-OutputParticleHDRPLitDecal.md) | Use a decal to render a particle system in HDRP. | -| [Output Particle HDRP Volumetric Fog](Context-OutputParticleHDRPVolumetricFog.md) | Convert particles into a volumetric fog effect in HDRP, to create dynamic fog effects. | -| [Output Particle Mesh](Context-OutputParticleMesh.md) | Render particles as meshes. | -| [Output Particle URP Lit Decal](Context-OutputParticleURPLitDecal.md) | Use a decal to render a particle system in the Universal Render Pipeline (URP). | -| [Output Point](Context-OutputPoint.md) | Render particles as points. | -| [Output Primitive](Context-OutputPrimitive.md) | Render particles as lit quads, triangles, or octagons. | -| [Output ShaderGraph Mesh](Context-OutputShaderGraphMesh.md) | Render particles as a custom Shader Graph mesh. | -| [Output ShaderGraph Quad](Context-OutputShaderGraphPlanarPrimitive.md) | Render particles as a custom Shader Graph quad. | -| [Output ShaderGraph Strip](Context-OutputShaderGraphStrip.md) | Render particles as a custom Shader Graph strip. | -| [Shared output settings](SharedOutputSettings.md) | Explore the settings that appear in all Contexts. | -| [Spawn](Context-Spawn.md) | Control the spawn rate of particles, or create a custom spawning behavior. | -| [Update Particle](Context-Update.md) | Manage the behavior of particles or particle strips from an Initialize Context. | +| [Event Context](Context-Event.md) | Define names for events that trigger actions in a graph. | +| [GPU Event Context](Context-GPUEvent.md) | Spawn new particles from specific Blocks in Update or Initialize Contexts. | +| [Initialize Particle Context](Context-Initialize.md) | Process an event and initialize new particle elements. | +| [Output Decal Context](Context-OutputForwardDecal.md) | Render a particle system using a projected decal texture. | +| [Output Distortion Context](Context-OutputDistortion.md) | In the High Definition Render Pipeline (HDRP), use distortion to simulate effects like heat haze from fire. | +| [Output Line Context](Context-OutputLine.md) | Render particles as lines. | +| [Output Mesh Context](Context-OutputMesh.md) | Render a static mesh. | +| [Output Particle HDRP Lit Decal Context](Context-OutputParticleHDRPLitDecal.md) | Use a decal to render a particle system in HDRP. | +| [Output Particle HDRP Volumetric Fog Context](Context-OutputParticleHDRPVolumetricFog.md) | Convert particles into a volumetric fog effect in HDRP, to create dynamic fog effects. | +| [Output Particle Mesh Context](Context-OutputParticleMesh.md) | Render particles as meshes. | +| [Output Particle URP Lit Decal Context](Context-OutputParticleURPLitDecal.md) | Use a decal to render a particle system in the Universal Render Pipeline (URP). | +| [Output Point Context](Context-OutputPoint.md) | Render particles as points. | +| [Output Primitive Context](Context-OutputPrimitive.md) | Render particles as lit quads, triangles, or octagons. | +| [Output ShaderGraph Mesh Context](Context-OutputShaderGraphMesh.md) | Render particles as a custom Shader Graph mesh. | +| [Output ShaderGraph Quad Context](Context-OutputShaderGraphPlanarPrimitive.md) | Render particles as a custom Shader Graph quad. | +| [Output ShaderGraph Strip Context](Context-OutputShaderGraphStrip.md) | Render particles as a custom Shader Graph strip. | +| [Shared output settings Context](SharedOutputSettings.md) | Explore the settings that appear in all Contexts. | +| [Spawn Context](Context-Spawn.md) | Control the spawn rate of particles, or create a custom spawning behavior. | +| [Update Particle Context](Context-Update.md) | Manage the behavior of particles or particle strips from an Initialize Context. | ## Additional resources diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Coordinates.md b/Packages/com.unity.visualeffectgraph/Documentation~/Coordinates.md index ea214d4ce8c..22b1372b544 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Coordinates.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Coordinates.md @@ -1,17 +1,17 @@ -# Coordinate Operators +# Coordinates Operators Convert between coordinate systems. | **Page** | **Description** | | --- | --- | -| [Polar to Rectangular](Operator-PolarToRectangular.md) | Convert from polar coordinates to rectangular xy coordinates. | -| [Rectangular to Polar](Operator-RectangularToPolar.md) | Convert from rectangular xy coordinates to polar coordinates. | -| [Rectangular to Spherical](Operator-RectangularToSpherical.md) | Convert from rectangular xyz coordinates to spherical coordinates. | -| [Spherical to Rectangular](Operator-SphericalToRectangular.md) | Convert from spherical coordinates to rectangular XYZ coordinates. | +| [Polar to Rectangular Operator](Operator-PolarToRectangular.md) | Convert from polar coordinates to rectangular xy coordinates. | +| [Rectangular to Polar Operator](Operator-RectangularToPolar.md) | Convert from rectangular xy coordinates to polar coordinates. | +| [Rectangular to Spherical Operator](Operator-RectangularToSpherical.md) | Convert from rectangular xyz coordinates to spherical coordinates. | +| [Spherical to Rectangular Operator](Operator-SphericalToRectangular.md) | Convert from spherical coordinates to rectangular XYZ coordinates. | ## Additional resources -- [Change Space](Operator-ChangeSpace.md) -- [Transform (Position)](Operator-Transform(Position).md) -- [Local to World](Operator-LocalToWorld.md) +- [Change Space Operator](Operator-ChangeSpace.md) +- [Transform (Position) Operator](Operator-Transform(Position).md) +- [Local to World Operator](Operator-LocalToWorld.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/CustomSpawn.md b/Packages/com.unity.visualeffectgraph/Documentation~/CustomSpawn.md index e1d8b3c9c31..771aed45de1 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/CustomSpawn.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/CustomSpawn.md @@ -4,13 +4,13 @@ Customize advanced behavior for spawning particles. | **Page** | **Description** | | --- | --- | -| [Increment Strip Index On Start](Block-IncrementStripIndexOnStart.md) | Create a new group of particles each time the start event of the Spawn Context triggers. | -| [Set Spawn Time](Block-SetSpawnTime.md) | Allow Initialize Contexts to use the time since the previous play event of the Spawn Context. | -| [Spawn Over Distance](Block-SpawnOverDistance.md) | Spawn particles based on the distance moved since the previous frame. | +| [Increment Strip Index On Start Block](Block-IncrementStripIndexOnStart.md) | Create a new group of particles each time the start event of the Spawn Context triggers. | +| [Set Spawn Time Block](Block-SetSpawnTime.md) | Allow Initialize Contexts to use the time since the previous play event of the Spawn Context. | +| [Spawn Over Distance Block](Block-SpawnOverDistance.md) | Spawn particles based on the distance moved since the previous frame. | ## Additional resources -- [Spawn](Context-Spawn.md) +- [Spawn Context](Context-Spawn.md) - [Spawner Callbacks](SpawnerCallbacks.md) - [Events](Events.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Force.md b/Packages/com.unity.visualeffectgraph/Documentation~/Force.md index 1b0ad8f8a6c..55e72016fb1 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Force.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Force.md @@ -4,13 +4,13 @@ Apply and control forces on particles, such as gravity and turbulence. | **Page** | **Description** | | --- | --- | -| [Attractor Shape Signed Distance Field](Block-ConformToSignedDistanceField.md) | Pull particles towards a complex shape. | -| [Attractor Shape Sphere](Block-ConformToSphere.md) | Pull particles towards a sphere. | -| [Force](Block-Force.md) | Apply a force to particles by changing their velocity. | -| [Gravity](Block-Gravity.md) | Apply gravity to particles by changing their velocity. | -| [Linear Drag](Block-LinearDrag.md) | Slow particles down without affecting their direction. | -| [Turbulence](Block-Turbulence.md) | Add natural-looking motion to particles. | -| [Vector Force Field](Block-VectorForceField.md) | Apply specific forces to particles using a vector field. | +| [Attractor Shape Signed Distance Field Block](Block-ConformToSignedDistanceField.md) | Pull particles towards a complex shape. | +| [Attractor Shape Sphere Block](Block-ConformToSphere.md) | Pull particles towards a sphere. | +| [Force Block](Block-Force.md) | Apply a force to particles by changing their velocity. | +| [Gravity Block](Block-Gravity.md) | Apply gravity to particles by changing their velocity. | +| [Linear Drag Block](Block-LinearDrag.md) | Slow particles down without affecting their direction. | +| [Turbulence Block](Block-Turbulence.md) | Add natural-looking motion to particles. | +| [Vector Force Field Block](Block-VectorForceField.md) | Apply specific forces to particles using a vector field. | ## Additional resources diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Geometry.md b/Packages/com.unity.visualeffectgraph/Documentation~/Geometry.md index 8dc84da86b8..78bb1c393ae 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Geometry.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Geometry.md @@ -4,24 +4,24 @@ Perform geometric calculations and transformations. | **Page** | **Description** | | --- | --- | -| [Area (Circle)](Operator-Area(Circle).md) | Calculate the area of a circle. | -| [Change Space](Operator-ChangeSpace.md) | Convert a vector from local space to world space. | -| [Distance (Line)](Operator-Distance(Line).md) | Calculate the distance between a position and the closest point on a line. | -| [Distance (Plane)](Operator-Distance(Plane).md) | Calculate the distance between a position and the closest point on a plane. | -| [Distance (Sphere)](Operator-Distance(Sphere).md) | Calculate the distance between a position and the closest point on a sphere. | -| [InvertTRS (Matrix)](Operator-InvertTRS(Matrix).md) | Invert a matrix that contains translation, rotation, and scaling. | -| [Transform (Direction)](Operator-Transform(Direction).md) | Change the position, rotation, or scale of a direction vector. | -| [Transform (Matrix)](Operator-Transform(Matrix).md) | Change the position, rotation, or scale of a matrix. | -| [Transform (Position)](Operator-Transform(Position).md) | Change the position, rotation, or scale of a position. | -| [Transform (Vector)](Operator-Transform(Vector).md) | Change the position, rotation, or scale of a vector. | -| [Transform (Vector4)](Operator-Transform(Vector4).md) | Change the position, rotation, or scale of a Vector4. | -| [Transpose (Matrix)](Operator-Transpose(Matrix).md) | Flip a matrix across its diagonal, to swap columns with rows. | -| [Volume (Axis Aligned Box)](Operator-Volume(AxisAlignedBox).md) | Calculate the volume of an axis-aligned box. | -| [Volume (Cone)](Operator-Volume(Cone).md) | Calculate the volume of a cone. | -| [Volume (Cylinder)](Operator-Volume(Cylinder).md) | Calculate the volume of a cylinder. | -| [Volume (Oriented Box)](Operator-Volume(OrientedBox).md) | Calculate the volume of an oriented box. | -| [Volume (Sphere)](Operator-Volume(Sphere).md) | Calculate the volume of a sphere. | -| [Volume (Torus)](Operator-Volume(Torus).md) | Calculate the volume of a torus. | +| [Area (Circle) Operator](Operator-Area(Circle).md) | Calculate the area of a circle. | +| [Change Space Operator](Operator-ChangeSpace.md) | Convert a vector from local space to world space. | +| [Distance (Line) Operator](Operator-Distance(Line).md) | Calculate the distance between a position and the closest point on a line. | +| [Distance (Plane) Operator](Operator-Distance(Plane).md) | Calculate the distance between a position and the closest point on a plane. | +| [Distance (Sphere) Operator](Operator-Distance(Sphere).md) | Calculate the distance between a position and the closest point on a sphere. | +| [InvertTRS (Matrix) Operator](Operator-InvertTRS(Matrix).md) | Invert a matrix that contains translation, rotation, and scaling. | +| [Transform (Direction) Operator](Operator-Transform(Direction).md) | Change the position, rotation, or scale of a direction vector. | +| [Transform (Matrix) Operator](Operator-Transform(Matrix).md) | Change the position, rotation, or scale of a matrix. | +| [Transform (Position) Operator](Operator-Transform(Position).md) | Change the position, rotation, or scale of a position. | +| [Transform (Vector) Operator](Operator-Transform(Vector).md) | Change the position, rotation, or scale of a vector. | +| [Transform (Vector4) Operator](Operator-Transform(Vector4).md) | Change the position, rotation, or scale of a Vector4. | +| [Transpose (Matrix) Operator](Operator-Transpose(Matrix).md) | Flip a matrix across its diagonal, to swap columns with rows. | +| [Volume (Axis Aligned Box) Operator](Operator-Volume(AxisAlignedBox).md) | Calculate the volume of an axis-aligned box. | +| [Volume (Cone) Operator](Operator-Volume(Cone).md) | Calculate the volume of a cone. | +| [Volume (Cylinder) Operator](Operator-Volume(Cylinder).md) | Calculate the volume of a cylinder. | +| [Volume (Oriented Box) Operator](Operator-Volume(OrientedBox).md) | Calculate the volume of an oriented box. | +| [Volume (Sphere) Operator](Operator-Volume(Sphere).md) | Calculate the volume of a sphere. | +| [Volume (Torus) Operator](Operator-Volume(Torus).md) | Calculate the volume of a torus. | ## Additional resources diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Implicit.md b/Packages/com.unity.visualeffectgraph/Documentation~/Implicit.md index f60a6095f58..35a648a067e 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Implicit.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Implicit.md @@ -4,8 +4,8 @@ Update the position and rotation of particles. | **Page** | **Description** | | --- | --- | -| [Integration: Update Position](Block-UpdatePosition.md) | Update the positions of particles. | -| [Integration: Update Rotation](Block-UpdateRotation.md) | Update the rotation of particles. | +| [Integration: Update Position Block](Block-UpdatePosition.md) | Update the positions of particles. | +| [Integration: Update Rotation Block](Block-UpdateRotation.md) | Update the rotation of particles. | ## Additional resources diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Inline.md b/Packages/com.unity.visualeffectgraph/Documentation~/Inline.md index 32469a03974..fab846dab3f 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Inline.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Inline.md @@ -4,43 +4,43 @@ Store values, vectors, shapes, and textures in a graph. | **Page** | **Description** | | --- | --- | -| [AABox](Operator-InlineAABox.md) | Store an axis-aligned 3D box. | -| [AnimationCurve](Operator-InlineAnimationCurve.md) | Store an animation curve. | -| [ArcCircle](Operator-InlineArcCircle.md) | Store a segment of a circle. | -| [ArcCone](Operator-InlineArcCone.md) | Store a segment of a cone. | -| [ArcSphere](Operator-InlineArcSphere.md) | Store a segment of a sphere. | -| [ArcTorus](Operator-InlineArcTorus.md) | Store a segment of a torus. | -| [bool](Operator-Inlinebool.md) | Store a Boolean. | -| [Camera](Operator-InlineCamera.md) | Store a camera. | -| [Circle](Operator-InlineCircle.md) | Store a circle. | -| [Color](Operator-InlineColor.md) | Store a color. | -| [Cone](Operator-InlineCone.md) | Store a cone. | -| [Cubemap](Operator-InlineCubemap.md) | Store a cubemap texture. | -| [CubemapArray](Operator-InlineCubemapArray.md) | Store a cubemap array. | -| [Cylinder](Operator-InlineCylinder.md) | Store a cylinder. | -| [Direction](Operator-InlineDirection.md) | Store a direction. | -| [FlipBook](Operator-InlineFlipBook.md) | Store a flipbook texture. | -| [float](Operator-Inlinefloat.md) | Store a float. | -| [Gradient](Operator-InlineGradient.md) | Store a gradient. | -| [int](Operator-Inlineint.md) | Store an integer. | -| [Line](Operator-InlineLine.md) | Store a line. | -| [Matrix4x4](Operator-InlineMatrix4x4.md) | Store a 4x4 matrix. | -| [Mesh](Operator-InlineMesh.md) | Store a mesh. | -| [OrientedBox](Operator-InlineOrientedBox.md) | Store an oriented box. | -| [Plane](Operator-InlinePlane.md) | Store a plane. | -| [Position](Operator-InlinePosition.md) | Store a position. | -| [Sphere](Operator-InlineSphere.md) | Store a sphere. | -| [TerrainType](Operator-InlineTerrainType.md) | Store a terrain type. | -| [Texture2D](Operator-InlineTexture2D.md) | Store a 2D texture. | -| [Texture2DArray](Operator-InlineTexture2DArray.md) | Store a 2D texture array. | -| [Texture3D](Operator-InlineTexture3D.md) | Store a 3D texture. | -| [Torus](Operator-InlineTorus.md) | Store a torus. | -| [Transform](Operator-InlineTransform.md) | Store position, rotation, and scale. | -| [uint](Operator-Inlineuint.md) | Store an unsigned integer. | -| [Vector](Operator-InlineVector.md) | Store a vector with one dimension. | -| [Vector2](Operator-InlineVector2.md) | Store a vector with two dimensions. | -| [Vector3](Operator-InlineVector3.md) | Store a vector with three dimensions. | -| [Vector4](Operator-InlineVector4.md) | Store a vector with four dimensions. | +| [AABox Operator](Operator-InlineAABox.md) | Store an axis-aligned 3D box. | +| [AnimationCurve Operator](Operator-InlineAnimationCurve.md) | Store an animation curve. | +| [ArcCircle Operator](Operator-InlineArcCircle.md) | Store a segment of a circle. | +| [ArcCone Operator](Operator-InlineArcCone.md) | Store a segment of a cone. | +| [ArcSphere Operator](Operator-InlineArcSphere.md) | Store a segment of a sphere. | +| [ArcTorus Operator](Operator-InlineArcTorus.md) | Store a segment of a torus. | +| [bool Operator](Operator-Inlinebool.md) | Store a Boolean. | +| [Camera Operator](Operator-InlineCamera.md) | Store a camera. | +| [Circle Operator](Operator-InlineCircle.md) | Store a circle. | +| [Color Operator](Operator-InlineColor.md) | Store a color. | +| [Cone Operator](Operator-InlineCone.md) | Store a cone. | +| [Cubemap Operator](Operator-InlineCubemap.md) | Store a cubemap texture. | +| [CubemapArray Operator](Operator-InlineCubemapArray.md) | Store a cubemap array. | +| [Cylinder Operator](Operator-InlineCylinder.md) | Store a cylinder. | +| [Direction Operator](Operator-InlineDirection.md) | Store a direction. | +| [FlipBook Operator](Operator-InlineFlipBook.md) | Store a flipbook texture. | +| [float Operator](Operator-Inlinefloat.md) | Store a float. | +| [Gradient Operator](Operator-InlineGradient.md) | Store a gradient. | +| [int Operator](Operator-Inlineint.md) | Store an integer. | +| [Line Operator](Operator-InlineLine.md) | Store a line. | +| [Matrix4x4 Operator](Operator-InlineMatrix4x4.md) | Store a 4x4 matrix. | +| [Mesh Operator](Operator-InlineMesh.md) | Store a mesh. | +| [OrientedBox Operator](Operator-InlineOrientedBox.md) | Store an oriented box. | +| [Plane Operator](Operator-InlinePlane.md) | Store a plane. | +| [Position Operator](Operator-InlinePosition.md) | Store a position. | +| [Sphere Operator](Operator-InlineSphere.md) | Store a sphere. | +| [TerrainType Operator](Operator-InlineTerrainType.md) | Store a terrain type. | +| [Texture2D Operator](Operator-InlineTexture2D.md) | Store a 2D texture. | +| [Texture2DArray Operator](Operator-InlineTexture2DArray.md) | Store a 2D texture array. | +| [Texture3D Operator](Operator-InlineTexture3D.md) | Store a 3D texture. | +| [Torus Operator](Operator-InlineTorus.md) | Store a torus. | +| [Transform Operator](Operator-InlineTransform.md) | Store position, rotation, and scale. | +| [uint Operator](Operator-Inlineuint.md) | Store an unsigned integer. | +| [Vector Operator](Operator-InlineVector.md) | Store a vector with one dimension. | +| [Vector2 Operator](Operator-InlineVector2.md) | Store a vector with two dimensions. | +| [Vector3 Operator](Operator-InlineVector3.md) | Store a vector with three dimensions. | +| [Vector4 Operator](Operator-InlineVector4.md) | Store a vector with four dimensions. | ## Additional resources diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Logic.md b/Packages/com.unity.visualeffectgraph/Documentation~/Logic.md index 438262896cb..5db8dbcc7aa 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Logic.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Logic.md @@ -4,14 +4,14 @@ Perform Boolean operations and conditional branching. | **Page** | **Description** | | --- | --- | -| [And](Operator-LogicAnd.md) | Output `true` if both inputs are `true`. | -| [Branch](Operator-Branch.md) | Test a Boolean and return different values for `true` and `false`. | -| [Compare](Operator-Compare.md) | Compare two floats based on a condition and return the result as a Boolean. | -| [Nand](Operator-LogicNand.md) | Output `true` if at least one input is `false`. | -| [Nor](Operator-LogicNor.md) | Output `true` if both inputs are `false`. | -| [Not](Operator-LogicNot.md) | Output `true` if an input is `false`, and vice versa. | -| [Or](Operator-LogicOr.md) | Output `true` if either input is `true`. | -| [Switch](Operator-Switch.md) | Compare an input to case values, and output a value depending on the case. | +| [And Operator](Operator-LogicAnd.md) | Output `true` if both inputs are `true`. | +| [Branch Operator](Operator-Branch.md) | Test a Boolean and return different values for `true` and `false`. | +| [Compare Operator](Operator-Compare.md) | Compare two floats based on a condition and return the result as a Boolean. | +| [Nand Operator](Operator-LogicNand.md) | Output `true` if at least one input is `false`. | +| [Nor Operator](Operator-LogicNor.md) | Output `true` if both inputs are `false`. | +| [Not Operator](Operator-LogicNot.md) | Output `true` if an input is `false`, and vice versa. | +| [Or Operator](Operator-LogicOr.md) | Output `true` if either input is `true`. | +| [Switch Operator](Operator-Switch.md) | Compare an input to case values, and output a value depending on the case. | ## Additional resources diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Math.md b/Packages/com.unity.visualeffectgraph/Documentation~/Math.md index 735e80e7615..f843aede157 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Math.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Math.md @@ -4,17 +4,17 @@ Perform calculations, conversions, and transformations. | **Page** | **Description** | | --- | --- | -| [Arithmetic](Arithmetic.md) | Perform mathematical calculations on input data. | -| [Clamp](Clamp.md) | Clamp, round, or limit values. | -| [Constants](Constants.md) | Get mathematical constants. | -| [Coordinates](Coordinates.md) | Convert between coordinate systems. | -| [Exp](Operator-Exp.md) | Raise a number to a specified power. | -| [Geometry](Geometry.md) | Perform geometric calculations and transformations. | -| [Log](Operator-Log.md) | Calculate the logarithm of a number. | -| [Remap](Remap.md) | Remap values between ranges. | -| [Trigonometry](Trigonometry.md) | Perform trigonometric calculations. | -| [Vector](Vector.md) | Perform vector and matrix calculations. | -| [Wave](Wave.md) | Generate waveforms, for example to control the behavior of particles over time. | +| [Arithmetic Operators](Arithmetic.md) | Perform mathematical calculations on input data. | +| [Clamp Operators](Clamp.md) | Clamp, round, or limit values. | +| [Constants Operators](Constants.md) | Get mathematical constants. | +| [Coordinates Operators](Coordinates.md) | Convert between coordinate systems. | +| [Exp Operator](Operator-Exp.md) | Raise a number to a specified power. | +| [Geometry Operators](Geometry.md) | Perform geometric calculations and transformations. | +| [Log Operator](Operator-Log.md) | Calculate the logarithm of a number. | +| [Remap Operators](Remap.md) | Remap values between ranges. | +| [Trigonometry Operators](Trigonometry.md) | Perform trigonometric calculations. | +| [Vector Operators](Vector.md) | Perform vector and matrix calculations. | +| [Wave Operators](Wave.md) | Generate waveforms, for example to control the behavior of particles over time. | ## Additional resources diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Noise.md b/Packages/com.unity.visualeffectgraph/Documentation~/Noise.md index 59356967320..5e36ce936d3 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Noise.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Noise.md @@ -4,12 +4,12 @@ Generate procedural noise patterns, for example to control the behavior of parti | **Page** | **Description** | | --- | --- | -| [Cellular Noise](Operator-CellularNoise.md) | Generate noise with cell-like patterns. | -| [Perlin Noise](Operator-PerlinNoise.md) | Generate noise with a smooth, natural variation. | -| [Value Noise](Operator-ValueNoise.md) | Generate noise with simple interpolated values. | -| [Cellular Curl Noise](Operator-CellularCurlNoise.md) | Create cell-like patterns that simulate fluid or gas. | -| [Perlin Curl Noise](Operator-PerlinCurlNoise.md) | Generate noise that simulates a fluid or gas with smooth variations. | -| [Value Curl Noise](Operator-ValueCurlNoise.md) | Generate noise that simulates a fluid or gas with simple interpolated values. | +| [Cellular Noise Operator](Operator-CellularNoise.md) | Generate noise with cell-like patterns. | +| [Perlin Noise Operator](Operator-PerlinNoise.md) | Generate noise with a smooth, natural variation. | +| [Value Noise Operator](Operator-ValueNoise.md) | Generate noise with simple interpolated values. | +| [Cellular Curl Noise Operator](Operator-CellularCurlNoise.md) | Create cell-like patterns that simulate fluid or gas. | +| [Perlin Curl Noise Operator](Operator-PerlinCurlNoise.md) | Generate noise that simulates a fluid or gas with smooth variations. | +| [Value Curl Noise Operator](Operator-ValueCurlNoise.md) | Generate noise that simulates a fluid or gas with simple interpolated values. | ## Additional resources diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Absolute.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Absolute.md index 8951cd310ac..d8614355e65 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Absolute.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Absolute.md @@ -1,4 +1,4 @@ -# Absolute +# Absolute Operator Menu Path : **Operator > Math > Arithmetic > Absolute** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Acos.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Acos.md index cf3f952416a..ca49f249d69 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Acos.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Acos.md @@ -1,4 +1,4 @@ -# Acos +# Acos Operator Menu Path : **Operator > Math > Trigonometry > Acos** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Add.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Add.md index 9fffef5744e..fc548ca8b75 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Add.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Add.md @@ -1,4 +1,4 @@ -# Add +# Add Operator Menu Path : **Operator > Math > Arithmetic > Add** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-AgeOverLifetime.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-AgeOverLifetime.md index b36ca7b2d9b..c5b5da64b15 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-AgeOverLifetime.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-AgeOverLifetime.md @@ -1,4 +1,4 @@ -# Age Over Lifetime +# Age Over Lifetime Operator Menu Path : **Operator > Attribute > Age over Lifetime** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-AppendVector.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-AppendVector.md index 0a7af6a0bb2..276a5efbad3 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-AppendVector.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-AppendVector.md @@ -1,4 +1,4 @@ -# Append Vector +# Append Vector Operator Menu Path : **Operator > Math > Vector** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Area(Circle).md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Area(Circle).md index 11d40767e0c..078f6ab877f 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Area(Circle).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Area(Circle).md @@ -1,4 +1,4 @@ -# Area (Circle) +# Area (Circle) Operator Menu Path : **Operator > Math > Geometry > Area (Circle)** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Asin.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Asin.md index 4e4f39c63f2..74bbf4e297e 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Asin.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Asin.md @@ -1,4 +1,4 @@ -# Asin +# Asin Operator Menu Path : **Operator > Math > Trigonometry > Asin** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Atan.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Atan.md index 63e1f6e7432..456d97680ff 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Atan.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Atan.md @@ -1,4 +1,4 @@ -# Atan +# Atan Operator Menu Path : **Operator > Math > Trigonometry > Atan** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Atan2.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Atan2.md index d3dd918e813..f750fed3e6a 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Atan2.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Atan2.md @@ -1,4 +1,4 @@ -# Atan2 +# Atan2 Operator Menu Path : **Operator > Math > Trigonometry > Atan2** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BitwiseAnd.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BitwiseAnd.md index a877a7445b0..10564ffd7f9 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BitwiseAnd.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BitwiseAnd.md @@ -1,6 +1,6 @@ -# And (Bitwise) +# And (Bitwise) Operator -Menu Path : **Operator > Bitwise > And** +Menu Path : **Operator** > **Bitwise** > **And** The **And** Operator takes two inputs and outputs the result of a bitwise *And* operation between them. For each bit in **A** and **B**, if both are **1**, the output is **1**. Otherwise, the output is **0**. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BitwiseComplement.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BitwiseComplement.md index a298c4e4064..6ad5367e85f 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BitwiseComplement.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BitwiseComplement.md @@ -1,6 +1,6 @@ -# Complement (Bitwise) +# Complement (Bitwise) Operator -Menu Path : **Operator > Bitwise > Complement** +Menu Path : **Operator** > **Bitwise** > **Complement** The **Complement** Operator applies a bitwise logical *NOT* operation to each bit of a number in its binary form. This inverts each bit, meaning bits that are 0 become 1 and bits that are 1 become 0. For example: diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BitwiseLeftShift.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BitwiseLeftShift.md index 46e5afe5c6d..6ff512a7cbe 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BitwiseLeftShift.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BitwiseLeftShift.md @@ -1,6 +1,6 @@ -# Left Shift (Bitwise) +# Left Shift (Bitwise) Operator -Menu Path : **Operator > Bitwise > Left Shift** +Menu Path : **Operator** > **Bitwise** > **Left Shift** The **Left Shift** Operator shifts the first input's value left by the number of bits defined in the second input. During the shift, this Operator discards the most-significant bit and inserts a 0 on the right. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BitwiseOr.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BitwiseOr.md index cd76c66fbe8..f8690be1c55 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BitwiseOr.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BitwiseOr.md @@ -1,6 +1,6 @@ -# Or (Bitwise) +# Or (Bitwise) Operator -Menu Path : **Operator > Bitwise > Or** +Menu Path : **Operator** > **Bitwise** > **Or** The **Or** Operator takes two inputs and outputs the result of a bitwise *or* operation between them. For each bit in **A** and **B**, if either is **1**, the output is **1**. Otherwise, the output is **0**. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BitwiseRightShift.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BitwiseRightShift.md index 7605a70f0d3..8a23a4da892 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BitwiseRightShift.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BitwiseRightShift.md @@ -1,6 +1,6 @@ -# Right Shift (Bitwise) +# Right Shift (Bitwise) Operator -Menu Path : **Operator > Bitwise > Right Shift** +Menu Path : **Operator** > **Bitwise** > **Right Shift** The **Right Shift** Operator shifts the first input's value right by the number of bits defined in the second input. During the shift, this Operator discards the least-significant bit and inserts a 0 on the left. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BitwiseXor.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BitwiseXor.md index 3d67cb646d4..04cc2259718 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BitwiseXor.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BitwiseXor.md @@ -1,6 +1,6 @@ -# Xor (Bitwise) +# Xor (Bitwise) Operator -Menu Path : **Operator > Bitwise > Xor** +Menu Path : **Operator** > **Bitwise** > **Xor** The Xor Operator takes two inputs and outputs the result of a bitwise logical Xor operation to each bit of a number in its binary form. For each bit in **A** and **B**, if only one of them is **1**, the output is **1**. If both of them are **1** or neither of them are **1**, the output is **0**. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Branch.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Branch.md index af2a9cb4342..1098e3a03a2 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Branch.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Branch.md @@ -1,4 +1,4 @@ -# Branch +# Branch Operator Menu Path : **Operator > Logic > Branch** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BufferCount.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BufferCount.md index c19ad3c3441..5157bfeee79 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BufferCount.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-BufferCount.md @@ -1,4 +1,4 @@ -# Buffer Count +# Buffer Count Operator **Menu Path : Operator > Sampling > Buffer Count** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Ceiling.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Ceiling.md index 10bd71a3e5c..5c82cdf6123 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Ceiling.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Ceiling.md @@ -1,4 +1,4 @@ -# Ceiling +# Ceiling Operator Menu Path : **Operator > Math > Clamp > Ceiling** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-CellularCurlNoise.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-CellularCurlNoise.md index 9ef33e37d61..2145d67ec49 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-CellularCurlNoise.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-CellularCurlNoise.md @@ -1,4 +1,4 @@ -# Cellular Curl Noise +# Cellular Curl Noise Operator Menu Path : **Operator > Noise > Cellular Curl Noise** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-CellularNoise.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-CellularNoise.md index c59161dd5b6..ae62e8ea42e 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-CellularNoise.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-CellularNoise.md @@ -1,4 +1,4 @@ -# Cellular Noise +# Cellular Noise Operator Menu Path : **Operator > Noise > Cellular Noise** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-ChangeSpace.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-ChangeSpace.md index 68284da2a1f..64e30155511 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-ChangeSpace.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-ChangeSpace.md @@ -1,4 +1,4 @@ -# Change Space +# Change Space Operator Menu Path : **Operator > Math > Geometry > Change Space** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Clamp.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Clamp.md index f5d83e7aeb7..b0d982e3fa3 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Clamp.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Clamp.md @@ -1,4 +1,4 @@ -# Clamp +# Clamp Operator Menu Path : **Operator > Math > Clamp > Clamp** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-ColorLuma.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-ColorLuma.md index fb44b29aa28..4444294da73 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-ColorLuma.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-ColorLuma.md @@ -1,4 +1,4 @@ -# Color Luma +# Color Luma Operator Menu Path : **Operator > Color > Color Luma** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Compare.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Compare.md index 9c836592c7c..ddaefcc3033 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Compare.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Compare.md @@ -1,4 +1,4 @@ -# Compare +# Compare Operator Menu Path : **Operator > Logic > Compare** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-ConstructMatrix.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-ConstructMatrix.md index 97baf7bc513..2a9c42fa7ae 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-ConstructMatrix.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-ConstructMatrix.md @@ -1,4 +1,4 @@ -# Construct Matrix +# Construct Matrix Operator Menu Path : **Operator > Math > Vector** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Cosine.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Cosine.md index 45577f4893a..b3e7433ce25 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Cosine.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Cosine.md @@ -1,4 +1,4 @@ -# Cosine +# Cosine Operator Menu Path : **Operator > Math > Trigonometry > Cosine** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-CrossProduct.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-CrossProduct.md index bb6bc6851da..86ddacaef7a 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-CrossProduct.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-CrossProduct.md @@ -1,4 +1,4 @@ -# Cross Product +# Cross Product Operator Menu Path : **Operator > Math > Vector** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-CustomHLSL.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-CustomHLSL.md index 3eb137a2ce1..50f28a10ea8 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-CustomHLSL.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-CustomHLSL.md @@ -1,6 +1,6 @@ # Custom HLSL Operator -Menu Path : **Operator > HLSL > Custom HLSL** +Menu Path : **Operator** > **HLSL** > **Custom HLSL** The **Custom HLSL Operator** allows you to write an HLSL function that takes **inputs** and produce **outputs**. For general information about Custom HLSL nodes, refer to [Custom HLSL Nodes](CustomHLSL-Common.md). diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-DeltaTime.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-DeltaTime.md index 3727498afb2..e37effd589c 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-DeltaTime.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-DeltaTime.md @@ -1,4 +1,4 @@ -# Delta Time +# Delta Time Operator Menu Path : **Operator > BuiltIn > DeltaTime** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Discretize.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Discretize.md index b2b28967db9..84fbe81d076 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Discretize.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Discretize.md @@ -1,4 +1,4 @@ -# Discretize +# Discretize Operator Menu Path : **Operator > Math > Clamp > Discretize** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Distance(Line).md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Distance(Line).md index 2fff43f95ec..b2db1dbfe8d 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Distance(Line).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Distance(Line).md @@ -1,6 +1,6 @@ -# Distance (Line) +# Distance (Line) Operator -Menu Path : **Operator > Math > Geometry > Distance (Line)** +Menu Path : **Operator** > **Math** > **Geometry** > **Distance (Line)** The **Distance (Line)** Operator takes a line and a position and calculates: diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Distance(Plane).md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Distance(Plane).md index 572c768a071..4741ac39379 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Distance(Plane).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Distance(Plane).md @@ -1,6 +1,6 @@ -# Distance (Plane) +# Distance (Plane) Operator -Menu Path : **Operator > Math > Geometry > Distance (Plane)** +Menu Path : **Operator** > **Math** > **Geometry** > **Distance (Plane)** The **Distance (Plane)** Operator Operator takes a plane and a position and calculates: diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Distance(Sphere).md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Distance(Sphere).md index 1b680ae9b95..d5d6c4e54bf 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Distance(Sphere).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Distance(Sphere).md @@ -1,6 +1,6 @@ -# Distance (Sphere) +# Distance (Sphere) Operator -Menu Path : **Operator > Math > Geometry > Distance (Sphere)** +Menu Path : **Operator** > **Math** > **Geometry** > **Distance (Sphere)** The **Distance (Sphere)** Operator takes a sphere and a position and calculates: diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Distance.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Distance.md index 430fc7d089a..93141996055 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Distance.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Distance.md @@ -1,4 +1,4 @@ -# Distance +# Distance Operator Menu Path : **Operator > Math > Vector** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Divide.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Divide.md index 505cfe4b3b7..2bde2eb03c0 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Divide.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Divide.md @@ -1,4 +1,4 @@ -# Divide +# Divide Operator Menu Path : **Operator > Math > Arithmetic > Divide** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-DotProduct.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-DotProduct.md index 883cb36b049..07c91f51068 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-DotProduct.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-DotProduct.md @@ -1,4 +1,4 @@ -# Dot Product +# Dot Product Operator Menu Path : **Operator > Math > Vector** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Epsilon.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Epsilon.md index 06336da98e6..1817c248918 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Epsilon.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Epsilon.md @@ -1,6 +1,6 @@ -# Epsilon (Ɛ) +# Epsilon (Ɛ) Operator -Menu Path : **Operator > Math > Constants > Epsilon (Ɛ)** +Menu Path : **Operator** > **Math** > **Constants** > **Epsilon (Ɛ)** The **Epsilon (Ɛ)** Operator returns a tiny value. This is useful for comparisons as it can help to avoid potential precision issues with floats. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Exp.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Exp.md index 4c975d7eaca..46cd6f11971 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Exp.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Exp.md @@ -1,4 +1,4 @@ -# Exp +# Exp Operator Menu Path : **Operator > Math > Exp** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Floor.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Floor.md index 82dd96493d6..23ccae64a8c 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Floor.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Floor.md @@ -1,4 +1,4 @@ -# Floor +# Floor Operator Menu Path : **Operator > Math > Clamp > Floor** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Fractional.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Fractional.md index 62190be948e..72025b96f75 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Fractional.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Fractional.md @@ -1,4 +1,4 @@ -# Fractional +# Fractional Operator Menu Path : **Operator > Math > Arithmetic > Fractional** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-FrameIndex.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-FrameIndex.md index bd86be5e477..0ceb74b8b96 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-FrameIndex.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-FrameIndex.md @@ -1,4 +1,4 @@ -# Frame Index +# Frame Index Operator Menu Path : **Operator > BuiltIn > Frame Index** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAge.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAge.md index 7f6a76fb630..322051699f6 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAge.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAge.md @@ -1,4 +1,4 @@ -# Get Attribute: age +# Get Attribute: age Operator Menu Path : **Operator > Attribute > Get Attribute: age** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAlive.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAlive.md index 1605d9b0e81..6bc884c4b22 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAlive.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAlive.md @@ -1,4 +1,4 @@ -# Get Attribute: alive +# Get Attribute: alive Operator Menu Path : **Operator > Attribute > Get Attribute: alive** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAlpha.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAlpha.md index 250161d505a..170bef39627 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAlpha.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAlpha.md @@ -1,4 +1,4 @@ -# Get Attribute: alpha +# Get Attribute: alpha Operator Menu Path : **Operator > Attribute > Get Attribute: alpha** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAngle.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAngle.md index a7058d6836f..d7189776643 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAngle.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAngle.md @@ -1,4 +1,4 @@ -# Get Attribute: angle +# Get Attribute: angle Operator Menu Path : **Operator > Attribute > Get Attribute: angle** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAngularVelocity.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAngularVelocity.md index 35bec2fb855..80755a53c71 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAngularVelocity.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAngularVelocity.md @@ -1,4 +1,4 @@ -# Get Attribute: angularVelocity +# Get Attribute: angularVelocity Operator Menu Path : **Operator > Attribute > Get Attribute: angularVelocity** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAxisX.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAxisX.md index 385d6641013..7ecf4b9d373 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAxisX.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAxisX.md @@ -1,4 +1,4 @@ -# Get Attribute: axisX +# Get Attribute: axisX Operator Menu Path : **Operator > Attribute > Get Attribute: axisX** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAxisY.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAxisY.md index d1dc2bf5a5b..88ad1d7bec9 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAxisY.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAxisY.md @@ -1,4 +1,4 @@ -# Get Attribute: axisY +# Get Attribute: axisY Operator Menu Path : **Operator > Attribute > Get Attribute: axisY** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAxisZ.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAxisZ.md index d5db0e5b8f5..909970228d9 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAxisZ.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeAxisZ.md @@ -1,4 +1,4 @@ -# Get Attribute: axisZ +# Get Attribute: axisZ Operator Menu Path : **Operator > Attribute > Get Attribute: axisZ** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeColor.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeColor.md index 48a50e1cf90..39538ef56fd 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeColor.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeColor.md @@ -1,4 +1,4 @@ -# Get Attribute: color +# Get Attribute: color Operator Menu Path : **Operator > Attribute > Get Attribute: color** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeDirection.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeDirection.md index a86187f2e76..f95b057d5dc 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeDirection.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeDirection.md @@ -1,4 +1,4 @@ -# Get Attribute: direction +# Get Attribute: direction Operator Menu Path : **Operator > Attribute > Get Attribute: direction** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeLifetime.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeLifetime.md index cc8f207f9b0..fbd89cd3e46 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeLifetime.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeLifetime.md @@ -1,4 +1,4 @@ -# Get Attribute: lifetime +# Get Attribute: lifetime Operator Menu Path : **Operator > Attribute > Get Attribute: lifetime** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeMass.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeMass.md index d32f068eb9d..8df87adb84e 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeMass.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeMass.md @@ -1,4 +1,4 @@ -# Get Attribute: mass +# Get Attribute: mass Operator Menu Path : **Operator > Attribute > Get Attribute: mass** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeOldPosition.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeOldPosition.md index ef3f964ad8d..845883b6a18 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeOldPosition.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeOldPosition.md @@ -1,4 +1,4 @@ -# Get Attribute: oldPosition +# Get Attribute: oldPosition Operator Menu Path : **Operator > Attribute > Get Attribute: oldPosition** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeParticleCountInStrip.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeParticleCountInStrip.md index 1dd65640b2d..8eb59fc5230 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeParticleCountInStrip.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeParticleCountInStrip.md @@ -1,4 +1,4 @@ -# Get Attribute: particleCountInStrip +# Get Attribute: particleCountInStrip Operator Menu Path : **Operator > Attribute > Get Attribute: particleCountInStrip** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeParticleID.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeParticleID.md index b3dc11284fc..e364b26d3ad 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeParticleID.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeParticleID.md @@ -1,6 +1,6 @@ -# Get Attribute: particleID +# Get Attribute: particleID Operator -Menu Path : **Operator > Attribute > Get Attribute: particleID** +Menu Path : **Operator** > **Attribute** > **Get Attribute: particleID** The **Get Attribute: particleID** returns the particleID, which is a [standard attribute](Reference-Attributes.md), of a simulated element depending on [Location](Attributes.md#attribute-locations). This Operator outputs a unique ID which identifies the particle. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeParticleIndexInStrip.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeParticleIndexInStrip.md index ab4863c75f5..f14adcb8e3c 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeParticleIndexInStrip.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeParticleIndexInStrip.md @@ -1,4 +1,4 @@ -# Get Attribute: particleIndexInStrip +# Get Attribute: particleIndexInStrip Operator Menu Path : **Operator > Attribute > Get Attribute: particleIndexInStrip** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributePivot.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributePivot.md index 11b574630ae..b7ee970fc6c 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributePivot.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributePivot.md @@ -1,4 +1,4 @@ -# Get Attribute: pivot +# Get Attribute: pivot Operator Menu Path : **Operator > Attribute > Get Attribute: pivot** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributePosition.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributePosition.md index 3d51ed458aa..c3e96a10041 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributePosition.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributePosition.md @@ -1,4 +1,4 @@ -# Get Attribute: position +# Get Attribute: position Operator Menu Path : **Operator > Attribute > Get Attribute: position** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeScale.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeScale.md index bae38ec5418..1d46ef5c0ef 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeScale.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeScale.md @@ -1,4 +1,4 @@ -# Get Attribute: scale +# Get Attribute: scale Operator Menu Path : **Operator > Attribute > Get Attribute: scale** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeSeed.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeSeed.md index ce149a31350..48feeea9663 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeSeed.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeSeed.md @@ -1,4 +1,4 @@ -# Get Attribute: seed +# Get Attribute: seed Operator Menu Path : **Operator > Attribute > Get Attribute: seed** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeSize.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeSize.md index 28343244459..50601eb25dd 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeSize.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeSize.md @@ -1,4 +1,4 @@ -# Get Attribute: size +# Get Attribute: size Operator Menu Path : **Operator > Attribute > Get Attribute: size** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeSpawnIndex.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeSpawnIndex.md index b272a3cdb14..fb8ac3ed94b 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeSpawnIndex.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeSpawnIndex.md @@ -1,4 +1,4 @@ -# Get Attribute: spawnIndex +# Get Attribute: spawnIndex Operator Menu Path : **Operator > Attribute > Get Attribute: spawnIndex** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeSpawnTime.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeSpawnTime.md index bb413034515..a823b608f3f 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeSpawnTime.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeSpawnTime.md @@ -1,4 +1,4 @@ -# Get Attribute: spawnTime +# Get Attribute: spawnTime Operator Menu Path : **Operator > Attribute > Get Attribute: spawnTime** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeStripIndex.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeStripIndex.md index f261833cf64..c74a2001601 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeStripIndex.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeStripIndex.md @@ -1,4 +1,4 @@ -# Get Attribute: stripIndex +# Get Attribute: stripIndex Operator Menu Path : **Operator > Attribute > Get Attribute: stripIndex** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeTargetPosition.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeTargetPosition.md index e69d5be153a..75fc65834c2 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeTargetPosition.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeTargetPosition.md @@ -1,4 +1,4 @@ -# Get Attribute: targetPosition +# Get Attribute: targetPosition Operator Menu Path : **Operator > Attribute > Get Attribute: targetPosition** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeTexIndex.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeTexIndex.md index 92b973f220b..6849d9e5b4f 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeTexIndex.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeTexIndex.md @@ -1,4 +1,4 @@ -# Get Attribute: texIndex +# Get Attribute: texIndex Operator Menu Path : **Operator > Attribute > Get Attribute: texIndex** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeVelocity.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeVelocity.md index 23b22c00c46..e355cf2ade9 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeVelocity.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeVelocity.md @@ -1,4 +1,4 @@ -# Get Attribute: velocity +# Get Attribute: velocity Operator Menu Path : **Operator > Attribute > Get Attribute: velocity** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetCustomAttribute.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetCustomAttribute.md index 752c5afb635..90e02aebb1e 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetCustomAttribute.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetCustomAttribute.md @@ -1,4 +1,4 @@ -# Get Custom Attribute +# Get Custom Attribute Operator Menu Path : **Operator > Attribute > Get Custom Attribute** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetTextureDimensions.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetTextureDimensions.md index e801f35ec81..5b6b5def191 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetTextureDimensions.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetTextureDimensions.md @@ -1,4 +1,4 @@ -# Get Texture Dimensions +# Get Texture Dimensions Operator Menu Path : **Operator > Sampling > Get Texture Dimensions** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-HSVToRGB.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-HSVToRGB.md index aacdc2c31e6..cd6eb36aa17 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-HSVToRGB.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-HSVToRGB.md @@ -1,6 +1,6 @@ -# HSV to RGB +# HSV to RGB Operator -Menu Path : **Operator > Color > HSV to RGB** +Menu Path : **Operator** > **Color** > **HSV to RGB** The **HSV to RGB** Operator converts HSV (Hue, Saturation, Value) color values to RGB (Red, Green, Blue) color values. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineAABox.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineAABox.md index b81845cd6ec..9bf7df0c8aa 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineAABox.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineAABox.md @@ -1,4 +1,4 @@ -# AABox +# AABox Operator Menu Path : **Operator > Inline > AABox** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineAnimationCurve.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineAnimationCurve.md index f94b22d6821..265f4a2e8d5 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineAnimationCurve.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineAnimationCurve.md @@ -1,4 +1,4 @@ -# AnimationCurve +# AnimationCurve Operator Menu Path : **Operator > Inline > AnimationCurve** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineArcCircle.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineArcCircle.md index c19b59a315c..bb5cd9a267b 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineArcCircle.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineArcCircle.md @@ -1,4 +1,4 @@ -# ArcCircle +# ArcCircle Operator Menu Path : **Operator > Inline > ArcCircle** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineArcCone.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineArcCone.md index 6032ca10a03..efb49e06d57 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineArcCone.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineArcCone.md @@ -1,4 +1,4 @@ -# ArcCone +# ArcCone Operator Menu Path : **Operator > Inline > ArcCone** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineArcSphere.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineArcSphere.md index 665440d73f1..70b56e80e3c 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineArcSphere.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineArcSphere.md @@ -1,4 +1,4 @@ -# ArcSphere +# ArcSphere Operator Menu Path : **Operator > Inline > ArcSphere** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineArcTorus.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineArcTorus.md index 61a68583cd2..985227f3812 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineArcTorus.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineArcTorus.md @@ -1,4 +1,4 @@ -# ArcTorus +# ArcTorus Operator Menu Path : **Operator > Inline > ArcTorus** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineCamera.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineCamera.md index 7d10cca4e73..75d764c9b54 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineCamera.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineCamera.md @@ -1,4 +1,4 @@ -# Camera +# Camera Operator Menu Path : **Operator > Inline > Camera** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineCircle.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineCircle.md index c32e35d8ed3..595873f52c8 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineCircle.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineCircle.md @@ -1,4 +1,4 @@ -# Circle +# Circle Operator Menu Path : **Operator > Inline > Circle** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineColor.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineColor.md index 30cdac5230f..2c8de901fb1 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineColor.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineColor.md @@ -1,4 +1,4 @@ -# Color +# Color Operator Menu Path : **Operator > Inline > Color** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineCone.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineCone.md index 445ed1d1b70..bd27958d00b 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineCone.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineCone.md @@ -1,4 +1,4 @@ -# Cone +# Cone Operator Menu Path : **Operator > Inline > Cone** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineCubemap.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineCubemap.md index 2e0d128c42d..2771449a5e4 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineCubemap.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineCubemap.md @@ -1,4 +1,4 @@ -# Cubemap +# Cubemap Operator Menu Path : **Operator > Inline > Cubemap** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineCubemapArray.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineCubemapArray.md index 42a93e47259..eb49fe89e4d 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineCubemapArray.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineCubemapArray.md @@ -1,4 +1,4 @@ -# CubemapArray +# CubemapArray Operator Menu Path : **Operator > Inline > CubemapArray** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineCylinder.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineCylinder.md index c8daa9b3a6f..af5c0eaa88e 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineCylinder.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineCylinder.md @@ -1,4 +1,4 @@ -# Cylinder +# Cylinder Operator Menu Path : **Operator > Inline > Cylinder** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineDirection.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineDirection.md index 2ca9f75840c..2e0edc63182 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineDirection.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineDirection.md @@ -1,4 +1,4 @@ -# Direction +# Direction Operator Menu Path : **Operator > Inline > Direction** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineFlipBook.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineFlipBook.md index ddc14ae1dc5..3908dbda363 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineFlipBook.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineFlipBook.md @@ -1,4 +1,4 @@ -# FlipBook +# FlipBook Operator Menu Path : **Operator > Inline > FlipBook** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineGradient.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineGradient.md index 21b3f3079c0..80ba967ef6d 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineGradient.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineGradient.md @@ -1,4 +1,4 @@ -# Gradient +# Gradient Operator Menu Path : **Operator > Inline > Gradient** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineLine.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineLine.md index cd8d76bc2f5..f915f36b18f 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineLine.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineLine.md @@ -1,4 +1,4 @@ -# Line +# Line Operator Menu Path : **Operator > Inline > Line** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineMatrix4x4.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineMatrix4x4.md index fa006a55769..99bbcd9e251 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineMatrix4x4.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineMatrix4x4.md @@ -1,4 +1,4 @@ -# Matrix4x4 +# Matrix4x4 Operator Menu Path : **Operator > Inline > Matrix4x4** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineMesh.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineMesh.md index 49ebefcdee6..da945533398 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineMesh.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineMesh.md @@ -1,4 +1,4 @@ -# Mesh +# Mesh Operator Menu Path : **Operator > Inline > Mesh** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineOrientedBox.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineOrientedBox.md index 63ac75e6c8d..a459508bd0b 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineOrientedBox.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineOrientedBox.md @@ -1,4 +1,4 @@ -# OrientedBox +# OrientedBox Operator Menu Path : **Operator > Inline > OrientedBox** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlinePlane.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlinePlane.md index 5b9024a2a40..f9bd89c4439 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlinePlane.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlinePlane.md @@ -1,4 +1,4 @@ -# Plane +# Plane Operator Menu Path : **Operator > Inline > Plane** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlinePosition.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlinePosition.md index ced05f1451a..bad76ffc24f 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlinePosition.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlinePosition.md @@ -1,4 +1,4 @@ -# Position +# Position Operator Menu Path : **Operator > Inline > Position** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineSphere.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineSphere.md index 069c6fa4f0f..2542088b34a 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineSphere.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineSphere.md @@ -1,4 +1,4 @@ -# Sphere +# Sphere Operator Menu Path : **Operator > Inline > Sphere** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineTerrainType.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineTerrainType.md index 22946da5580..5ef468db656 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineTerrainType.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineTerrainType.md @@ -1,4 +1,4 @@ -# TerrainType +# TerrainType Operator Menu Path : **Operator > Inline > TerrainType** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineTexture2D.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineTexture2D.md index ab81c063d82..63ac5421275 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineTexture2D.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineTexture2D.md @@ -1,4 +1,4 @@ -# Texture2D +# Texture2D Operator Menu Path : **Operator > Inline > Texture2D** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineTexture2DArray.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineTexture2DArray.md index 631b0f5b1f8..fbeec1fa681 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineTexture2DArray.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineTexture2DArray.md @@ -1,4 +1,4 @@ -# Texture2DArray +# Texture2DArray Operator Menu Path : **Operator > Inline > Texture2DArray** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineTexture3D.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineTexture3D.md index 69d5dc39236..bf1406fc429 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineTexture3D.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineTexture3D.md @@ -1,4 +1,4 @@ -# Texture3D +# Texture3D Operator Menu Path : **Operator > Inline > Texture3D** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineTorus.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineTorus.md index 0a3c86f103b..91be0e8d6be 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineTorus.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineTorus.md @@ -1,4 +1,4 @@ -# Torus +# Torus Operator Menu Path : **Operator > Inline > Torus** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineTransform.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineTransform.md index 60b59b8c014..470629fc9d2 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineTransform.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineTransform.md @@ -1,4 +1,4 @@ -# Transform +# Transform Operator Menu Path : **Operator > Inline > Transform** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineVector.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineVector.md index 552d283683c..1c2a118e22b 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineVector.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineVector.md @@ -1,4 +1,4 @@ -# Vector +# Vector Operator Menu Path : **Operator > Inline > Vector** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineVector2.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineVector2.md index f24dff7e6e1..2714ea59a2a 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineVector2.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineVector2.md @@ -1,4 +1,4 @@ -# Vector2 +# Vector2 Operator Menu Path : **Operator > Inline > Vector2** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineVector3.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineVector3.md index b355a5dde08..0842c3d895f 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineVector3.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineVector3.md @@ -1,4 +1,4 @@ -# Vector3 +# Vector3 Operator Menu Path : **Operator > Inline > Vector3** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineVector4.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineVector4.md index 42fe8fc7cc1..49cdc123a67 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineVector4.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InlineVector4.md @@ -1,4 +1,4 @@ -# Vector4 +# Vector4 Operator Menu Path : **Operator > Inline > Vector4** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Inlinebool.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Inlinebool.md index 3d523519dab..00955197306 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Inlinebool.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Inlinebool.md @@ -1,4 +1,4 @@ -# bool +# bool Operator Menu Path : **Operator > Inline > bool** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Inlinefloat.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Inlinefloat.md index b7a4af326db..34e1e456acb 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Inlinefloat.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Inlinefloat.md @@ -1,4 +1,4 @@ -# float +# float Operator Menu Path : **Operator > Inline > float** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Inlineint.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Inlineint.md index 3b276fa5ce7..b3c7fd3d226 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Inlineint.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Inlineint.md @@ -1,4 +1,4 @@ -# int +# int Operator Menu Path : **Operator > Inline > int** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Inlineuint.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Inlineuint.md index b28b9428c5c..ee8f592a57e 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Inlineuint.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Inlineuint.md @@ -1,4 +1,4 @@ -# uint +# uint Operator Menu Path : **Operator > Inline > uint** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InverseLerp.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InverseLerp.md index 37c3abee25c..a31182407b9 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InverseLerp.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InverseLerp.md @@ -1,4 +1,4 @@ -# Inverse Lerp +# Inverse Lerp Operator Menu Path : **Operator > Math > Arithmetic > Inverse Lerp** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InvertTRS(Matrix).md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InvertTRS(Matrix).md index 571a4f84726..8ccfbda43dc 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InvertTRS(Matrix).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-InvertTRS(Matrix).md @@ -1,6 +1,6 @@ -# InvertTRS (Matrix) +# InvertTRS (Matrix) Operator -Menu Path : **Operator > Math > Geometry > InvertTRS (Matrix)** +Menu Path : **Operator** > **Math** > **Geometry** > **InvertTRS (Matrix)** The **Invert TRS (Matrix)** Operator inverts a TRS (Translation, Rotation, and Scaling) matrix. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Length.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Length.md index 64140e4889b..29e0e4d58dc 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Length.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Length.md @@ -1,6 +1,6 @@ -# Length +# Length Operator -Menu Path : **Operator > Math > Vector** +Menu Path : **Operator** > **Math** > **Vector** The **Length** [uniform Operator](Operators.md#uniform-operators) calculates the length of a 1D, 2D, or 3D vector. If you input a Vector4, this Operator ignores the fourth value of the vector. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Lerp.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Lerp.md index 395937cdb78..c089c3a1a2a 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Lerp.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Lerp.md @@ -1,4 +1,4 @@ -# Lerp +# Lerp Operator Menu Path : **Operator > Math > Arithmetic > Lerp** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LoadCameraBuffer.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LoadCameraBuffer.md index e9e9c926580..50c813202b9 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LoadCameraBuffer.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LoadCameraBuffer.md @@ -1,4 +1,4 @@ -# Load CameraBuffer +# Load CameraBuffer Operator Menu Path : **Operator > Sampling > Load CameraBuffer** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LoadTexture2D.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LoadTexture2D.md index 5d234bec165..51257437fe3 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LoadTexture2D.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LoadTexture2D.md @@ -1,4 +1,4 @@ -# Load Texture2D +# Load Texture2D Operator Menu Path : **Operator > Sampling > Load Texture2D** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LoadTexture2DArray.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LoadTexture2DArray.md index 09c99ddbecf..43e71d0f1e4 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LoadTexture2DArray.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LoadTexture2DArray.md @@ -1,4 +1,4 @@ -# Load Texture2DArray +# Load Texture2DArray Operator Menu Path : **Operator > Sampling > Load Texture2DArray** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LoadTexture3D.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LoadTexture3D.md index b2b6beb490e..4204e5c2e4b 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LoadTexture3D.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LoadTexture3D.md @@ -1,4 +1,4 @@ -# Load Texture3D +# Load Texture3D Operator Menu Path : **Operator > Sampling > Load Texture3D** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LocalToWorld.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LocalToWorld.md index 1b2ad1e2b79..c6a013fc202 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LocalToWorld.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LocalToWorld.md @@ -1,6 +1,6 @@ -# Local To World +# Local To World Operator -Menu Path : **Operator > BuiltIn > Local To World** +Menu Path : **Operator** > **BuiltIn** > **Local To World** The **Local To World** Operator provides a matrix to transform a point from local space to world space. This is the functionally the same as calling [Transform.localToWorldMatrix](https://docs.unity3d.com/ScriptReference/Transform-localToWorldMatrix.html) on the parent Transform object. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Log.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Log.md index c45384e2eb2..3bf1294aeac 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Log.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Log.md @@ -1,4 +1,4 @@ -# Log +# Log Operator Menu Path : **Operator > Math > Log** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LogicAnd.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LogicAnd.md index 82fd3267bcf..0418244bb6e 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LogicAnd.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LogicAnd.md @@ -1,4 +1,4 @@ -# And (Logic) +# And (Logic) Operator Menu Path : **Operator > Logic > And** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LogicNand.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LogicNand.md index 6082fa490ed..2631bcb93a7 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LogicNand.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LogicNand.md @@ -1,6 +1,6 @@ -# Nand (Logic) +# Nand (Logic) Operator -Menu Path : **Operator > Logic > Nand** +Menu Path : **Operator** > **Logic** > **Nand** The **Nand** Operator takes two inputs and outputs the result of a logical *nand* operation between them. *Nand* is a composite operation that first calculates the *not* of the inputs and then calculates the *and* of the results. The result of A **Nand** B is `true` if both A and B are `false`. This Operator is equivalent to the C# `!` operator followed by the `&&` operator. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LogicNor.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LogicNor.md index f95b1442e94..14af0afd028 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LogicNor.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LogicNor.md @@ -1,4 +1,4 @@ -# Nor (Logic) +# Nor (Logic) Operator Menu Path : **Operator > Logic > Nor** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LogicNot.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LogicNot.md index 8eebbca06ec..b4214107bae 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LogicNot.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LogicNot.md @@ -1,4 +1,4 @@ -# Not (Logic) +# Not (Logic) Operator Menu Path : **Operator > Logic > Not** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LogicOr.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LogicOr.md index df3f3c0b468..32adf16f9c4 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LogicOr.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LogicOr.md @@ -1,4 +1,4 @@ -# Or (Logic) +# Or (Logic) Operator Menu Path : **Operator > Logic > Or** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LookAT.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LookAT.md index cf14ba9c260..9956d7b2c0b 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LookAT.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-LookAT.md @@ -1,4 +1,4 @@ -# Look At +# Look At Operator Menu Path : **Operator > Math > Vector** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-MainCamera.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-MainCamera.md index 4486a004304..97b1f914fff 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-MainCamera.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-MainCamera.md @@ -1,4 +1,4 @@ -# Main Camera +# Main Camera Operator Menu Path : **Operator > BuiltIn > Main Camera** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Maximum.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Maximum.md index b4bb3fd9859..04e1ccd4209 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Maximum.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Maximum.md @@ -1,4 +1,4 @@ -# Maximum +# Maximum Operator Menu Path : **Operator > Math > Clamp > Maximum** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-MeshIndexCount.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-MeshIndexCount.md index 030207966f3..a0bc1c5f611 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-MeshIndexCount.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-MeshIndexCount.md @@ -1,4 +1,4 @@ -# Get Mesh Index Count +# Get Mesh Index Count Operator Menu Path: **Operator > Sampling > Get Mesh Index Count** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-MeshTriangleCount.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-MeshTriangleCount.md index b02017042b5..e98b46136e3 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-MeshTriangleCount.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-MeshTriangleCount.md @@ -1,4 +1,4 @@ -# Get Mesh Triangle Count +# Get Mesh Triangle Count Operator Menu Path: **Operator > Sampling > Get Mesh Triangle Count** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-MeshVertexCount.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-MeshVertexCount.md index d6075cefed6..80b3cc6610b 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-MeshVertexCount.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-MeshVertexCount.md @@ -1,4 +1,4 @@ -# Get Mesh Vertex Count +# Get Mesh Vertex Count Operator Menu Path: **Operator > Sampling > Get Mesh Vertex Count** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Minimum.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Minimum.md index dd23f04d91c..27102edbd00 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Minimum.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Minimum.md @@ -1,4 +1,4 @@ -# Minimum +# Minimum Operator Menu Path : **Operator > Math > Clamp > Minimum** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Modulo.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Modulo.md index 9129bb26194..32356e241c2 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Modulo.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Modulo.md @@ -1,4 +1,4 @@ -# Modulo +# Modulo Operator Menu Path : **Operator > Math > Arithmetic > Modulo** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Multiply.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Multiply.md index 5ab8c41e0d7..91ae460773e 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Multiply.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Multiply.md @@ -1,4 +1,4 @@ -# Multiply +# Multiply Operator Menu Path : **Operator > Math > Arithmetic > Multiply** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Negate.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Negate.md index 56b6b93b1cf..e906f912685 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Negate.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Negate.md @@ -1,6 +1,6 @@ -# Negate (-x) +# Negate (-x) Operator -Menu Path : **Operator > Math > Arithmetic > Negate (-x)** +Menu Path : **Operator** > **Math** > **Arithmetic** > **Negate (-x)** The **Negate** Operator multiplies the input value by -1. For example, an input of - (3, 4, -5) outputs (-3, -4, 5). diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Normalize.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Normalize.md index a5a240d40ed..056f9b89588 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Normalize.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Normalize.md @@ -1,4 +1,4 @@ -# Normalize +# Normalize Operator Menu Path : **Operator > Math > Vector** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-OneMinus.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-OneMinus.md index bba396ece61..b7f25a6a2c2 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-OneMinus.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-OneMinus.md @@ -1,6 +1,6 @@ -# One Minus (1-x) +# One Minus (1-x) Operator -Menu Path : **Operator > Math > Arithmetic > One Minus (1-x)** +Menu Path : **Operator** > **Math** > **Arithmetic** > **One Minus (1-x)** The **One Minus** Operator calculates **1** minus the input value. For example, an input of 0.2 outputs 0.8 and an input of (0.3, 0.4, -5) outputs (0.7, 0.6, 6). diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-PerlinCurlNoise.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-PerlinCurlNoise.md index 41840f8b97f..5bbbad415c5 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-PerlinCurlNoise.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-PerlinCurlNoise.md @@ -1,4 +1,4 @@ -# Perlin Curl Noise +# Perlin Curl Noise Operator Menu Path : **Operator > Noise > Perlin Curl Noise** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-PerlinNoise.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-PerlinNoise.md index 483507ad93f..2cfcd191cc1 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-PerlinNoise.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-PerlinNoise.md @@ -1,4 +1,4 @@ -# Perlin Noise +# Perlin Noise Operator Menu Path : **Operator > Noise > Perlin Noise** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Pi.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Pi.md index b4811f2aa9a..b31a1071964 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Pi.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Pi.md @@ -1,6 +1,6 @@ -# Pi (π) +# Pi (π) Operator -Menu Path : **Operator > Math > Constants > Pi (π)** +Menu Path : **Operator** > **Math** > **Constants** > **Pi (π)** The **Pi (π)** Operator returns the number Pi (π). This is the ratio of the circumference of a circle to its diameter. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-PointCache.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-PointCache.md index 847cbdc38c1..b21312447cb 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-PointCache.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-PointCache.md @@ -1,9 +1,9 @@ -# Point Cache +# Point Cache Operator > [!IMPORTANT] > This feature is experimental. To use this feature, open the **Preferences** window, go to the **Visual Effects** tab, and enable **Experimental Operators/Blocks**. -Menu Path : **Operator > Utility > Point Cache** +Menu Path : **Operator** > **Utility** > **Point Cache** The **Point Cache** Operator exposes the attribute maps and the point count stored into a [Point Cache asset](point-cache-asset.md). diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-PolarToRectangular.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-PolarToRectangular.md index 960412c2e9f..d8042295f8e 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-PolarToRectangular.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-PolarToRectangular.md @@ -1,4 +1,4 @@ -# Polar to Rectangular +# Polar to Rectangular Operator Menu Path : **Operator > Math > Coordinates** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Position(Depth).md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Position(Depth).md index 6b5adec5237..ad17129d46e 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Position(Depth).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Position(Depth).md @@ -1,6 +1,6 @@ -# Position (Depth) +# Position (Depth) Operator -Menu Path : **Operator > Sampling > Position (Depth)** +Menu Path : **Operator** > **Sampling** > **Position (Depth)** The **Position (Depth)** Operator samples the depth-buffer of a Camera and retrieves the position in world space. You can use this depth information to project particles into the scene. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Power.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Power.md index 2feca8b3237..8ec0689c6e9 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Power.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Power.md @@ -1,4 +1,4 @@ -# Power +# Power Operator Menu Path : **Operator > Math > Arithmetic > Power** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-RGBToHSV.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-RGBToHSV.md index fb41b38c9a6..44ba2902904 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-RGBToHSV.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-RGBToHSV.md @@ -1,6 +1,6 @@ -# RGB to HSV +# RGB to HSV Operator -Menu Path : **Operator > Color > RGB to HSV** +Menu Path : **Operator** > **Color** > **RGB to HSV** This Operator converts RGB (Red, Green, Blue) color values to HSV (Hue, Saturation, Value) color values. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-RandomNumber.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-RandomNumber.md index 97c47089d36..de92c8635e9 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-RandomNumber.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-RandomNumber.md @@ -1,4 +1,4 @@ -# Random Number +# Random Number Operator Menu Path : **Operator > Random > Random Number** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-RandomSelectorWeighted.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-RandomSelectorWeighted.md index 1045b0f1168..1cc785eafc4 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-RandomSelectorWeighted.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-RandomSelectorWeighted.md @@ -1,8 +1,8 @@ -# Random Selector Weighted +# Random Selector Weighted Operator -Menu Path : **Operator > Logic > Random Selector Weighted** +Menu Path : **Operator** > **Logic** > **Random Selector Weighted** The **Random Selector Weighted** Operator performs a kind of switch/case operation where a weight controls the probability of selecting a case. If all weights are equal, this Operator produces a uniform distribution of the different output values. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Reciprocal.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Reciprocal.md index d6871dcf7d1..3840a575227 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Reciprocal.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Reciprocal.md @@ -1,6 +1,6 @@ -# Reciprocal (1/x) +# Reciprocal (1/x) Operator -Menu Path : **Operator > Math > Arithmetic > Reciprocal (1/x)** +Menu Path : **Operator** > **Math** > **Arithmetic** > **Reciprocal (1/x)** The **Reciprocal** Operator calculates the result of dividing 1 by the input value. For example, an input of (0.2, 2, -5) outputs (5, 0.5, -0.2). diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-RectangularToPolar.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-RectangularToPolar.md index 2334cf364b1..a9a5851c4ae 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-RectangularToPolar.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-RectangularToPolar.md @@ -1,4 +1,4 @@ -# Rectangular to Polar +# Rectangular to Polar Operator Menu Path : **Operator > Math > Coordinates** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-RectangularToSpherical.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-RectangularToSpherical.md index 21952f024ac..a01bf86b07b 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-RectangularToSpherical.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-RectangularToSpherical.md @@ -1,4 +1,4 @@ -# Rectangular to Spherical +# Rectangular to Spherical Operator Menu Path : **Operator > Math > Coordinates** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Remap(-11).md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Remap(-11).md index 27a28eeca3d..fec7b9b865b 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Remap(-11).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Remap(-11).md @@ -1,6 +1,6 @@ -# Remap [0..1] => [-1..1] +# Remap [0..1] => [-1..1] Operator -Menu Path : **Operator > Math > Remap > Remap** +Menu Path : **Operator** > **Math** > **Remap** > **Remap** The **Remap [0..1] => [-1..1]** Operator linearly remaps input values from the [0..1] range to the [-1..1] range. This is equivalent to the operation (x * 2) - 1. For example, an input of 0 calculates (0 * 2) -1, and outputs -1. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Remap(01).md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Remap(01).md index c2d9ea97436..b7f2168243d 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Remap(01).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Remap(01).md @@ -1,6 +1,6 @@ -# Remap [-1..1] => [0..1] +# Remap [-1..1] => [0..1] Operator -Menu Path : **Operator > Math > Remap > Remap** +Menu Path : **Operator** > **Math** > **Remap** > **Remap** The **Remap [-1..1] => [0..1]** Operator linearly remaps input values from the range -1 to 1 to the range 0 to 1. This is equivalent to the operation (x * 0.5) + 0.5. For example, an input of -1 calculates (-1 * 0.5) + 0.5, and outputs 0. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Remap.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Remap.md index bfda3f7aa32..6a685df6404 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Remap.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Remap.md @@ -1,6 +1,6 @@ -# Remap (Remap) +# Remap (Remap) Operator -Menu Path : **Operator > Math > Remap > Remap** +Menu Path : **Operator** > **Math** > **Remap** > **Remap** The **Remap** Operator linearly remaps input values from an old range to a new range, with an optional clamp. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Rotate2D.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Rotate2D.md index 535e489a753..0b1537fb827 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Rotate2D.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Rotate2D.md @@ -1,4 +1,4 @@ -# Rotate 2D +# Rotate 2D Operator Menu Path : **Operator > Math > Vector** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Rotate3D.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Rotate3D.md index 39a2189ec9a..7217ef25db5 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Rotate3D.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Rotate3D.md @@ -1,4 +1,4 @@ -# Rotate 3D +# Rotate 3D Operator Menu Path : **Operator > Math > Vector** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Round.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Round.md index c3aea0afedd..35a4258f120 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Round.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Round.md @@ -1,4 +1,4 @@ -# Round +# Round Operator Menu Path : **Operator > Math > Clamp > Round** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleAttributeMap.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleAttributeMap.md index 042732d0458..6ff00380e50 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleAttributeMap.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleAttributeMap.md @@ -1,4 +1,4 @@ -# Sample Attribute Map +# Sample Attribute Map Operator > [!IMPORTANT] > This feature is experimental. To use this feature, open the **Preferences** window, go to the **Visual Effects** tab, and enable **Experimental Operators/Blocks**. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleBezier.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleBezier.md index 97a5a84e3e8..22dbe4af010 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleBezier.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleBezier.md @@ -1,4 +1,4 @@ -# Sample Bezier +# Sample Bezier Operator Menu Path : **Operator > Math > Vector** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleBuffer.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleBuffer.md index 6a9a7a3e883..9898ff1291b 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleBuffer.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleBuffer.md @@ -1,8 +1,6 @@ +# Sample Graphics Buffer Operator - -# Sample Graphics Buffer - -**Menu Path : Operator > Sampling > Sample Graphics Buffer** +Menu Path : **Operator** > **Sampling** > **Sample Graphics Buffer** 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. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleCameraBuffer.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleCameraBuffer.md index 1e6824dd141..2a119e34c86 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleCameraBuffer.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleCameraBuffer.md @@ -1,4 +1,4 @@ -# Sample CameraBuffer +# Sample CameraBuffer Operator Menu Path : **Operator > Sampling > Sample CameraBuffer** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleCurve.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleCurve.md index aa75ce4f4b2..a6865a56677 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleCurve.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleCurve.md @@ -1,4 +1,4 @@ -# Sample Curve +# Sample Curve Operator Menu Path : **Operator > Sampling > Sample Curve** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleGradient.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleGradient.md index fa2288b7db9..d79cad66585 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleGradient.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleGradient.md @@ -1,4 +1,4 @@ -# Sample Gradient +# Sample Gradient Operator Menu Path : **Operator > Sampling > Sample Gradient** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleMesh.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleMesh.md index 79bb975a68b..c42cce5ab96 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleMesh.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleMesh.md @@ -1,4 +1,4 @@ -# Sample Mesh +# Sample Mesh Operator Menu Path: **Operator > Sampling > Sample Mesh** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleMeshIndex.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleMeshIndex.md index 534c44d7da2..0352cf22752 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleMeshIndex.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleMeshIndex.md @@ -1,10 +1,10 @@
Experimental: This Feature is currently experimental and is subject to change in later major versions.
-# Sample Mesh Index +# Sample Mesh Index Operator -**Menu Path : Operator > Sampling > Sample Mesh Index** +Menu Path : **Operator** > **Sampling** > **Sample Mesh Index** -**Menu Path : Operator > Sampling > Sample Skinned Mesh Renderer Index** +Menu Path : **Operator** > **Sampling** > **Sample Skinned Mesh Renderer Index** The Sample Mesh or Skinned Mesh Renderer Index Operator allows you to fetch index buffer data of geometry. Both [UInt16](https://docs.unity3d.com/ScriptReference/ModelImporterIndexFormat.UInt16.html) and [UInt32](https://docs.unity3d.com/ScriptReference/ModelImporterIndexFormat.UInt32.html) format are supported the output of this operator is always an UInt. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleSDF.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleSDF.md index a11ac3fd82f..1105608119f 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleSDF.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleSDF.md @@ -1,4 +1,4 @@ -# Sample Signed Distance Field +# Sample Signed Distance Field Operator **Menu Path : Operator > Sampling > Sample Signed Distance Field** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleSkinnedMesh.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleSkinnedMesh.md index ae01fd3aec0..abbd18417cf 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleSkinnedMesh.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleSkinnedMesh.md @@ -1,4 +1,4 @@ -# Sample Skinned Mesh +# Sample Skinned Mesh Operator Menu Path: **Operator > Sampling > Sample Skinned Mesh** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleTexture2D.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleTexture2D.md index e6db99c613c..356a14faa37 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleTexture2D.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleTexture2D.md @@ -1,4 +1,4 @@ -# Sample Texture2D +# Sample Texture2D Operator Menu Path : **Operator > Sampling > Sample Texture2D** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleTexture2DArray.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleTexture2DArray.md index 789d57f3918..f947a5adec6 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleTexture2DArray.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleTexture2DArray.md @@ -1,4 +1,4 @@ -# Sample Texture2DArray +# Sample Texture2DArray Operator Menu Path : **Operator > Sampling > Sample Texture2DArray** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleTexture3D.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleTexture3D.md index 401e957e813..6301de89ebc 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleTexture3D.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleTexture3D.md @@ -1,4 +1,4 @@ -# Sample Texture3D +# Sample Texture3D Operator Menu Path : **Operator > Sampling > Sample Texture3D** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleTextureCube.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleTextureCube.md index c1050680445..6f7cf275573 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleTextureCube.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleTextureCube.md @@ -1,4 +1,4 @@ -# Sample TextureCube +# Sample TextureCube Operator Menu Path : **Operator > Sampling > Sample TextureCube** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleTextureCubeArray.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleTextureCubeArray.md index 4af6ede8831..8ae914112eb 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleTextureCubeArray.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SampleTextureCubeArray.md @@ -1,4 +1,4 @@ -# Sample TextureCubeArray +# Sample TextureCubeArray Operator Menu Path : **Operator > Sampling > Sample TextureCubeArray** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Saturate.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Saturate.md index 6c2bc225421..293724bee85 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Saturate.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Saturate.md @@ -1,4 +1,4 @@ -# Saturate +# Saturate Operator Menu Path : **Operator > Math > Clamp > Saturate** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SawtoothWave.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SawtoothWave.md index f7756aa94f5..3804550a784 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SawtoothWave.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SawtoothWave.md @@ -1,4 +1,4 @@ -# Sawtooth Wave +# Sawtooth Wave Operator Menu Path : **Operator > Math > Wave > Sawtooth Wave** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Sign.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Sign.md index e22db615b6f..bb03fcf7a1f 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Sign.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Sign.md @@ -1,4 +1,4 @@ -# Sign +# Sign Operator Menu Path : **Operator > Math > Arithmetic > Sign** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Sine.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Sine.md index 54b9aebdddc..c6dd6af0f4f 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Sine.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Sine.md @@ -1,4 +1,4 @@ -# Sine +# Sine Operator Menu Path : **Operator > Math > Trigonometry > Sine** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SineWave.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SineWave.md index 32f68063afd..25cb2b797bc 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SineWave.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SineWave.md @@ -1,4 +1,4 @@ -# Sine Wave +# Sine Wave Operator Menu Path : **Operator > Math > Wave > Sine Wave** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SkinnedLocalTransform.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SkinnedLocalTransform.md index dda6ff9e17a..c613357c625 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SkinnedLocalTransform.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SkinnedLocalTransform.md @@ -1,4 +1,4 @@ -# Get Skinned Mesh Local Root Transform +# Get Skinned Mesh Local Root Transform Operator Menu Path: **Operator > Sampling > Get Skinned Mesh Local Root Transform** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SkinnedMeshIndexCount.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SkinnedMeshIndexCount.md index a296d9b8509..7c1d90e9925 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SkinnedMeshIndexCount.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SkinnedMeshIndexCount.md @@ -1,4 +1,4 @@ -# Get Skinned Mesh Index Count +# Get Skinned Mesh Index Count Operator Menu Path: **Operator > Sampling > Get Skinned Mesh Index Count** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SkinnedMeshTriangleCount.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SkinnedMeshTriangleCount.md index f440c909cd9..81a72d6b7d6 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SkinnedMeshTriangleCount.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SkinnedMeshTriangleCount.md @@ -1,4 +1,4 @@ -# Get Skinned Mesh Triangle Count +# Get Skinned Mesh Triangle Count Operator Menu Path: **Operator > Sampling > Get Mesh Triangle Count** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SkinnedMeshVertexCount.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SkinnedMeshVertexCount.md index aab1a4a8a50..157286132b6 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SkinnedMeshVertexCount.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SkinnedMeshVertexCount.md @@ -1,4 +1,4 @@ -# Get Skinned Mesh Vertex Count +# Get Skinned Mesh Vertex Count Operator Menu Path: **Operator > Sampling > Get Skinned Mesh Vertex Count** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SkinnedWorldTransform.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SkinnedWorldTransform.md index 7f30827e342..8a32d36bed6 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SkinnedWorldTransform.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SkinnedWorldTransform.md @@ -1,4 +1,4 @@ -# Get Skinned Mesh World Root Transform +# Get Skinned Mesh World Root Transform Operator Menu Path: **Operator > Sampling > Get Skinned Mesh World Root Transform** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Smoothstep.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Smoothstep.md index e39a3b5848c..c4d7bc7d129 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Smoothstep.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Smoothstep.md @@ -1,4 +1,4 @@ -# Smoothstep +# Smoothstep Operator Menu Path : **Operator > Math > Arithmetic > Smoothstep** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SpawnState.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SpawnState.md index 4a648ccd60e..0f966ab72e7 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SpawnState.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SpawnState.md @@ -1,6 +1,6 @@ -# Spawn State +# Spawn State Operator -Menu Path : **Operator > Spawn > Spawn Context State** +Menu Path : **Operator** > **Spawn** > **Spawn Context State** The **Spawn State** Operator contains information about the [state](https://docs.unity3d.com/ScriptReference/VFX.VFXSpawnerState.html) of a [Spawn](Context-Spawn.md) system. It contains information such as: the number of particles spawned in the current frame, the duration of the spawn loop, and the current delta time. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SphericalToRectangular.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SphericalToRectangular.md index 0e71ab0a364..12a7fd85ac1 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SphericalToRectangular.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SphericalToRectangular.md @@ -1,4 +1,4 @@ -# Spherical to Rectangular +# Spherical to Rectangular Operator Menu Path : **Operator > Math> Coordinates** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SquareRoot.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SquareRoot.md index 6839c36ee64..a734a7ca471 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SquareRoot.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SquareRoot.md @@ -1,4 +1,4 @@ -# Square Root +# Square Root Operator Menu Path : **Operator > Math > Arithmetic > Square Root** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SquareWave.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SquareWave.md index 7246570961f..9ca7a6aaf2c 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SquareWave.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SquareWave.md @@ -1,4 +1,4 @@ -# Square Wave +# Square Wave Operator Menu Path : **Operator > Math > Wave > Square Wave** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SquaredDistance.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SquaredDistance.md index 2ac36d0e189..fcd5c461157 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SquaredDistance.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SquaredDistance.md @@ -1,4 +1,4 @@ -# Squared Distance +# Squared Distance Operator Menu Path : **Operator > Math > Vector** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SquaredLength.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SquaredLength.md index 7d122b92fc2..4dc6c84b0c2 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SquaredLength.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SquaredLength.md @@ -1,4 +1,4 @@ -# Squared Length +# Squared Length Operator Menu Path : **Operator > Math > Vector** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Step.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Step.md index 1030f9d8f1d..f45eebd447e 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Step.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Step.md @@ -1,4 +1,4 @@ -# Step +# Step Operator Menu Path : **Operator > Math > Arithmetic > Step** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Subtract.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Subtract.md index af3f8328309..6acf78a0320 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Subtract.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Subtract.md @@ -1,4 +1,4 @@ -# Subtract +# Subtract Operator Menu Path : **Operator > Math > Arithmetic > Subtract** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Switch.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Switch.md index 4a2e8352e80..a8ec4378989 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Switch.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Switch.md @@ -1,4 +1,4 @@ -# Switch +# Switch Operator Menu Path : **Operator > Logic > Switch** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Swizzle.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Swizzle.md index a92b8ca8b41..de685e76018 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Swizzle.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Swizzle.md @@ -1,4 +1,4 @@ -# Swizzle +# Swizzle Operator Menu Path : **Operator > Math > Vector** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SystemSeed.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SystemSeed.md index 88f779f1882..cf742484c9e 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SystemSeed.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-SystemSeed.md @@ -1,4 +1,4 @@ -# System Seed +# System Seed Operator Menu Path : **Operator > BuiltIn > System Seed** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Tangent.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Tangent.md index 9dd2f3efef9..37af393e2b4 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Tangent.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Tangent.md @@ -1,4 +1,4 @@ -# Tangent +# Tangent Operator Menu Path : **Operator > Math > Trigonometry > Tangent** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-TotalTime.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-TotalTime.md index 6c736165e61..ab7f997885e 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-TotalTime.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-TotalTime.md @@ -1,4 +1,4 @@ -# Total Time +# Total Time Operator Menu Path : **Operator > BuiltIn > Total Time** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Transform(Direction).md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Transform(Direction).md index 8796e333c17..a6837de47d4 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Transform(Direction).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Transform(Direction).md @@ -1,6 +1,6 @@ -# Transform (Direction) +# Transform (Direction) Operator -Menu Path : **Operator > Math > Geometry > Transform (Direction)** +Menu Path : **Operator** > **Math** > **Geometry** > **Transform (Direction)** The **Transform (Direction)** Operator applies a transformation to a Direction to position, rotate, or scale it. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Transform(Matrix).md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Transform(Matrix).md index ccc46c4f71a..bce8372e4ce 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Transform(Matrix).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Transform(Matrix).md @@ -1,6 +1,6 @@ -# Transform (Matrix) +# Transform (Matrix) Operator -Menu Path : **Operator > Math > Geometry > Transform (Matrix)** +Menu Path : **Operator** > **Math** > **Geometry** > **Transform (Matrix)** The **Transform (Matrix)** Operator applies a transformation to a Matrix to modify its position, rotation, or scale. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Transform(Position).md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Transform(Position).md index da48ffd4d21..9be272741dc 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Transform(Position).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Transform(Position).md @@ -1,6 +1,6 @@ -# Transform (Position) +# Transform (Position) Operator -Menu Path : **Operator > Math > Geometry > Transform (Position)** +Menu Path : **Operator** > **Math** > **Geometry** > **Transform (Position)** The **Transform (Position)** Operator applies a transformation to a position to offset, rotate, or scale it. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Transform(Vector).md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Transform(Vector).md index c3c9960cd13..f13512e188f 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Transform(Vector).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Transform(Vector).md @@ -1,6 +1,6 @@ -# Transform (Vector) +# Transform (Vector) Operator -Menu Path : **Operator > Math > Geometry > Transform (Vector)** +Menu Path : **Operator** > **Math** > **Geometry** > **Transform (Vector)** The **Transform (Vector)** Operator applies a transformation to a Vector to offset, rotate, or scale it. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Transform(Vector4).md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Transform(Vector4).md index 62fdbdfc065..56182c2ff4a 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Transform(Vector4).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Transform(Vector4).md @@ -1,6 +1,6 @@ -# Transform (Vector4) +# Transform (Vector4) Operator -Menu Path : **Operator > Math > Geometry > Transform (Vector4)** +Menu Path : **Operator** > **Math** > **Geometry** > **Transform (Vector4)** The **Transform (Vector4)** Operator applies a transformation to a Vector4. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Transpose(Matrix).md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Transpose(Matrix).md index de78875581c..0f8d0c0b24b 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Transpose(Matrix).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Transpose(Matrix).md @@ -1,6 +1,6 @@ -# Transpose (Matrix) +# Transpose (Matrix) Operator -Menu Path : **Operator > Math > Geometry > Transpose (Matrix)** +Menu Path : **Operator** > **Math** > **Geometry** > **Transpose (Matrix)** The **Transpose (Matrix)** Operator flips a matrix across its diagonal, swapping the matrix’s column values and its row values. This is the same operation as [Matrix4x4.transpose](https://docs.unity3d.com/ScriptReference/Matrix4x4-transpose.html). diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-TriangleWave.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-TriangleWave.md index 0c628988526..6889dc992a7 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-TriangleWave.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-TriangleWave.md @@ -1,4 +1,4 @@ -# Triangle Wave +# Triangle Wave Operator Menu Path : **Operator > Math > Wave > Triangle Wave** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-ValueCurlNoise.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-ValueCurlNoise.md index 680d250a96f..9f4708ba678 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-ValueCurlNoise.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-ValueCurlNoise.md @@ -1,4 +1,4 @@ -# Value Curl Noise +# Value Curl Noise Operator Menu Path : **Operator > Noise > Value Curl Noise** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-ValueNoise.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-ValueNoise.md index eb44c562d0a..67dca496850 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-ValueNoise.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-ValueNoise.md @@ -1,4 +1,4 @@ -# Value Noise +# Value Noise Operator Menu Path : **Operator > Noise > Value Noise** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-ViewportToWorldPoint.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-ViewportToWorldPoint.md index e1bf704d072..5295e9899b4 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-ViewportToWorldPoint.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-ViewportToWorldPoint.md @@ -1,6 +1,6 @@ -# Viewport To World Point +# Viewport To World Point Operator -Menu Path : **Operator > Camera > Viewport To World Point** +Menu Path : **Operator** > **Camera** > **Viewport To World Point** The **Viewport To World Point** Operator transforms a position from viewport space to world space. The input viewport space is normalized and relative to the camera. The bottom-left of the camera is (0,0) and the top-right is (1,1). The z position is in world units from the camera. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Volume(AxisAlignedBox).md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Volume(AxisAlignedBox).md index cda58491678..e9f7c8df138 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Volume(AxisAlignedBox).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Volume(AxisAlignedBox).md @@ -1,6 +1,6 @@ -# Volume (Axis Aligned Box) +# Volume (Axis Aligned Box) Operator -Menu Path : **Operator > Math > Geometry > Volume (Axis Aligned Box)** +Menu Path : **Operator** > **Math** > **Geometry** > **Volume (Axis Aligned Box)** The **Volume (Axis Aligned Box)** Operator calculates the volume of an axis-aligned box. This is equal to **x y z** where **x** is the width, **y** is the height, and **z** is the length of the box. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Volume(Cone).md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Volume(Cone).md index f50f5445330..50bf3867f15 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Volume(Cone).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Volume(Cone).md @@ -1,6 +1,6 @@ -# Volume (Cone) +# Volume (Cone) Operator -Menu Path : **Operator > Math > Geometry > Volume (Cone)** +Menu Path : **Operator** > **Math** > **Geometry** > **Volume (Cone)** The **Volume (Cone)** Operator calculates the volume of a cone. This is equal to **1/3 π h(R2 + R r + r2)** where **h** is the height of the cone, **R** is the radius of the base, and **r** is the radius of the cap. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Volume(Cylinder).md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Volume(Cylinder).md index 05766e5f972..dc168920d02 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Volume(Cylinder).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Volume(Cylinder).md @@ -1,6 +1,6 @@ -# Volume (Cylinder) +# Volume (Cylinder) Operator -Menu Path : **Operator > Math > Geometry > Volume (Cylinder)** +Menu Path : **Operator** > **Math** > **Geometry** > **Volume (Cylinder)** The **Volume (Cylinder)** Operator calculates the volume of a cylinder. This is equal to **π r2 h** where **r** is the radius and **h** is the height of the cylinder. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Volume(OrientedBox).md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Volume(OrientedBox).md index 99773a08f40..af788031db2 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Volume(OrientedBox).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Volume(OrientedBox).md @@ -1,6 +1,6 @@ -# Volume (Oriented Box) +# Volume (Oriented Box) Operator -Menu Path : **Operator > Math > Geometry > Volume (Oriented Box)** +Menu Path : **Operator** > **Math** > **Geometry** > **Volume (Oriented Box)** The **Volume (Oriented Box)** Operator calculates the volume of an oriented box. This is equal to **x y z** where **x** is the width, **y** is the height, and **z** is the length of the box. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Volume(Sphere).md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Volume(Sphere).md index 33c81721a2e..5652d1636a9 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Volume(Sphere).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Volume(Sphere).md @@ -1,6 +1,6 @@ -# Volume (Sphere) +# Volume (Sphere) Operator -Menu Path : **Operator > Math > Geometry > Volume (Sphere)** +Menu Path : **Operator** > **Math** > **Geometry** > **Volume (Sphere)** The **Volume (Sphere)** Operator calculates the volume of a sphere. This is equal to **4/3 π r2 h**. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Volume(Torus).md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Volume(Torus).md index 199952b26d9..d91ffd61643 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Volume(Torus).md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-Volume(Torus).md @@ -1,6 +1,6 @@ -# Volume (Torus) +# Volume (Torus) Operator -Menu Path : **Operator > Math > Geometry > Volume (Torus)** +Menu Path : **Operator** > **Math** > **Geometry** > **Volume (Torus)** The **Volume (Torus)** Operator calculates the volume of a torus. This is equal to **2 π2 R r2** where **R** is the major radius and **r** is the minor radius. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-WorldToLocal.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-WorldToLocal.md index 557543979e9..147810c2cf7 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-WorldToLocal.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-WorldToLocal.md @@ -1,4 +1,4 @@ -# World To Local +# World to Local Operator Menu Path : **Operator > BuiltIn > World To Local** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-WorldToViewportPoint.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-WorldToViewportPoint.md index 5d6a7ad9a0b..703a3793f4e 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-WorldToViewportPoint.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-WorldToViewportPoint.md @@ -1,6 +1,6 @@ -# World To Viewport Point +# World To Viewport Point Operator -Menu Path : **Operator > Camera > World To Viewport Point** +Menu Path : **Operator** > **Camera** > **World To Viewport Point** The **World To Viewport Point** Operator transforms a position into viewport space. The output viewport space is normalized and relative to the camera. The bottom-left of the camera is (0,0) and the top-right is (1,1). The z position is in world units from the camera. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator.md index 47ad734c6bc..f7f41482171 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator.md @@ -12,7 +12,7 @@ Calculate, convert, and manipulate data for particles and effects. | [Custom HLSL Operator](Operator-CustomHLSL.md) | Write an HLSL function that takes inputs and produces outputs. | | [Inline Operators](Inline.md) | Store values, vectors, shapes, and textures. | | [Logic Operators](Logic.md) | Perform Boolean operations and conditional branching. | -| [Math](Math.md) | Perform mathematical calculations on input data. | +| [Math Operators](Math.md) | Perform mathematical calculations on input data. | | [Noise Operators](Noise.md) | Generate procedural noise patterns, for example to control the behavior of particles over time. | | [Random Operators](Random.md) | Generate random values or select random outputs. | | [Sampling Operators](Sampling.md) | Fetch data from buffers, meshes, and textures. | diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/OperatorAttribute.md b/Packages/com.unity.visualeffectgraph/Documentation~/OperatorAttribute.md index 44325d6053e..6329868a883 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/OperatorAttribute.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/OperatorAttribute.md @@ -4,35 +4,35 @@ Get the data from [particle attributes](Attributes.md). | **Page** | **Description** | | --- | --- | -| [Age Over Lifetime](Operator-AgeOverLifetime.md) | Get the age of a particle relative to its lifetime. | -| [Get Attribute: age](Operator-GetAttributeAge.md) | Get the time since a particle spawned. | -| [Get Attribute: alive](Operator-GetAttributeAlive.md) | Get whether a particle is alive or not. | -| [Get Attribute: alpha](Operator-GetAttributeAlpha.md) | Get the alpha value of a rendered particle. | -| [Get Attribute: angle](Operator-GetAttributeAngle.md) | Get the rotation of a particle. | -| [Get Attribute: angularVelocity](Operator-GetAttributeAngularVelocity.md) | Get the rotation speed of a particle. | -| [Get Attribute: axisX](Operator-GetAttributeAxisX.md) | Get the x-axis of a particle. | -| [Get Attribute: axisY](Operator-GetAttributeAxisY.md) | Get the y-axis of a particle. | -| [Get Attribute: axisZ](Operator-GetAttributeAxisZ.md) | Get the z-axis of a particle. | -| [Get Attribute: color](Operator-GetAttributeColor.md) | Get the color of a particle. | -| [Get Attribute: direction](Operator-GetAttributeDirection.md) | Get the direction of a particle. | -| [Get Attribute: lifetime](Operator-GetAttributeLifetime.md) | Get the amount of time a particle should live for. | -| [Get Attribute: mass](Operator-GetAttributeMass.md) | Get the mass of a particle. | -| [Get Attribute: oldPosition](Operator-GetAttributeOldPosition.md) | Get the position of a particle before velocity is added. | -| [Get Attribute: particleCountInStrip](Operator-GetAttributeParticleCountInStrip.md) | Get the number of particles in a particle strip. | -| [Get Attribute: particleId](Operator-GetAttributeParticleID.md) | Get a unique ID that identifies a particle. | -| [Get Attribute: particleIndexInStrip](Operator-GetAttributeParticleIndexInStrip.md) | Get the index of a particle in its particle strip. | -| [Get Attribute: pivot](Operator-GetAttributePivot.md) | Get the origin coordinates of a particle. | -| [Get Attribute: position](Operator-GetAttributePosition.md) | Get the position of a particle. | -| [Get Attribute: scale](Operator-GetAttributeScale.md) | Get the scale of the particle. | -| [Get Attribute: seed](Operator-GetAttributeSeed.md) | Get the random number value of a particle. | -| [Get Attribute: size](Operator-GetAttributeSize.md) | Get the size of a particle. | -| [Get Attribute: spawnIndex](Operator-GetAttributeSpawnIndex.md) | Get the index of a particle when it spawned. | -| [Get Attribute: spawnTime](Operator-GetAttributeSpawnTime.md) | Get the time that the particle spawned. | -| [Get Attribute: stripIndex](Operator-GetAttributeStripIndex.md) | Get the index of the particle strip a particle belongs to. | -| [Get Attribute: targetPosition](Operator-GetAttributeTargetPosition.md) | Get the target coordinates of a particle. | -| [Get Attribute: texIndex](Operator-GetAttributeTexIndex.md) | Get the frame number from a flipbook texture a particle uses. | -| [Get Attribute: velocity](Operator-GetAttributeVelocity.md) | Get the current velocity of a particle. | -| [Get Custom Attribute](Operator-GetCustomAttribute.md) | Get the value of a custom attribute. | +| [Age Over Lifetime Operator](Operator-AgeOverLifetime.md) | Get the age of a particle relative to its lifetime. | +| [Get Attribute: age Operator](Operator-GetAttributeAge.md) | Get the time since a particle spawned. | +| [Get Attribute: alive Operator](Operator-GetAttributeAlive.md) | Get whether a particle is alive or not. | +| [Get Attribute: alpha Operator](Operator-GetAttributeAlpha.md) | Get the alpha value of a rendered particle. | +| [Get Attribute: angle Operator](Operator-GetAttributeAngle.md) | Get the rotation of a particle. | +| [Get Attribute: angularVelocity Operator](Operator-GetAttributeAngularVelocity.md) | Get the rotation speed of a particle. | +| [Get Attribute: axisX Operator](Operator-GetAttributeAxisX.md) | Get the x-axis of a particle. | +| [Get Attribute: axisY Operator](Operator-GetAttributeAxisY.md) | Get the y-axis of a particle. | +| [Get Attribute: axisZ Operator](Operator-GetAttributeAxisZ.md) | Get the z-axis of a particle. | +| [Get Attribute: color Operator](Operator-GetAttributeColor.md) | Get the color of a particle. | +| [Get Attribute: direction Operator](Operator-GetAttributeDirection.md) | Get the direction of a particle. | +| [Get Attribute: lifetime Operator](Operator-GetAttributeLifetime.md) | Get the amount of time a particle should live for. | +| [Get Attribute: mass Operator](Operator-GetAttributeMass.md) | Get the mass of a particle. | +| [Get Attribute: oldPosition Operator](Operator-GetAttributeOldPosition.md) | Get the position of a particle before velocity is added. | +| [Get Attribute: particleCountInStrip Operator](Operator-GetAttributeParticleCountInStrip.md) | Get the number of particles in a particle strip. | +| [Get Attribute: particleId Operator](Operator-GetAttributeParticleID.md) | Get a unique ID that identifies a particle. | +| [Get Attribute: particleIndexInStrip Operator](Operator-GetAttributeParticleIndexInStrip.md) | Get the index of a particle in its particle strip. | +| [Get Attribute: pivot Operator](Operator-GetAttributePivot.md) | Get the origin coordinates of a particle. | +| [Get Attribute: position Operator](Operator-GetAttributePosition.md) | Get the position of a particle. | +| [Get Attribute: scale Operator](Operator-GetAttributeScale.md) | Get the scale of the particle. | +| [Get Attribute: seed Operator](Operator-GetAttributeSeed.md) | Get the random number value of a particle. | +| [Get Attribute: size Operator](Operator-GetAttributeSize.md) | Get the size of a particle. | +| [Get Attribute: spawnIndex Operator](Operator-GetAttributeSpawnIndex.md) | Get the index of a particle when it spawned. | +| [Get Attribute: spawnTime Operator](Operator-GetAttributeSpawnTime.md) | Get the time that the particle spawned. | +| [Get Attribute: stripIndex Operator](Operator-GetAttributeStripIndex.md) | Get the index of the particle strip a particle belongs to. | +| [Get Attribute: targetPosition Operator](Operator-GetAttributeTargetPosition.md) | Get the target coordinates of a particle. | +| [Get Attribute: texIndex Operator](Operator-GetAttributeTexIndex.md) | Get the frame number from a flipbook texture a particle uses. | +| [Get Attribute: velocity Operator](Operator-GetAttributeVelocity.md) | Get the current velocity of a particle. | +| [Get Custom Attribute Operator](Operator-GetCustomAttribute.md) | Get the value of a custom attribute. | ## Additional resources diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Orientation.md b/Packages/com.unity.visualeffectgraph/Documentation~/Orientation.md index d081a1a655e..658bc524881 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Orientation.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Orientation.md @@ -4,8 +4,8 @@ Change the direction that particles face. | **Page** | **Description** | | --- | --- | -| [Connect Target](Block-ConnectTarget.md) | Scale and rotate particles so they connect to a specified target position. | -| [Orient: Face [Mode]](Block-Orient.md) | Rotate particles so they face a particular direction. | +| [Connect Target Block](Block-ConnectTarget.md) | Scale and rotate particles so they connect to a specified target position. | +| [Orient: Face [Mode] Block](Block-Orient.md) | Rotate particles so they face a particular direction. | ## Additional resources diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Output.md b/Packages/com.unity.visualeffectgraph/Documentation~/Output.md index cd64badda74..03a5b11695c 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Output.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Output.md @@ -4,8 +4,8 @@ Control particle output and rendering. | **Page** | **Description** | | --- | --- | -| [Camera Fade](Block-CameraFade.md) | Fade out particles when they're too close to the near plane of the camera. | -| [Subpixel Anti-Aliasing](Block-SubpixelAntiAliasing.md) | Enlarge particles to ensure they cover at least one pixel on-screen. | +| [Camera Fade Block](Block-CameraFade.md) | Fade out particles when they're too close to the near plane of the camera. | +| [Subpixel Anti-Aliasing Block](Block-SubpixelAntiAliasing.md) | Enlarge particles to ensure they cover at least one pixel on-screen. | ## Additional resources diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Random.md b/Packages/com.unity.visualeffectgraph/Documentation~/Random.md index a7cce18e13a..8fa8e5f382a 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Random.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Random.md @@ -4,8 +4,8 @@ Generate random values or select random outputs. | **Page** | **Description** | | --- | --- | -| [Random Number](Operator-RandomNumber.md) | Generate a pseudo-random number within a specified range. | -| [Random Selector Weighted](Operator-RandomSelectorWeighted.md) | Select an output at random with custom weights. | +| [Random Number Operator](Operator-RandomNumber.md) | Generate a pseudo-random number within a specified range. | +| [Random Selector Weighted Operator](Operator-RandomSelectorWeighted.md) | Select an output at random with custom weights. | ## Additional resources diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Reference-Attributes.md b/Packages/com.unity.visualeffectgraph/Documentation~/Reference-Attributes.md index bc43c2fb643..a73acca25d3 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Reference-Attributes.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Reference-Attributes.md @@ -1,4 +1,4 @@ -# Standard Attribute Reference +# Standard Attributes Reference ## Standard Attributes diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Remap.md b/Packages/com.unity.visualeffectgraph/Documentation~/Remap.md index 6627793f678..b7af4866edd 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Remap.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Remap.md @@ -4,6 +4,6 @@ Remap values to different ranges. | **Page** | **Description** | | --- | --- | -| [Remap](Operator-Remap.md) | Remap input values from an old range to a new range. | -| [Remap [0..1] => [-1..1]](Operator-Remap(-11).md) | Remap input values from 0 to 1 range, to -1 to 1 range. | -| [Remap [-1..1] => [0..1]](Operator-Remap(01).md) | Remap input values from -1 to 1 range, to 0 to 1 range. | \ No newline at end of file +| [Remap Operator](Operator-Remap.md) | Remap input values from an old range to a new range. | +| [Remap [0..1] => [-1..1] Operator](Operator-Remap(-11).md) | Remap input values from 0 to 1 range, to -1 to 1 range. | +| [Remap [-1..1] => [0..1] Operator](Operator-Remap(01).md) | Remap input values from -1 to 1 range, to 0 to 1 range. | \ No newline at end of file diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Sampling.md b/Packages/com.unity.visualeffectgraph/Documentation~/Sampling.md index 896dac7b592..82133aab589 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Sampling.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Sampling.md @@ -4,35 +4,35 @@ Fetch data from buffers, meshes, and textures. | **Page** | **Description** | | --- | --- | -| [Buffer Count](Operator-BufferCount.md) | Get the number of elements in a `GraphicsBuffer`. | -| [Get Mesh Index Count](Operator-MeshIndexCount.md) | Get the number of indices in a mesh. | -| [Get Mesh Triangle Count](Operator-MeshTriangleCount.md) | Get the number of triangles in a mesh. | -| [Get Mesh Vertex Count](Operator-MeshVertexCount.md) | Get the number of vertices in a mesh. | -| [Get Skinned Mesh Index Count](Operator-SkinnedMeshIndexCount.md) | Get the number of indices in a skinned mesh. | -| [Get Skinned Mesh Triangle Count](Operator-SkinnedMeshTriangleCount.md) | Get the number of triangles in a skinned mesh. | -| [Get Skinned Mesh Vertex Count](Operator-SkinnedMeshVertexCount.md) | Get the number of vertices in a skinned mesh. | -| [Get Skinned Mesh Local Root Transform](Operator-SkinnedLocalTransform.md) | Get the transform of a root bone in a skinned mesh, relative to the Skinned Mesh Renderer. | -| [Get Skinned Mesh World Root Transform](Operator-SkinnedWorldTransform.md) | Get the transform of a root bone in a skinned mesh, relative to the world. | -| [Get Texture Dimensions](Operator-GetTextureDimensions.md) | Get the dimensions of a texture. | -| [Load CameraBuffer](Operator-LoadCameraBuffer.md) | Sample the camera buffer. | -| [Load Texture2D](Operator-LoadTexture2D.md) | Sample a 2D texture. | -| [Load Texture2DArray](Operator-LoadTexture2DArray.md) | Sample a 2D texture array. | -| [Load Texture3D](Operator-LoadTexture3D.md) | Sample a 3D texture. | -| [Position (Depth)](Operator-Position(Depth).md) | Sample the depth buffer of the camera. | -| [Sample Graphics Buffer](Operator-SampleBuffer.md) | Fetch and sample a structured `GraphicsBuffer`. | -| [Sample CameraBuffer](Operator-SampleCameraBuffer.md) | Sample the camera buffer using pixel dimensions and UVs. | -| [Sample Curve](Operator-SampleCurve.md) | Sample a curve. | -| [Sample Gradient](Operator-SampleGradient.md) | Sample a gradient. | -| [Sample Mesh](Operator-SampleMesh.md) | Get the vertex data of a mesh. | -| [Sample Mesh Index](Operator-SampleMeshIndex.md) | Get the index buffer data of geometry. | -| [Sample Skinned Mesh](Operator-SampleSkinnedMesh.md) | Get the vertex data of a skinned mesh. | -| [Sample Signed Distance Field](Operator-SampleSDF.md) | Get the distance field stored in a 3D texture. | -| [Sample Texture2D](Operator-SampleTexture2D.md) | Sample a 2D texture using UV coordinates and mipmap level. | -| [Sample Texture2DArray](Operator-SampleTexture2DArray.md) | Sample a 2D texture array using a slice, UV coordinates, and mipmap level. | -| [Sample Texture3D](Operator-SampleTexture3D.md) | Sample a 3D texture using UV coordinates and mipmap level. | -| [Sample TextureCube](Operator-SampleTextureCube.md) | Sample a cubemap texture using a direction vector and mipmap level. | -| [Sample TextureCubeArray](Operator-SampleTextureCubeArray.md) | Sample a cubemap array using a slice, direction vector, and mipmap level. | -| [Sample Attribute Map](Operator-SampleAttributeMap.md) | Sample an attribute map from a Point Cache. | +| [Buffer Count Operator](Operator-BufferCount.md) | Get the number of elements in a `GraphicsBuffer`. | +| [Get Mesh Index Count Operator](Operator-MeshIndexCount.md) | Get the number of indices in a mesh. | +| [Get Mesh Triangle Count Operator](Operator-MeshTriangleCount.md) | Get the number of triangles in a mesh. | +| [Get Mesh Vertex Count Operator](Operator-MeshVertexCount.md) | Get the number of vertices in a mesh. | +| [Get Skinned Mesh Index Count Operator](Operator-SkinnedMeshIndexCount.md) | Get the number of indices in a skinned mesh. | +| [Get Skinned Mesh Triangle Count Operator](Operator-SkinnedMeshTriangleCount.md) | Get the number of triangles in a skinned mesh. | +| [Get Skinned Mesh Vertex Count Operator](Operator-SkinnedMeshVertexCount.md) | Get the number of vertices in a skinned mesh. | +| [Get Skinned Mesh Local Root Transform Operator](Operator-SkinnedLocalTransform.md) | Get the transform of a root bone in a skinned mesh, relative to the Skinned Mesh Renderer. | +| [Get Skinned Mesh World Root Transform Operator](Operator-SkinnedWorldTransform.md) | Get the transform of a root bone in a skinned mesh, relative to the world. | +| [Get Texture Dimensions Operator](Operator-GetTextureDimensions.md) | Get the dimensions of a texture. | +| [Load CameraBuffer Operator](Operator-LoadCameraBuffer.md) | Sample the camera buffer. | +| [Load Texture2D Operator](Operator-LoadTexture2D.md) | Sample a 2D texture. | +| [Load Texture2DArray Operator](Operator-LoadTexture2DArray.md) | Sample a 2D texture array. | +| [Load Texture3D Operator](Operator-LoadTexture3D.md) | Sample a 3D texture. | +| [Position (Depth) Operator](Operator-Position(Depth).md) | Sample the depth buffer of the camera. | +| [Sample Graphics Buffer Operator](Operator-SampleBuffer.md) | Fetch and sample a structured `GraphicsBuffer`. | +| [Sample CameraBuffer Operator](Operator-SampleCameraBuffer.md) | Sample the camera buffer using pixel dimensions and UVs. | +| [Sample Curve Operator](Operator-SampleCurve.md) | Sample a curve. | +| [Sample Gradient Operator](Operator-SampleGradient.md) | Sample a gradient. | +| [Sample Mesh Operator](Operator-SampleMesh.md) | Get the vertex data of a mesh. | +| [Sample Mesh Index Operator](Operator-SampleMeshIndex.md) | Get the index buffer data of geometry. | +| [Sample Skinned Mesh Operator](Operator-SampleSkinnedMesh.md) | Get the vertex data of a skinned mesh. | +| [Sample Signed Distance Field Operator](Operator-SampleSDF.md) | Get the distance field stored in a 3D texture. | +| [Sample Texture2D Operator](Operator-SampleTexture2D.md) | Sample a 2D texture using UV coordinates and mipmap level. | +| [Sample Texture2DArray Operator](Operator-SampleTexture2DArray.md) | Sample a 2D texture array using a slice, UV coordinates, and mipmap level. | +| [Sample Texture3D Operator](Operator-SampleTexture3D.md) | Sample a 3D texture using UV coordinates and mipmap level. | +| [Sample TextureCube Operator](Operator-SampleTextureCube.md) | Sample a cubemap texture using a direction vector and mipmap level. | +| [Sample TextureCubeArray Operator](Operator-SampleTextureCubeArray.md) | Sample a cubemap array using a slice, direction vector, and mipmap level. | +| [Sample Attribute Map Operator](Operator-SampleAttributeMap.md) | Sample an attribute map from a Point Cache. | ## Additional resources diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/SharedOutputSettings.md b/Packages/com.unity.visualeffectgraph/Documentation~/SharedOutputSettings.md index d0b4e59e0f2..dac7fc63ae2 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/SharedOutputSettings.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/SharedOutputSettings.md @@ -1,11 +1,11 @@ -# Shared Output Settings +# Shared Output Settings Context Explore the settings that appear in multiple outputs in Visual Effect Graph. | Page | Description | |-|-| -|[Global Settings](Context-OutputSharedSettings.md)|Explore the settings and property that all outputs share. | -|[Lit Output Settings](Context-OutputLitSettings.md)|Explore outputs that receive lighting information, and support texture and material types that relate to lighting. | +|[Global Settings Context](Context-OutputSharedSettings.md)|Explore the settings and property that all outputs share. | +|[Lit Output Settings Context](Context-OutputLitSettings.md)|Explore outputs that receive lighting information, and support texture and material types that relate to lighting. | ## Additional resources diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Spawn.md b/Packages/com.unity.visualeffectgraph/Documentation~/Spawn.md index 4d881dd1710..ba8c91c3736 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Spawn.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Spawn.md @@ -4,15 +4,15 @@ Customize behavior for spawning particles. | **Page** | **Description** | | --- | --- | -| [Constant Spawn Rate](Block-ConstantRate.md) | Spawn a specific number of particles per second. | -| [Single Burst](Block-Burst.md) | Use the Single/Periodic Burst Block to spawn particles instantly either once, or periodically using a delay. | -| [Periodic Burst](Block-Burst.md) | Use the Single/Periodic Burst Block to spawn particles at regular intervals. | -| [Variable Spawn Rate](Block-VariableRate.md) | Spawn a variable number of particles per second. | -| [Attribute > Set Spawn Event ](Block-SetSpawnEvent.md) | Modify the content of attributes stored in the Context event attribute. | -| [Custom](CustomSpawn.md) | Explore blocks that let you customize advanced behavior for spawning particles. | +| [Constant Spawn Rate Block](Block-ConstantRate.md) | Spawn a specific number of particles per second. | +| [Single Burst Block](Block-Burst.md) | Use the Single/Periodic Burst Block to spawn particles instantly either once, or periodically using a delay. | +| [Periodic Burst Block](Block-Burst.md) | Use the Single/Periodic Burst Block to spawn particles at regular intervals. | +| [Variable Spawn Rate Block](Block-VariableRate.md) | Spawn a variable number of particles per second. | +| [Attribute > Set Spawn Event Block](Block-SetSpawnEvent.md) | Modify the content of attributes stored in the Context event attribute. | +| [Custom Spawn Blocks](CustomSpawn.md) | Explore blocks that let you customize advanced behavior for spawning particles. | ## Additional resources -- [Spawn](Context-Spawn.md) +- [Spawn Context](Context-Spawn.md) - [Spawner Callbacks](SpawnerCallbacks.md) - [Events](Events.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/TableOfContents.md b/Packages/com.unity.visualeffectgraph/Documentation~/TableOfContents.md index 802734e35e1..e87f77a2617 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/TableOfContents.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/TableOfContents.md @@ -35,14 +35,14 @@ * [Visual Effect Bounds](visual-effect-bounds.md) * [Custom HLSL](CustomHLSL-Common.md) * [Instancing](Instancing.md) -* [The Visual Effect Component](VisualEffectComponent.md) - * [C# Component API](ComponentAPI.md) +* [The Visual Effect Components](VisualEffectComponent.md) + * [Visual Effect component API](ComponentAPI.md) * [Using Visual Effects with Timeline](Timeline.md) * [Property Binders](PropertyBinders.md) * [Event Binders](EventBinders.md) * [Output Event Handlers](OutputEventHandlers.md) * [Shader Graph Integration](ShaderGraphIntegration.md) - * [Shader Graphs in Visual Effects](sg-working-with.md) + * [Shader Graph in Visual Effect](sg-working-with.md) * [Visual Effect Target](sg-target-visual-effect.md) * [Pipeline Tools](PipelineTools.md) * [Representing Complex Shapes](representing-complex-shapes.md) @@ -64,316 +64,315 @@ * [Customize existing six-way lightmap textures](create-effects-with-six-way-lighting.md) * [Six-way smoke lit reference](six-way-lighting-reference.md) * [Node Library](node-library.md) - * [Context](Context.md) - * [Event](Context-Event.md) - * [GPU Event](Context-GPUEvent.md) - * [Initialize Particle](Context-Initialize.md) - * [Output Mesh](Context-OutputMesh.md) - * [Output Distortion](Context-OutputDistortion.md) - * [Output Decal](Context-OutputForwardDecal.md) - * [Output Line](Context-OutputLine.md) - * [Output Particle Mesh](Context-OutputParticleMesh.md) - * [Output Particle HDRP Lit Decal](Context-OutputParticleHDRPLitDecal.md) - * [Output Particle HDRP Volumetric Fog](Context-OutputParticleHDRPVolumetricFog.md) - * [Output Particle URP Lit Decal](Context-OutputParticleURPLitDecal.md) - * [Output Point](Context-OutputPoint.md) - * [Output Primitive](Context-OutputPrimitive.md) - * [Output ShaderGraph Quad](Context-OutputShaderGraphPlanarPrimitive.md) - * [Ouput Particle ShaderGraph Mesh](Context-OutputShaderGraphMesh.md) - * [Output ParticleStrip ShaderGraph Quad](Context-OutputShaderGraphStrip.md) - * [Shared Output Settings](SharedOutputSettings.md) - * [Global Settings](Context-OutputSharedSettings.md) - * [Lit Output Settings](Context-OutputLitSettings.md) - * [Spawn](Context-Spawn.md) - * [Update Particle](Context-Update.md) - * [Block](Block.md) - * [Attribute](Attribute.md) - * [Curve](Block-SetAttributeFromCurve.md) - * [Derived > Calculate Mass from Volume](Block-CalculateMassFromVolume.md) - * [Map](Block-SetAttributeFromMap.md) - * [Set](Block-SetAttribute.md) - * [Collision](Block-Collision-LandingPage.md) - * [Collision Shape](Block-CollisionShape.md) - * [Collision Depth Buffer](Block-CollideWithDepthBuffer.md) - * [Kill Shape](Block-KillShape.md) - * [Trigger Shape](Block-TriggerShape.md) - * [Flipbook Player](Block-FlipbookPlayer.md) - * [Force](Force.md) - * [Attractor Shape Signed Distance Field](Block-ConformToSignedDistanceField.md) - * [Attractor Shape Sphere](Block-ConformToSphere.md) - * [Force](Block-Force.md) - * [Gravity](Block-Gravity.md) - * [Linear Drag](Block-LinearDrag.md) - * [Turbulence](Block-Turbulence.md) - * [Vector Force Field](Block-VectorForceField.md) - * [HLSL > Custom HLSL](Block-CustomHLSL.md) - * [Implicit](Implicit.md) - * [Integration : Update Position](Block-UpdatePosition.md) - * [Integration : Update Rotation](Block-UpdateRotation.md) - * [Orientation](Orientation.md) - * [Connect Target](Block-ConnectTarget.md) - * [Orient](Block-Orient.md) - * [Output](Output.md) - * [Camera Fade](Block-CameraFade.md) - * [Subpixel Anti-Aliasing](Block-SubpixelAntiAliasing.md) - * [Position Shape](Block-SetPositionShape-LandingPage.md) - * [Set Position (Depth)](Block-SetPosition(Depth).md) - * [Set Position (Mesh)](Block-SetPosition(Mesh).md) - * [Set Position (Skinned Mesh)](Block-SetPosition(SkinnedMesh).md) - * [Set Position Shape](Block-SetPositionShape.md) - * [Set Position (Sequential)](Block-SetPosition(Sequential).md) - * [Tile/Warp Positions](Block-TileWarpPositions.md) - * [Size > Screen Space Size](Block-ScreenSpaceSize.md) - * [Spawn](Spawn.md) - * [Constant Spawn Rate](Block-ConstantRate.md) - * [Periodic Burst](Block-Burst.md) - * [Single Burst](Block-Burst.md) - * [Variable Spawn Rate](Block-VariableRate.md) - * [Attribute > Set Spawn Event \](Block-SetSpawnEvent.md) + * [Contexts](Context.md) + * [Event Context](Context-Event.md) + * [GPU Event Context](Context-GPUEvent.md) + * [Initialize Particle Context](Context-Initialize.md) + * [Output Mesh Context](Context-OutputMesh.md) + * [Output Distortion Context](Context-OutputDistortion.md) + * [Output Decal Context](Context-OutputForwardDecal.md) + * [Output Line Context](Context-OutputLine.md) + * [Output Particle Mesh Context](Context-OutputParticleMesh.md) + * [Output Particle HDRP Lit Decal Context](Context-OutputParticleHDRPLitDecal.md) + * [Output Particle HDRP Volumetric Fog Context](Context-OutputParticleHDRPVolumetricFog.md) + * [Output Particle URP Lit Decal Context](Context-OutputParticleURPLitDecal.md) + * [Output Point Context](Context-OutputPoint.md) + * [Output Particle Primitive Context](Context-OutputPrimitive.md) + * [Output ShaderGraph Quad Context](Context-OutputShaderGraphPlanarPrimitive.md) + * [Output Particle ShaderGraph Mesh Context](Context-OutputShaderGraphMesh.md) + * [Output ParticleStrip ShaderGraph Quad Context](Context-OutputShaderGraphStrip.md) + * [Shared Output Settings Context](SharedOutputSettings.md) + * [Global Settings Context](Context-OutputSharedSettings.md) + * [Lit Output Settings Context](Context-OutputLitSettings.md) + * [Spawn Context](Context-Spawn.md) + * [Update Particle Context](Context-Update.md) + * [Blocks](Block.md) + * [Attribute Blocks](Attribute.md) + * [Curve Block](Block-SetAttributeFromCurve.md) + * [Derived > Calculate Mass from Volume Block](Block-CalculateMassFromVolume.md) + * [Map Block](Block-SetAttributeFromMap.md) + * [Set Block](Block-SetAttribute.md) + * [Collision Blocks](Block-Collision-LandingPage.md) + * [Collision Shape Block](Block-CollisionShape.md) + * [Collide Depth Buffer Block](Block-CollideWithDepthBuffer.md) + * [Kill Shape Block](Block-KillShape.md) + * [Trigger Shape Block](Block-TriggerShape.md) + * [Flipbook Player Block](Block-FlipbookPlayer.md) + * [Force Blocks](Force.md) + * [Attractor Shape Signed Distance Field Block](Block-ConformToSignedDistanceField.md) + * [Attractor Shape Sphere Block](Block-ConformToSphere.md) + * [Force Block](Block-Force.md) + * [Gravity Block](Block-Gravity.md) + * [Linear Drag Block](Block-LinearDrag.md) + * [Turbulence Block](Block-Turbulence.md) + * [Vector Force Field Block](Block-VectorForceField.md) + * [HLSL > Custom HLSL Block](Block-CustomHLSL.md) + * [Implicit Blocks](Implicit.md) + * [Integration : Update Position Block](Block-UpdatePosition.md) + * [Integration : Update Rotation Block](Block-UpdateRotation.md) + * [Orientation Blocks](Orientation.md) + * [Connect Target Block](Block-ConnectTarget.md) + * [Orient Block](Block-Orient.md) + * [Output Blocks](Output.md) + * [Camera Fade Block](Block-CameraFade.md) + * [Subpixel Anti-Aliasing Block](Block-SubpixelAntiAliasing.md) + * [Position Shape Blocks](Block-SetPositionShape-LandingPage.md) + * [Set Position (Depth) Block](Block-SetPosition(Depth).md) + * [Set Position (Mesh) Block](Block-SetPosition(Mesh).md) + * [Set Position (Skinned Mesh) Block](Block-SetPosition(SkinnedMesh).md) + * [Set Position Shape Block](Block-SetPositionShape.md) + * [Set Position (Sequential) Block](Block-SetPosition(Sequential).md) + * [Tile/Warp Positions Block](Block-TileWarpPositions.md) + * [Size > Screen Space Size Block](Block-ScreenSpaceSize.md) + * [Spawn Blocks](Spawn.md) + * [Constant Spawn Rate Block](Block-ConstantRate.md) + * [Periodic Burst Block](Block-Burst.md) + * [Single Burst Block](Block-Burst.md) + * [Variable Spawn Rate Block](Block-VariableRate.md) + * [Attribute > Set Spawn Event \ Block](Block-SetSpawnEvent.md) * [Custom Spawn Blocks](CustomSpawn.md) - * [Increment Strip Index On Start](Block-IncrementStripIndexOnStart.md) - * [Set Spawn Time](Block-SetSpawnTime.md) - * [Spawn Over Distance](Block-SpawnOverDistance.md) + * [Increment Strip Index On Start Block](Block-IncrementStripIndexOnStart.md) + * [Set Spawn Time Block](Block-SetSpawnTime.md) + * [Spawn Over Distance Block](Block-SpawnOverDistance.md) * [Trigger Event Block reference](Block-Trigger-Event.md) - * [Velocity](Velocity.md) - * [Velocity from Direction & Speed (Change Speed)](Block-VelocityFromDirectionAndSpeed(ChangeSpeed).md) - * [Velocity from Direction & Speed (New Direction)](Block-VelocityFromDirectionAndSpeed(NewDirection).md) - * [Velocity from Direction & Speed (Random Direction)](Block-VelocityFromDirectionAndSpeed(RandomDirection).md) - * [Velocity from Direction & Speed (Spherical)](Block-VelocityFromDirectionAndSpeed(Spherical).md) - * [Velocity from Direction & Speed (Tangent)](Block-VelocityFromDirectionAndSpeed(Tangent).md) - * [Operator](Operator.md) - * [Attribute](OperatorAttribute.md) - * [Age Over Lifetime](Operator-AgeOverLifetime.md) - * [Get Attribute: age](Operator-GetAttributeAge.md) - * [Get Attribute: alive](Operator-GetAttributeAlive.md) - * [Get Attribute: alpha](Operator-GetAttributeAlpha.md) - * [Get Attribute: angle](Operator-GetAttributeAngle.md) - * [Get Attribute: angularVelocity](Operator-GetAttributeAngularVelocity.md) - * [Get Attribute: axisX](Operator-GetAttributeAxisX.md) - * [Get Attribute: axisY](Operator-GetAttributeAxisY.md) - * [Get Attribute: axisZ](Operator-GetAttributeAxisZ.md) - * [Get Attribute: color](Operator-GetAttributeColor.md) - * [Get Attribute: direction](Operator-GetAttributeDirection.md) - * [Get Attribute: lifetime](Operator-GetAttributeLifetime.md) - * [Get Attribute: mass](Operator-GetAttributeMass.md) - * [Get Attribute: oldPosition](Operator-GetAttributeOldPosition.md) - * [Get Attribute: particleCountInStrip](Operator-GetAttributeParticleCountInStrip.md) - * [Get Attribute: particleId](Operator-GetAttributeParticleID.md) - * [Get Attribute: particleIndexInStrip](Operator-GetAttributeParticleIndexInStrip.md) - * [Get Attribute: pivot](Operator-GetAttributePivot.md) - * [Get Attribute: position](Operator-GetAttributePosition.md) - * [Get Attribute: scale](Operator-GetAttributeScale.md) - * [Get Attribute: seed](Operator-GetAttributeSeed.md) - * [Get Attribute: size](Operator-GetAttributeSize.md) - * [Get Attribute: spawnIndex](Operator-GetAttributeSpawnIndex.md) - * [Get Attribute: spawnTime](Operator-GetAttributeSpawnTime.md) - * [Get Attribute: stripIndex](Operator-GetAttributeStripIndex.md) - * [Get Attribute: targetPosition](Operator-GetAttributeTargetPosition.md) - * [Get Attribute: texIndex](Operator-GetAttributeTexIndex.md) - * [Get Attribute: velocity](Operator-GetAttributeVelocity.md) - * [Get Custom Attribute](Operator-GetCustomAttribute.md) - * [Bitwise](Bitwise.md) - * [And](Operator-BitwiseAnd.md) - * [Complement](Operator-BitwiseComplement.md) - * [Left Shift](Operator-BitwiseLeftShift.md) - * [Or](Operator-BitwiseOr.md) - * [Right Shift](Operator-BitwiseRightShift.md) - * [Xor](Operator-BitwiseXor.md) - * [Built-in](Builtin.md) - * [Delta Time](Operator-DeltaTime.md) - * [Frame Index](Operator-FrameIndex.md) - * [Local to World](Operator-LocalToWorld.md) - * [System Seed](Operator-SystemSeed.md) - * [Total Time](Operator-TotalTime.md) - * [World to Local](Operator-WorldToLocal.md) - * [Camera](Camera.md) - * [Main Camera](Operator-MainCamera.md) - * [Viewport to World Point](Operator-ViewportToWorldPoint.md) - * [World to Viewport Point](Operator-WorldToViewportPoint.md) - * [Color](Color.md) - * [Color Luma](Operator-ColorLuma.md) - * [HSV to RGB](Operator-HSVToRGB.md) - * [RBG to HSV](Operator-RGBToHSV.md) - * [HLSL > Custom HLSL](Operator-CustomHLSL.md) - * [Inline](Inline.md) - * [AABox](Operator-InlineAABox.md) - * [AnimationCurve](Operator-InlineAnimationCurve.md) - * [ArcCircle](Operator-InlineArcCircle.md) - * [ArcCone](Operator-InlineArcCone.md) - * [ArcSphere](Operator-InlineArcSphere.md) - * [ArcTorus](Operator-InlineArcTorus.md) - * [bool](Operator-Inlinebool.md) - * [Camera](Operator-InlineCamera.md) - * [Circle](Operator-InlineCircle.md) - * [Color](Operator-InlineColor.md) - * [Cone](Operator-InlineCone.md) - * [Cubemap](Operator-InlineCubemap.md) - * [CubemapArray](Operator-InlineCubemapArray.md) - * [Cylinder](Operator-InlineCylinder.md) - * [Direction](Operator-InlineDirection.md) - * [FlipBook](Operator-InlineFlipBook.md) - * [float](Operator-Inlinefloat.md) - * [Gradient](Operator-InlineGradient.md) - * [int](Operator-Inlineint.md) - * [Line](Operator-InlineLine.md) - * [Matrix4x4](Operator-InlineMatrix4x4.md) - * [Mesh](Operator-InlineMesh.md) - * [OrientedBox](Operator-InlineOrientedBox.md) - * [Plane](Operator-InlinePlane.md) - * [Position](Operator-InlinePosition.md) - * [Sphere](Operator-InlineSphere.md) - * [TerrainType](Operator-InlineTerrainType.md) - * [Texture2D](Operator-InlineTexture2D.md) - * [Texture2DArray](Operator-InlineTexture2DArray.md) - * [Texture3D](Operator-InlineTexture3D.md) - * [Torus](Operator-InlineTorus.md) - * [Transform](Operator-InlineTransform.md) - * [uint](Operator-Inlineuint.md) - * [Vector](Operator-InlineVector.md) - * [Vector2](Operator-InlineVector2.md) - * [Vector3](Operator-InlineVector3.md) - * [Vector4](Operator-InlineVector4.md) - * [Logic](Logic.md) - * [And](Operator-LogicAnd.md) - * [Branch](Operator-Branch.md) - * [Compare](Operator-Compare.md) - * [Nand](Operator-LogicNand.md) - * [Nor](Operator-LogicNor.md) - * [Not](Operator-LogicNot.md) - * [Or](Operator-LogicOr.md) - * [Switch](Operator-Switch.md) - * [Math](Math.md) - * [Arithmetic](Arithmetic.md) - * [Absolute](Operator-Absolute.md) - * [Add](Operator-Add.md) - * [Divide](Operator-Divide.md) - * [Fractional](Operator-Fractional.md) - * [Inverse Lerp](Operator-InverseLerp.md) - * [Lerp](Operator-Lerp.md) - * [Modulo](Operator-Modulo.md) - * [Multiply](Operator-Multiply.md) - * [Negate](Operator-Negate.md) - * [One Minus](Operator-OneMinus.md) - * [Power](Operator-Power.md) - * [Reciprocal](Operator-Reciprocal.md) - * [Sign](Operator-Sign.md) - * [Smoothstep](Operator-Smoothstep.md) - * [Square Root](Operator-SquareRoot.md) - * [Step](Operator-Step.md) - * [Subtract](Operator-Subtract.md) - * [Clamp](Clamp.md) - * [Ceiling](Operator-Ceiling.md) - * [Clamp](Operator-Clamp.md) - * [Discretize](Operator-Discretize.md) - * [Floor](Operator-Floor.md) - * [Maximum](Operator-Maximum.md) - * [Minimum](Operator-Minimum.md) - * [Round](Operator-Round.md) - * [Saturate](Operator-Saturate.md) - * [Constants](Constants.md) - * [Epsilon](Operator-Epsilon.md) - * [Pi](Operator-Pi.md) - * [Coordinates](Coordinates.md) - * [Polar to Rectangular](Operator-PolarToRectangular.md) - * [Rectangular to Polar](Operator-RectangularToPolar.md) - * [Rectangular to Spherical](Operator-RectangularToSpherical.md) - * [Spherical to Rectangular](Operator-SphericalToRectangular.md) - * [Exp](Operator-Exp.md) - * [Geometry](Geometry.md) - * [Area (Circle)](Operator-Area(Circle).md) - * [Change Space](Operator-ChangeSpace.md) - * [Distance (Line)](Operator-Distance(Line).md) - * [Distance (Plane)](Operator-Distance(Plane).md) - * [Distance (Sphere)](Operator-Distance(Sphere).md) - * [InvertTRS (Matrix)](Operator-InvertTRS(Matrix).md) - * [Transform (Direction)](Operator-Transform(Direction).md) - * [Transform (Matrix)](Operator-Transform(Matrix).md) - * [Transform (Position)](Operator-Transform(Position).md) - * [Transform (Vector)](Operator-Transform(Vector).md) - * [Transform (Vector4)](Operator-Transform(Vector4).md) - * [Transpose (Matrix)](Operator-Transpose(Matrix).md)) - * [Volume (Axis Aligned Box)](Operator-Volume(AxisAlignedBox).md) - * [Volume (Cone)](Operator-Volume(Cone).md) - * [Volume (Cylinder)](Operator-Volume(Cylinder).md) - * [Volume (Oriented Box)](Operator-Volume(OrientedBox).md) - * [Volume (Sphere)](Operator-Volume(Sphere).md) - * [Volume (Torus)](Operator-Volume(Torus).md) - * [Log](Operator-Log.md) - * [Remap](Remap.md) - * [Remap](Operator-Remap.md) - * [Remap [0..1] => [-1..1]](Operator-Remap(-11).md) - * [Remap [-1..1] => [0..1]](Operator-Remap(01).md) - * [Trigonometry](Trigonometry.md) - * [Acos](Operator-Acos.md) - * [Asin](Operator-Asin.md) - * [Atan](Operator-Atan.md) - * [Atan2](Operator-Atan2.md) - * [Cosine](Operator-Cosine.md) - * [Sine](Operator-Sine.md) - * [Tangent](Operator-Tangent.md) - * [Vector](Vector.md) - * [Append Vector](Operator-AppendVector.md) - * [Construct Matrix](Operator-ConstructMatrix.md) - * [Cross Product](Operator-CrossProduct.md) - * [Distance](Operator-Distance.md) - * [Dot Product](Operator-DotProduct.md) - * [Length](Operator-Length.md) - * [Look At](Operator-LookAt.md) - * [Normalize](Operator-Normalize.md) - * [Rotate 2D](Operator-Rotate2D.md) - * [Rotate 3D](Operator-Rotate3D.md) - * [Sample Bezier](Operator-SampleBezier.md) - * [Squared Distance](Operator-SquaredDistance.md) - * [Squared Length](Operator-SquaredLength.md) - * [Swizzle](Operator-Swizzle.md) - * [Wave](Wave.md) - * [Sawtooth Wave](Operator-SawtoothWave.md) - * [Sine Wave](Operator-SineWave.md) - * [Square Wave](Operator-SquareWave.md) - * [Triangle Wave](Operator-TriangleWave.md) - * [Noise](Noise.md) - * [Cellular Curl Noise](Operator-CellularCurlNoise.md) - * [Cellular Noise](Operator-CellularNoise.md) - * [Perlin Curl Noise](Operator-PerlinCurlNoise.md) - * [Perlin Noise](Operator-PerlinNoise.md) - * [Value Curl Noise](Operator-ValueCurlNoise.md) - * [Value Noise](Operator-ValueNoise.md) - * [Random](Random.md) - * [Random Number](Operator-RandomNumber.md) - * [Random Selector](Operator-RandomSelectorWeighted.md) - * [Sampling](Sampling.md) - * [Buffer Count](Operator-BufferCount.md) - * [Get Mesh Index Count](Operator-MeshIndexCount.md) - * [Get Mesh Triangle Count](Operator-MeshTriangleCount.md) - * [Get Mesh Vertex Count](Operator-MeshVertexCount.md) - * [Get Skinned Mesh Index Count](Operator-SkinnedMeshIndexCount.md) - * [Get Skinned Mesh Triangle Count](Operator-SkinnedMeshTriangleCount.md) - * [Get Skinned Mesh Vertex Count](Operator-SkinnedMeshVertexCount.md) - * [Get Skinned Mesh Local Root Transform](Operator-SkinnedLocalTransform.md) - * [Get Skinned Mesh World Root Transform](Operator-SkinnedWorldTransform.md) - * [Get Texture Dimensions](Operator-GetTextureDimensions.md) - * [Load CameraBuffer](Operator-LoadCameraBuffer.md) - * [Load Texture2D](Operator-LoadTexture2D.md) - * [Load Texture2DArray](Operator-LoadTexture2DArray.md) - * [Load Texture3D](Operator-LoadTexture3D.md) - * [Position (Depth)](Operator-Position(Depth).md) - * [Sample Buffer](Operator-SampleBuffer.md ) - * [Sample CameraBuffer](Operator-SampleCameraBuffer.md) - * [Sample Curve](Operator-SampleCurve.md) - * [Sample Gradient](Operator-SampleGradient.md) - * [Sample Mesh](Operator-SampleMesh.md) - * [Sample Mesh Index](Operator-SampleMeshIndex.md) - * [Sample Skinned Mesh](Operator-SampleSkinnedMesh.md) - * [Sample Skinned Mesh Renderer Index](Operator-SampleMeshIndex.md) - * [Sample Signed Distance Field](Operator-SampleSDF.md) - * [Sample Texture2D](Operator-SampleTexture2D.md) - * [Sample Texture2DArray](Operator-SampleTexture2DArray.md) - * [Sample Texture3D](Operator-SampleTexture3D.md) - * [Sample TextureCube](Operator-SampleTextureCube.md) - * [Sample TextureCubeArray](Operator-SampleTextureCubeArray.md) - * [Sample Attribute Map](Operator-SampleAttributeMap.md) - * [Spawn > Spawn State](Operator-SpawnState.md) - * [Utility > Point Cache](Operator-PointCache.md) + * [Velocity Blocks](Velocity.md) + * [Velocity from Direction & Speed (Change Speed) Block](Block-VelocityFromDirectionAndSpeed(ChangeSpeed).md) + * [Velocity from Direction & Speed (New Direction) Block](Block-VelocityFromDirectionAndSpeed(NewDirection).md) + * [Velocity from Direction & Speed (Random Direction)Block](Block-VelocityFromDirectionAndSpeed(RandomDirection).md) + * [Velocity from Direction & Speed (Random Direction) Block](Block-VelocityFromDirectionAndSpeed(RandomDirection).md) + * [Velocity from Direction & Speed (Tangent) Block](Block-VelocityFromDirectionAndSpeed(Tangent).md) + * [Operators](Operator.md) + * [Attribute Operators](OperatorAttribute.md) + * [Age Over Lifetime Operator](Operator-AgeOverLifetime.md) + * [Get Attribute: age Operator](Operator-GetAttributeAge.md) + * [Get Attribute: alive Operator](Operator-GetAttributeAlive.md) + * [Get Attribute: alpha Operator](Operator-GetAttributeAlpha.md) + * [Get Attribute: angle Operator](Operator-GetAttributeAngle.md) + * [Get Attribute: angularVelocity Operator](Operator-GetAttributeAngularVelocity.md) + * [Get Attribute: axisX Operator](Operator-GetAttributeAxisX.md) + * [Get Attribute: axisY Operator](Operator-GetAttributeAxisY.md) + * [Get Attribute: axisZ Operator](Operator-GetAttributeAxisZ.md) + * [Get Attribute: color Operator](Operator-GetAttributeColor.md) + * [Get Attribute: direction Operator](Operator-GetAttributeDirection.md) + * [Get Attribute: lifetime Operator](Operator-GetAttributeLifetime.md) + * [Get Attribute: mass Operator](Operator-GetAttributeMass.md) + * [Get Attribute: oldPosition Operator](Operator-GetAttributeOldPosition.md) + * [Get Attribute: particleCountInStrip Operator](Operator-GetAttributeParticleCountInStrip.md) + * [Get Attribute: particleId Operator](Operator-GetAttributeParticleID.md) + * [Get Attribute: particleIndexInStrip Operator](Operator-GetAttributeParticleIndexInStrip.md) + * [Get Attribute: pivot Operator](Operator-GetAttributePivot.md) + * [Get Attribute: position Operator](Operator-GetAttributePosition.md) + * [Get Attribute: scale Operator](Operator-GetAttributeScale.md) + * [Get Attribute: seed Operator](Operator-GetAttributeSeed.md) + * [Get Attribute: size Operator](Operator-GetAttributeSize.md) + * [Get Attribute: spawnIndex Operator](Operator-GetAttributeSpawnIndex.md) + * [Get Attribute: spawnTime Operator](Operator-GetAttributeSpawnTime.md) + * [Get Attribute: stripIndex Operator](Operator-GetAttributeStripIndex.md) + * [Get Attribute: targetPosition Operator](Operator-GetAttributeTargetPosition.md) + * [Get Attribute: texIndex Operator](Operator-GetAttributeTexIndex.md) + * [Get Attribute: velocity Operator](Operator-GetAttributeVelocity.md) + * [Get Custom Attribute Operator](Operator-GetCustomAttribute.md) + * [Bitwise Operators](Bitwise.md) + * [And Operator](Operator-BitwiseAnd.md) + * [Complement Operator](Operator-BitwiseComplement.md) + * [Left Shift Operator](Operator-BitwiseLeftShift.md) + * [Or Operator](Operator-BitwiseOr.md) + * [Right Shift Operator](Operator-BitwiseRightShift.md) + * [Xor Operator](Operator-BitwiseXor.md) + * [Built-in Operators](Builtin.md) + * [Delta Time Operator](Operator-DeltaTime.md) + * [Frame Index Operator](Operator-FrameIndex.md) + * [Local to World Operator](Operator-LocalToWorld.md) + * [System Seed Operator](Operator-SystemSeed.md) + * [Total Time Operator](Operator-TotalTime.md) + * [World to Local Operator](Operator-WorldToLocal.md) + * [Camera Operators](Camera.md) + * [Main Camera Operator](Operator-MainCamera.md) + * [Viewport To World Point Operator](Operator-ViewportToWorldPoint.md) + * [World To Viewport Point Operator](Operator-WorldToViewportPoint.md) + * [Color Operators](Color.md) + * [Color Luma Operator](Operator-ColorLuma.md) + * [HSV to RGB Operator](Operator-HSVToRGB.md) + * [RGB to HSV Operator](Operator-RGBToHSV.md) + * [HLSL > Custom HLSL Operator](Operator-CustomHLSL.md) + * [Inline Operators](Inline.md) + * [AABox Operator](Operator-InlineAABox.md) + * [AnimationCurve Operator](Operator-InlineAnimationCurve.md) + * [ArcCircle Operator](Operator-InlineArcCircle.md) + * [ArcCone Operator](Operator-InlineArcCone.md) + * [ArcSphere Operator](Operator-InlineArcSphere.md) + * [ArcTorus Operator](Operator-InlineArcTorus.md) + * [bool Operator](Operator-Inlinebool.md) + * [Camera Operator](Operator-InlineCamera.md) + * [Circle Operator](Operator-InlineCircle.md) + * [Color Operator](Operator-InlineColor.md) + * [Cone Operator](Operator-InlineCone.md) + * [Cubemap Operator](Operator-InlineCubemap.md) + * [CubemapArray Operator](Operator-InlineCubemapArray.md) + * [Cylinder Operator](Operator-InlineCylinder.md) + * [Direction Operator](Operator-InlineDirection.md) + * [FlipBook Operator](Operator-InlineFlipBook.md) + * [float Operator](Operator-Inlinefloat.md) + * [Gradient Operator](Operator-InlineGradient.md) + * [int Operator](Operator-Inlineint.md) + * [Line Operator](Operator-InlineLine.md) + * [Matrix4x4 Operator](Operator-InlineMatrix4x4.md) + * [Mesh Operator](Operator-InlineMesh.md) + * [OrientedBox Operator](Operator-InlineOrientedBox.md) + * [Plane Operator](Operator-InlinePlane.md) + * [Position Operator](Operator-InlinePosition.md) + * [Sphere Operator](Operator-InlineSphere.md) + * [TerrainType Operator](Operator-InlineTerrainType.md) + * [Texture2D Operator](Operator-InlineTexture2D.md) + * [Texture2DArray Operator](Operator-InlineTexture2DArray.md) + * [Texture3D Operator](Operator-InlineTexture3D.md) + * [Torus Operator](Operator-InlineTorus.md) + * [Transform Operator](Operator-InlineTransform.md) + * [uint Operator](Operator-Inlineuint.md) + * [Vector Operator](Operator-InlineVector.md) + * [Vector2 Operator](Operator-InlineVector2.md) + * [Vector3 Operator](Operator-InlineVector3.md) + * [Vector4 Operator](Operator-InlineVector4.md) + * [Logic Operators](Logic.md) + * [And Operator](Operator-LogicAnd.md) + * [Branch Operator](Operator-Branch.md) + * [Compare Operator](Operator-Compare.md) + * [Nand Operator](Operator-LogicNand.md) + * [Nor Operator](Operator-LogicNor.md) + * [Not Operator](Operator-LogicNot.md) + * [Or Operator](Operator-LogicOr.md) + * [Switch Operator](Operator-Switch.md) + * [Math Operators](Math.md) + * [Arithmetic Operators](Arithmetic.md) + * [Absolute Operator](Operator-Absolute.md) + * [Add Operator](Operator-Add.md) + * [Divide Operator](Operator-Divide.md) + * [Fractional Operator](Operator-Fractional.md) + * [Inverse Lerp Operator](Operator-InverseLerp.md) + * [Lerp Operator](Operator-Lerp.md) + * [Modulo Operator](Operator-Modulo.md) + * [Multiply Operator](Operator-Multiply.md) + * [Negate Operator](Operator-Negate.md) + * [One Minus Operator](Operator-OneMinus.md) + * [Power Operator](Operator-Power.md) + * [Reciprocal Operator](Operator-Reciprocal.md) + * [Sign Operator](Operator-Sign.md) + * [Smoothstep Operator](Operator-Smoothstep.md) + * [Square Root Operator](Operator-SquareRoot.md) + * [Step Operator](Operator-Step.md) + * [Subtract Operator](Operator-Subtract.md) + * [Clamp Operators](Clamp.md) + * [Ceiling Operator](Operator-Ceiling.md) + * [Clamp Operator](Operator-Clamp.md) + * [Discretize Operator](Operator-Discretize.md) + * [Floor Operator](Operator-Floor.md) + * [Maximum Operator](Operator-Maximum.md) + * [Minimum Operator](Operator-Minimum.md) + * [Round Operator](Operator-Round.md) + * [Saturate Operator](Operator-Saturate.md) + * [Constants Operators](Constants.md) + * [Epsilon Operator](Operator-Epsilon.md) + * [Pi Operator](Operator-Pi.md) + * [Coordinates Operators](Coordinates.md) + * [Polar to Rectangular Operator](Operator-PolarToRectangular.md) + * [Rectangular to Polar Operator](Operator-RectangularToPolar.md) + * [Rectangular to Spherical Operator](Operator-RectangularToSpherical.md) + * [Spherical to Rectangular Operator](Operator-SphericalToRectangular.md) + * [Exp Operator](Operator-Exp.md) + * [Geometry Operators](Geometry.md) + * [Change Space Operator](Operator-ChangeSpace.md) + * [Distance (Line) Operator](Operator-Distance(Line).md) + * [Distance (Plane) Operator](Operator-Distance(Plane).md) + * [Distance (Sphere) Operator](Operator-Distance(Sphere).md) + * [InvertTRS (Matrix) Operator](Operator-InvertTRS(Matrix).md) + * [Transform (Direction) Operator](Operator-Transform(Direction).md) + * [Transform (Matrix) Operator](Operator-Transform(Matrix).md) + * [Transform (Position) Operator](Operator-Transform(Position).md) + * [Transform (Vector) Operator](Operator-Transform(Vector).md) + * [Transform (Vector4) Operator](Operator-Transform(Vector4).md) + * [Transpose (Matrix) Operator](Operator-Transpose(Matrix).md) + * [Volume (Axis Aligned Box) Operator](Operator-Volume(AxisAlignedBox).md) + * [Volume (Cone) Operator](Operator-Volume(Cone).md) + * [Volume (Cylinder) Operator](Operator-Volume(Cylinder).md) + * [Volume (Oriented Box) Operator](Operator-Volume(OrientedBox).md) + * [Volume (Sphere) Operator](Operator-Volume(Sphere).md) + * [Volume (Torus) Operator](Operator-Volume(Torus).md) + * [Log Operator](Operator-Log.md) + * [Remap Operators](Remap.md) + * [Remap Operator](Operator-Remap.md) + * [Remap [0..1] => [-1..1] Operator](Operator-Remap(-11).md) + * [Remap [-1..1] => [0..1] Operator](Operator-Remap(01).md) + * [Trigonometry Operators](Trigonometry.md) + * [Acos Operator](Operator-Acos.md) + * [Asin Operator](Operator-Asin.md) + * [Atan Operator](Operator-Atan.md) + * [Atan2 Operator](Operator-Atan2.md) + * [Cosine Operator](Operator-Cosine.md) + * [Sine Operator](Operator-Sine.md) + * [Tangent Operator](Operator-Tangent.md) + * [Vector Operators](Vector.md) + * [Append Vector Operator](Operator-AppendVector.md) + * [Construct Matrix Operator](Operator-ConstructMatrix.md) + * [Cross Product Operator](Operator-CrossProduct.md) + * [Distance Operator](Operator-Distance.md) + * [Dot Product Operator](Operator-DotProduct.md) + * [Length Operator Operator](Operator-Length.md) + * [Look At Operator](Operator-LookAt.md) + * [Normalize Operator](Operator-Normalize.md) + * [Rotate 2D Operator](Operator-Rotate2D.md) + * [Rotate 3D Operator](Operator-Rotate3D.md) + * [Sample Bezier Operator](Operator-SampleBezier.md) + * [Squared Distance Operator](Operator-SquaredDistance.md) + * [Squared Length Operator](Operator-SquaredLength.md) + * [Swizzle Operator](Operator-Swizzle.md) + * [Wave Operators](Wave.md) + * [Sawtooth Wave Operator](Operator-SawtoothWave.md) + * [Sine Wave Operator](Operator-SineWave.md) + * [Square Wave Operator](Operator-SquareWave.md) + * [Triangle Wave Operator](Operator-TriangleWave.md) + * [Noise Operators](Noise.md) + * [Cellular Curl Noise Operator](Operator-CellularCurlNoise.md) + * [Cellular Noise Operator](Operator-CellularNoise.md) + * [Perlin Curl Noise Operator](Operator-PerlinCurlNoise.md) + * [Perlin Noise Operator](Operator-PerlinNoise.md) + * [Value Curl Noise Operator](Operator-ValueCurlNoise.md) + * [Value Noise Operator](Operator-ValueNoise.md) + * [Random Operators](Random.md) + * [Random Number Operator](Operator-RandomNumber.md) + * [Random Selector Operator](Operator-RandomSelectorWeighted.md) + * [Sampling Operators](Sampling.md) + * [Buffer Count Operator](Operator-BufferCount.md) + * [Get Mesh Index Count Operator](Operator-MeshIndexCount.md) + * [Get Mesh Triangle Count Operator](Operator-MeshTriangleCount.md) + * [Get Mesh Vertex Count Operator](Operator-MeshVertexCount.md) + * [Get Skinned Mesh Index Count Operator](Operator-SkinnedMeshIndexCount.md) + * [Get Skinned Mesh Triangle Count Operator](Operator-SkinnedMeshTriangleCount.md) + * [Get Skinned Mesh Vertex Count Operator](Operator-SkinnedMeshVertexCount.md) + * [Get Skinned Mesh Local Root Transform Operator](Operator-SkinnedLocalTransform.md) + * [Get Skinned Mesh World Root Transform Operator](Operator-SkinnedWorldTransform.md) + * [Get Texture Dimensions Operator](Operator-GetTextureDimensions.md) + * [Load CameraBuffer Operator](Operator-LoadCameraBuffer.md) + * [Load Texture2D Operator](Operator-LoadTexture2D.md) + * [Load Texture2DArray Operator](Operator-LoadTexture2DArray.md) + * [Load Texture3D Operator](Operator-LoadTexture3D.md) + * [Position (Depth) Operator](Operator-Position(Depth).md) + * [Sample Buffer Operator](Operator-SampleBuffer.md) + * [Sample CameraBuffer Operator](Operator-SampleCameraBuffer.md) + * [Sample Curve Operator](Operator-SampleCurve.md) + * [Sample Gradient Operator](Operator-SampleGradient.md) + * [Sample Mesh Operator](Operator-SampleMesh.md) + * [Sample Mesh Index Operator](Operator-SampleMeshIndex.md) + * [Sample Skinned Mesh Operator](Operator-SampleSkinnedMesh.md) + * [Sample Skinned Mesh Renderer Index Operator](Operator-SampleMeshIndex.md) + * [Sample Signed Distance Field Operator](Operator-SampleSDF.md) + * [Sample Texture2D Operator](Operator-SampleTexture2D.md) + * [Sample Texture2DArray Operator](Operator-SampleTexture2DArray.md) + * [Sample Texture3D Operator](Operator-SampleTexture3D.md) + * [Sample TextureCube Operator](Operator-SampleTextureCube.md) + * [Sample TextureCubeArray Operator](Operator-SampleTextureCubeArray.md) + * [Sample Attribute Map Operator](Operator-SampleAttributeMap.md) + * [Spawn > Spawn State Operator](Operator-SpawnState.md) + * [Utility > Point Cache Operator](Operator-PointCache.md) * [Performance and optimization](performance-debug-panel.md) * [Reference](Reference.md) * [Standard Attributes](Reference-Attributes.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Timeline.md b/Packages/com.unity.visualeffectgraph/Documentation~/Timeline.md index da8dafa725d..71949160acf 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Timeline.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Timeline.md @@ -1,4 +1,4 @@ -# Visual Effects and Timeline +# Using Visual Effects and Timeline Use Unity’s [Timeline](https://docs.unity3d.com/Packages/com.unity.timeline@latest/index.html?subfolder=/manual/index.html) to control a Visual Effect Graph’s properties and [Events](#Events). To do this, add the following to a [Timeline instance](https://docs.unity3d.com/Packages/com.unity.timeline@latest/index.html?subfolder=/manual/wf_instance.html): diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Trigonometry.md b/Packages/com.unity.visualeffectgraph/Documentation~/Trigonometry.md index 0d3658633e8..1bd91bcaa34 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Trigonometry.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Trigonometry.md @@ -4,13 +4,13 @@ Perform trigonometric calculations. | **Page** | **Description** | | --- | --- | -| [Acos](Operator-Acos.md) | Calculate the arccosine (inverse cosine) of an input. | -| [Asin](Operator-Asin.md) | Calculate the arcsine (inverse sine) of an input. | -| [Atan](Operator-Atan.md) | Calculate the arctangent (inverse tangent) of an input. | -| [Atan2](Operator-Atan2.md) | Calculate the angle between the x-axis and a vector. | -| [Cosine](Operator-Cosine.md) | Calculate the cosine of an input. | -| [Sine](Operator-Sine.md) | Calculate the sine of an input. | -| [Tangent](Operator-Tangent.md) | Calculate the tangent of an input. | +| [Acos Operator](Operator-Acos.md) | Calculate the arccosine (inverse cosine) of an input. | +| [Asin Operator](Operator-Asin.md) | Calculate the arcsine (inverse sine) of an input. | +| [Atan Operator](Operator-Atan.md) | Calculate the arctangent (inverse tangent) of an input. | +| [Atan2 Operator](Operator-Atan2.md) | Calculate the angle between the x-axis and a vector. | +| [Cosine Operator](Operator-Cosine.md) | Calculate the cosine of an input. | +| [Sine Operator](Operator-Sine.md) | Calculate the sine of an input. | +| [Tangent Operator](Operator-Tangent.md) | Calculate the tangent of an input. | ## Additional resources diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Vector.md b/Packages/com.unity.visualeffectgraph/Documentation~/Vector.md index d46a00d38b6..353eed1ea2d 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Vector.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Vector.md @@ -4,20 +4,20 @@ Perform vector and matrix calculations. | **Page** | **Description** | | --- | --- | -| [Append Vector](Operator-AppendVector.md) | Combine up to four inputs into a single vector. | -| [Construct Matrix](Operator-ConstructMatrix.md) | Construct a 4x4 matrix from four `Vector4` values. | -| [Cross Product](Operator-CrossProduct.md) | Calculate the vector that's perpendicular to two input vectors | -| [Distance](Operator-Distance.md) | Calculate the distance between two points. | -| [Dot Product](Operator-DotProduct.md) | Determine whether two normalized vectors point in the same direction. | -| [Length](Operator-Length.md) | Calculate the length of a vector. | -| [Look At](Operator-LookAt.md) | Calculate the transform required to rotate a particle to look at a position. | -| [Normalize](Operator-Normalize.md) | Normalize a vector. | -| [Rotate 2D](Operator-Rotate2D.md) | Rotate a point in 2D around a center point. | -| [Rotate 3D](Operator-Rotate3D.md) | Rotate a point in 3D around a center point. | -| [Sample Bezier](Operator-SampleBezier.md) | Return information about a curve. | -| [Squared Distance](Operator-SquaredDistance.md) | Calculate the square of the distance between two points. | -| [Squared Length](Operator-SquaredLength.md) | Calculate the square of the length of a vector. | -| [Swizzle](Operator-Swizzle.md) | Rearrange the components of an input vector. | +| [Append Vector Operator](Operator-AppendVector.md) | Combine up to four inputs into a single vector. | +| [Construct Matrix Operator](Operator-ConstructMatrix.md) | Construct a 4x4 matrix from four `Vector4` values. | +| [Cross Product Operator](Operator-CrossProduct.md) | Calculate the vector that's perpendicular to two input vectors | +| [Distance Operator](Operator-Distance.md) | Calculate the distance between two points. | +| [Dot Product Operator](Operator-DotProduct.md) | Determine whether two normalized vectors point in the same direction. | +| [Length Operator](Operator-Length.md) | Calculate the length of a vector. | +| [Look At Operator](Operator-LookAt.md) | Calculate the transform required to rotate a particle to look at a position. | +| [Normalize Operator](Operator-Normalize.md) | Normalize a vector. | +| [Rotate 2D Operator](Operator-Rotate2D.md) | Rotate a point in 2D around a center point. | +| [Rotate 3D Operator](Operator-Rotate3D.md) | Rotate a point in 3D around a center point. | +| [Sample Bezier Operator](Operator-SampleBezier.md) | Return information about a curve. | +| [Squared Distance Operator](Operator-SquaredDistance.md) | Calculate the square of the distance between two points. | +| [Squared Length Operator](Operator-SquaredLength.md) | Calculate the square of the length of a vector. | +| [Swizzle Operator](Operator-Swizzle.md) | Rearrange the components of an input vector. | ## Additional resources diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Velocity.md b/Packages/com.unity.visualeffectgraph/Documentation~/Velocity.md index cb14d7ffd83..693b821248a 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Velocity.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Velocity.md @@ -4,11 +4,11 @@ Dynamically adjust the velocity of particles. | **Page** | **Description** | | --- | --- | -| [Velocity from Direction & Speed (Change Speed)](Block-VelocityFromDirectionAndSpeed(ChangeSpeed).md) | Calculate velocity by scaling the direction of the particle using its speed. | -| [Velocity from Direction & Speed (New Direction)](Block-VelocityFromDirectionAndSpeed(NewDirection).md) | Calculate velocity by scaling a new direction vector using the speed of the particle. | -| [Velocity from Direction & Speed (Random Direction)](Block-VelocityFromDirectionAndSpeed(RandomDirection).md) | Calculate velocity by scaling a random direction vector using the speed of the particle. | -| [Velocity from Direction & Speed (Spherical)](Block-VelocityFromDirectionAndSpeed(Spherical).md) | Calculate velocity by scaling a spherical direction vector using the speed of the particle. | -| [Velocity from Direction & Speed (Tangent)](Block-VelocityFromDirectionAndSpeed(Tangent).md) | Calculate velocity by scaling a tangent direction vector using the speed of the particle. | +| [Velocity from Direction & Speed (Change Speed) Block](Block-VelocityFromDirectionAndSpeed(ChangeSpeed).md) | Calculate velocity by scaling the direction of the particle using its speed. | +| [Velocity from Direction & Speed (New Direction) Block](Block-VelocityFromDirectionAndSpeed(NewDirection).md) | Calculate velocity by scaling a new direction vector using the speed of the particle. | +| [Velocity from Direction & Speed (Random Direction) Block](Block-VelocityFromDirectionAndSpeed(RandomDirection).md) | Calculate velocity by scaling a random direction vector using the speed of the particle. | +| [Velocity from Direction & Speed (Spherical) Block](Block-VelocityFromDirectionAndSpeed(Spherical).md) | Calculate velocity by scaling a spherical direction vector using the speed of the particle. | +| [Velocity from Direction & Speed (Tangent) Block](Block-VelocityFromDirectionAndSpeed(Tangent).md) | Calculate velocity by scaling a tangent direction vector using the speed of the particle. | ## Additional resources diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/VisualEffectPreferences.md b/Packages/com.unity.visualeffectgraph/Documentation~/VisualEffectPreferences.md index 470e9c677bd..beaab342da3 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/VisualEffectPreferences.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/VisualEffectPreferences.md @@ -3,10 +3,10 @@ The Visual Effect Graph preferences are in the Unity Preferences window. To access them: Windows: -* Navigate to **Edit > Preferences > Visual Effects** +* Navigate to **Edit** > **Preferences** > **Visual Effects** macOS: -* Navigate to **Unity > Settings > Visual Effects** +* Navigate to **Unity** > **Settings** > **Visual Effects** ## Properties: diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Wave.md b/Packages/com.unity.visualeffectgraph/Documentation~/Wave.md index abe7993164e..0fb8b6644a1 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Wave.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Wave.md @@ -4,10 +4,10 @@ Generate waveforms, for example to control the behavior of particles over time. | **Page** | **Description** | | --- | --- | -| [Sawtooth Wave](Operator-SawtoothWave.md) | Generate a waveform that increases, then resets and repeats. | -| [Sine Wave](Operator-SineWave.md) | Generate a waveform that smoothly oscillates between two values. | -| [Square Wave](Operator-SquareWave.md) | Generate a value that alternates between two values. | -| [Triangle Wave](Operator-TriangleWave.md) | Generate a value that oscillates between two values. | +| [Sawtooth Wave Operator](Operator-SawtoothWave.md) | Generate a waveform that increases, then resets and repeats. | +| [Sine Wave Operator](Operator-SineWave.md) | Generate a waveform that smoothly oscillates between two values. | +| [Square Wave Operator](Operator-SquareWave.md) | Generate a value that alternates between two values. | +| [Triangle Wave Operator](Operator-TriangleWave.md) | Generate a value that oscillates between two values. | ## Additional resources From 3397c9e3ad28f05c8391584c365e262ae40b64cc Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Mon, 20 Jul 2026 21:46:49 +0000 Subject: [PATCH 37/52] [Port] [6000.5] [UUM-146740][SRP] Re-adding Volume Gizmo in the Scene View --- .../Runtime/Volume/Volume.cs.meta | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Packages/com.unity.render-pipelines.core/Runtime/Volume/Volume.cs.meta b/Packages/com.unity.render-pipelines.core/Runtime/Volume/Volume.cs.meta index e3aa1d2d2ec..27ac2bc40ef 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/Volume/Volume.cs.meta +++ b/Packages/com.unity.render-pipelines.core/Runtime/Volume/Volume.cs.meta @@ -5,7 +5,7 @@ MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 - icon: {instanceID: 0} + icon: {fileID: 2800000, guid: 177b2538515c71b4a86aa1cad939807a, type: 2} userData: assetBundleName: assetBundleVariant: From e873c39b8c4a7b78515665f9179477d488ca1426 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Mon, 20 Jul 2026 21:46:50 +0000 Subject: [PATCH 38/52] [Port] [6000.5] [UUM-147477] Fix re-adding a scene to an APV baking set after undo --- .../ProbeVolume/ProbeVolumeLightingTab.cs | 3 +- .../ProbeVolumeBakingSet.Editor.cs | 36 +++- .../ProbeVolume/ProbeVolumeBakingSet.cs | 4 + .../Tests/Editor/ProbeVolumeBakingSetTests.cs | 154 ++++++++++++++++++ .../Editor/ProbeVolumeBakingSetTests.cs.meta | 11 ++ 5 files changed, 204 insertions(+), 4 deletions(-) create mode 100644 Packages/com.unity.render-pipelines.core/Tests/Editor/ProbeVolumeBakingSetTests.cs create mode 100644 Packages/com.unity.render-pipelines.core/Tests/Editor/ProbeVolumeBakingSetTests.cs.meta diff --git a/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeVolumeLightingTab.cs b/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeVolumeLightingTab.cs index f3ef3cf3662..bfbdd1651e7 100644 --- a/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeVolumeLightingTab.cs +++ b/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeVolumeLightingTab.cs @@ -640,9 +640,8 @@ void InitializeSceneList() onRemoveCallback = (list) => { var guid = (string)list.list[list.index]; - activeSet.RemoveScene(guid); Undo.RegisterCompleteObjectUndo(new Object[] { activeSet }, "Deleted scene in baking set"); - EditorUtility.SetDirty(activeSet); + activeSet.RemoveScene(guid); }, drawHeaderCallback = (rect) => diff --git a/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeVolumeBakingSet.Editor.cs b/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeVolumeBakingSet.Editor.cs index 6a88f0f9b54..7bbcb35034d 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeVolumeBakingSet.Editor.cs +++ b/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeVolumeBakingSet.Editor.cs @@ -34,6 +34,36 @@ internal static Dictionary Instance return sceneToBakingSet; } } + + // Undo/redo restores a set's serialized scene list without going through Add/Remove/SetScene. + internal static void Resync(ProbeVolumeBakingSet set) + { + if (sceneToBakingSet == null) + return; + + var entityId = set.GetEntityId(); + var staleGUIDs = new List(); + foreach (var kvp in sceneToBakingSet) + { + if (kvp.Value.m_EntityId == entityId && !set.m_SceneGUIDs.Contains(kvp.Key)) + staleGUIDs.Add(kvp.Key); + } + foreach (var guid in staleGUIDs) + sceneToBakingSet.Remove(guid); + + var reference = new ProbeVolumeBakingSetWeakReference(set); + foreach (var guid in set.m_SceneGUIDs) + { + // Don't steal scenes whose current owner is loaded and still lists them (e.g. a duplicated set asset). + if (sceneToBakingSet.TryGetValue(guid, out var existing) && existing.m_EntityId != entityId) + { + var owner = existing.IsLoaded() ? existing.Get() : null; + if (owner == null || owner.m_SceneGUIDs.Contains(guid)) + continue; + } + sceneToBakingSet[guid] = reference; + } + } } [SerializeField] @@ -72,7 +102,8 @@ public void RemoveScene(string guid) m_SceneGUIDs.Remove(guid); m_SceneBakeData.Remove(guid); - SceneToBakingSet.Instance.Remove(guid); + if (SceneToBakingSet.Instance.TryGetValue(guid, out var mapped) && mapped.m_EntityId == this.GetEntityId()) + SceneToBakingSet.Instance.Remove(guid); EditorUtility.SetDirty(this); } @@ -82,7 +113,8 @@ internal void SetScene(string guid, int index, SceneBakeData bakeData = null) var previousSceneGUID = m_SceneGUIDs[index]; m_SceneGUIDs[index] = guid; - SceneToBakingSet.Instance.Remove(previousSceneGUID); + if (SceneToBakingSet.Instance.TryGetValue(previousSceneGUID, out var mapped) && mapped.m_EntityId == this.GetEntityId()) + SceneToBakingSet.Instance.Remove(previousSceneGUID); SceneToBakingSet.Instance[guid] = new ProbeVolumeBakingSetWeakReference(this); m_SceneBakeData.Add(guid, bakeData != null ? bakeData : new SceneBakeData()); diff --git a/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeVolumeBakingSet.cs b/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeVolumeBakingSet.cs index b1241474be2..a48bdbdca09 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeVolumeBakingSet.cs +++ b/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeVolumeBakingSet.cs @@ -311,6 +311,10 @@ private void OnValidate() m_LightingScenarios = new List() { ProbeReferenceVolume.defaultLightingScenario }; settings.Upgrade(); + +#if UNITY_EDITOR + SceneToBakingSet.Resync(this); +#endif } void OnEnable() diff --git a/Packages/com.unity.render-pipelines.core/Tests/Editor/ProbeVolumeBakingSetTests.cs b/Packages/com.unity.render-pipelines.core/Tests/Editor/ProbeVolumeBakingSetTests.cs new file mode 100644 index 00000000000..c54faa3b98f --- /dev/null +++ b/Packages/com.unity.render-pipelines.core/Tests/Editor/ProbeVolumeBakingSetTests.cs @@ -0,0 +1,154 @@ +using System.Linq; +using NUnit.Framework; +using UnityEngine; +using UnityEngine.Rendering; + +namespace UnityEditor.Rendering.Tests +{ + [TestFixture] + class ProbeVolumeBakingSetTests + { + ProbeVolumeBakingSet m_BakingSet; + string m_SceneGUID; + + [SetUp] + public void SetUp() + { + m_BakingSet = ScriptableObject.CreateInstance(); + m_BakingSet.SetDefaults(); + m_SceneGUID = GUID.Generate().ToString(); + } + + [TearDown] + public void TearDown() + { + Undo.ClearUndo(m_BakingSet); + ProbeVolumeBakingSet.SceneToBakingSet.Instance.Remove(m_SceneGUID); + Object.DestroyImmediate(m_BakingSet); + } + + [Test] + public void SceneCanBeReAddedAfterUndoOfAdd() + { + Undo.IncrementCurrentGroup(); + Undo.RegisterCompleteObjectUndo(m_BakingSet, "Added scene in baking set"); + m_BakingSet.AddScene(m_SceneGUID); + Assert.IsTrue(m_BakingSet.sceneGUIDs.Contains(m_SceneGUID)); + Assert.AreEqual(m_BakingSet, ProbeVolumeBakingSet.GetBakingSetForScene(m_SceneGUID)); + + Undo.IncrementCurrentGroup(); + Undo.PerformUndo(); + Assert.IsFalse(m_BakingSet.sceneGUIDs.Contains(m_SceneGUID)); + Assert.IsNull(ProbeVolumeBakingSet.GetBakingSetForScene(m_SceneGUID)); + + Assert.IsTrue(m_BakingSet.TryAddScene(m_SceneGUID)); + Assert.IsTrue(m_BakingSet.sceneGUIDs.Contains(m_SceneGUID)); + Assert.AreEqual(m_BakingSet, ProbeVolumeBakingSet.GetBakingSetForScene(m_SceneGUID)); + } + + [Test] + public void RedoOfAddRestoresSceneAndMapping() + { + Undo.IncrementCurrentGroup(); + Undo.RegisterCompleteObjectUndo(m_BakingSet, "Added scene in baking set"); + m_BakingSet.AddScene(m_SceneGUID); + + Undo.IncrementCurrentGroup(); + Undo.PerformUndo(); + Assert.IsFalse(m_BakingSet.sceneGUIDs.Contains(m_SceneGUID)); + + Undo.PerformRedo(); + Assert.IsTrue(m_BakingSet.sceneGUIDs.Contains(m_SceneGUID)); + Assert.AreEqual(m_BakingSet, ProbeVolumeBakingSet.GetBakingSetForScene(m_SceneGUID)); + } + + [Test] + public void UndoOfRemoveRestoresSceneAndMapping() + { + m_BakingSet.AddScene(m_SceneGUID); + + Undo.IncrementCurrentGroup(); + Undo.RegisterCompleteObjectUndo(m_BakingSet, "Deleted scene in baking set"); + m_BakingSet.RemoveScene(m_SceneGUID); + Assert.IsFalse(m_BakingSet.sceneGUIDs.Contains(m_SceneGUID)); + Assert.IsNull(ProbeVolumeBakingSet.GetBakingSetForScene(m_SceneGUID)); + + Undo.IncrementCurrentGroup(); + Undo.PerformUndo(); + Assert.IsTrue(m_BakingSet.sceneGUIDs.Contains(m_SceneGUID)); + Assert.AreEqual(m_BakingSet, ProbeVolumeBakingSet.GetBakingSetForScene(m_SceneGUID)); + } + + [Test] + public void DuplicateSetDoesNotStealSceneMapping() + { + m_BakingSet.AddScene(m_SceneGUID); + + var duplicate = Object.Instantiate(m_BakingSet); + try + { + ProbeVolumeBakingSet.SceneToBakingSet.Resync(duplicate); + Assert.AreEqual(m_BakingSet, ProbeVolumeBakingSet.GetBakingSetForScene(m_SceneGUID)); + + duplicate.RemoveScene(m_SceneGUID); + Assert.IsFalse(duplicate.sceneGUIDs.Contains(m_SceneGUID)); + Assert.AreEqual(m_BakingSet, ProbeVolumeBakingSet.GetBakingSetForScene(m_SceneGUID)); + } + finally + { + Object.DestroyImmediate(duplicate); + } + } + + [Test] + public void SetSceneOnDuplicateDoesNotEraseOwnersMapping() + { + m_BakingSet.AddScene(m_SceneGUID); + + var duplicate = Object.Instantiate(m_BakingSet); + var replacementGUID = GUID.Generate().ToString(); + try + { + duplicate.SetScene(replacementGUID, 0); + Assert.AreEqual(m_BakingSet, ProbeVolumeBakingSet.GetBakingSetForScene(m_SceneGUID)); + Assert.AreEqual(duplicate, ProbeVolumeBakingSet.GetBakingSetForScene(replacementGUID)); + } + finally + { + ProbeVolumeBakingSet.SceneToBakingSet.Instance.Remove(replacementGUID); + Object.DestroyImmediate(duplicate); + } + } + + [Test] + public void UndoOfMoveBetweenSetsRestoresOwnership() + { + m_BakingSet.singleSceneMode = false; + m_BakingSet.AddScene(m_SceneGUID); + + var otherSet = ScriptableObject.CreateInstance(); + otherSet.SetDefaults(); + otherSet.singleSceneMode = false; + try + { + Undo.IncrementCurrentGroup(); + Undo.RegisterCompleteObjectUndo(new Object[] { otherSet, m_BakingSet }, "Moved scene to baking set"); + otherSet.MoveSceneToBakingSet(m_SceneGUID, -1); + Assert.IsFalse(m_BakingSet.sceneGUIDs.Contains(m_SceneGUID)); + Assert.IsTrue(otherSet.sceneGUIDs.Contains(m_SceneGUID)); + Assert.AreEqual(otherSet, ProbeVolumeBakingSet.GetBakingSetForScene(m_SceneGUID)); + + Undo.IncrementCurrentGroup(); + Undo.PerformUndo(); + Assert.IsTrue(m_BakingSet.sceneGUIDs.Contains(m_SceneGUID)); + Assert.IsFalse(otherSet.sceneGUIDs.Contains(m_SceneGUID)); + Assert.AreEqual(m_BakingSet, ProbeVolumeBakingSet.GetBakingSetForScene(m_SceneGUID)); + } + finally + { + Undo.ClearUndo(otherSet); + Object.DestroyImmediate(otherSet); + } + } + } +} diff --git a/Packages/com.unity.render-pipelines.core/Tests/Editor/ProbeVolumeBakingSetTests.cs.meta b/Packages/com.unity.render-pipelines.core/Tests/Editor/ProbeVolumeBakingSetTests.cs.meta new file mode 100644 index 00000000000..98810c38f44 --- /dev/null +++ b/Packages/com.unity.render-pipelines.core/Tests/Editor/ProbeVolumeBakingSetTests.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5cbe6d8602c19d042a577a5a0fcf5307 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: From 2d7b1cae8cf89b9ec54691f0a737d1d6339c6f43 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Mon, 20 Jul 2026 21:46:50 +0000 Subject: [PATCH 39/52] [Port] [6000.5] Fixed grammatical errors in HDRP Volumetric Clouds Volume Override reference page --- .../volumetric-clouds-volume-override-reference.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/volumetric-clouds-volume-override-reference.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/volumetric-clouds-volume-override-reference.md index f14b3bcbfc2..d4a07371472 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/volumetric-clouds-volume-override-reference.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/volumetric-clouds-volume-override-reference.md @@ -119,8 +119,8 @@ Also, there is variations in the green and blue channels to specify more of less ![A rectangular texture with 8 bands of 32 pixels each. The first 3 bands are thin clouds at different heights. The next band is a tall fluffy cloud. The next 3 bands are clouds that get spottier at different heights. The final band is a curving vertical cloud. The edge at 96 pixels maps to the top-left of the sky, and the edge at 128 pixels maps to the center of the sky. The final image is a tower of layered cloud, with smaller clouds scattered nearby.)](Images/Volumetric-Clouds-manual-lut.png) -Here is an example cloud LUT that can be used in manual mode. On the top image, the LUT is divided into 8 32px wide parts, each representing a cloud type with a specific profile and altitude. (stratus on the left and cumulus on the right) -On the bottom left, the cloud map uses grayscale values to map which type of clouds is used. For exemple a radial gradient using thoses values creates a circular cloud as seen on the bottom right using the profile set on the cloud LUT. +Here is an example cloud LUT that can be used in manual mode. On the top image, the LUT is divided into 8 32px wide parts, each representing a cloud type with a specific profile and altitude (stratus on the left and cumulus on the right). +On the bottom left, the cloud map uses grayscale values to map which type of clouds is used. For example, a radial gradient using those values creates a circular cloud as seen on the bottom right using the profile set on the cloud LUT. For more examples, you can get the [environment samples](HDRP-Sample-Content.html#environment-samples) from the package manager. **Note**: This cloud map is formatted differently to the cloud map that the [Cloud Layer](create-simple-clouds-cloud-layer.md) feature uses. From 170f89714db4e5aa18946172de86a24632a76b25 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Thu, 23 Jul 2026 09:05:06 +0000 Subject: [PATCH 40/52] [Port] [6000.5] [Graphics] Apply unity_RenderingLayer per shadow caster in the non-SRP-Batcher shadow loop --- .../Scenes/352_RendererUserValue_Shadows.meta | 8 + .../352_RendererUserValue_Shadows.unity | 843 ++++++++++++++++++ .../352_RendererUserValue_Shadows.unity.meta | 7 + ...2_RendererUserValue_Shadows_URPAsset.asset | 185 ++++ ...dererUserValue_Shadows_URPAsset.asset.meta | 8 + .../RendererUserValueShadows.shader | 133 +++ .../RendererUserValueShadows.shader.meta | 9 + .../ShadowsGroundMat.mat | 141 +++ .../ShadowsGroundMat.mat.meta | 8 + .../UserValueScaleShadowsMat.mat | 29 + .../UserValueScaleShadowsMat.mat.meta | 8 + .../ProjectSettings/EditorBuildSettings.asset | 3 + .../ProjectSettings/QualitySettings.asset | 53 ++ 13 files changed, 1435 insertions(+) create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows.unity create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows.unity.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/352_RendererUserValue_Shadows_URPAsset.asset create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/352_RendererUserValue_Shadows_URPAsset.asset.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/RendererUserValueShadows.shader create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/RendererUserValueShadows.shader.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/ShadowsGroundMat.mat create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/ShadowsGroundMat.mat.meta create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/UserValueScaleShadowsMat.mat create mode 100644 Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/UserValueScaleShadowsMat.mat.meta diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows.meta new file mode 100644 index 00000000000..a53f1caa942 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4ed8183db06342e69ad8c72a99809091 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows.unity b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows.unity new file mode 100644 index 00000000000..c8ca392b2f0 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows.unity @@ -0,0 +1,843 @@ +%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.02, g: 0.02, b: 0.02, a: 1} + m_AmbientEquatorColor: {r: 0.02, g: 0.02, b: 0.02, a: 1} + m_AmbientGroundColor: {r: 0.02, g: 0.02, b: 0.02, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 3 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 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: 1 + 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 &100000 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 100001} + - component: {fileID: 100002} + - component: {fileID: 100003} + - component: {fileID: 100004} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &100001 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 100000} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0.7071068, z: -0.7071068, w: 0} + m_LocalPosition: {x: 0.00000012702316, y: 4.55, z: 0.45} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 90, y: 180, z: 0} +--- !u!20 &100002 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 2 + m_BackGroundColor: {r: 0.2, g: 0.2, b: 0.2, 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: 0 + 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: 0 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!114 &100003 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Runtime::UnityEngine.Rendering.Universal.UniversalAdditionalCameraData + 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_TaaSettings: + m_Quality: 3 + m_FrameInfluence: 0.1 + m_JitterScale: 1 + m_MipBias: 0 + m_VarianceClampScale: 0.9 + m_ContrastAdaptiveSharpening: 0 + m_Version: 2 +--- !u!114 &100004 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 73231aa468d81ea49bc3d914080de185, type: 3} + m_Name: + m_EditorClassIdentifier: UniversalGraphicsTests::UniversalGraphicsTestSettings + ImageComparisonSettings: + TargetWidth: 512 + TargetHeight: 400 + TargetMSAASamples: 1 + PerPixelCorrectnessThreshold: 0.001 + PerPixelGammaThreshold: 0.003921569 + PerPixelAlphaThreshold: 0.003921569 + RMSEThreshold: 0 + AverageCorrectnessThreshold: 0.005 + IncorrectPixelsThreshold: 0.0000038146973 + UseHDR: 0 + UseBackBuffer: 0 + ActiveImageTests: 1 + ActivePixelTests: 7 + WaitFrames: 11 + gpuDrivenCompatible: 1 + CheckMemoryAllocation: 1 + renderBackendCompatibility: 2 + amdMinThreshold: 0.002 + SetBackBufferResolution: 0 +--- !u!1 &200000 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 200001} + - component: {fileID: 200002} + m_Layer: 0 + m_Name: Directional Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &200001 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 200000} + serializedVersion: 2 + m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} +--- !u!108 &200002 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 200000} + m_Enabled: 1 + serializedVersion: 13 + m_Type: 1 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 1 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 + m_CookieSize2D: {x: 10, y: 10} + m_Shadows: + m_Type: 1 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ForceVisible: 0 + m_ShapeRadius: 0 + m_ShadowAngle: 0 + m_LightUnit: 1 + m_LuxAtDistance: 1 + m_EnableSpotReflector: 1 +--- !u!1 &300000 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 300001} + - component: {fileID: 300002} + - component: {fileID: 300003} + m_Layer: 0 + m_Name: Ground + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &300001 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 300000} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 2, y: 1, z: 2} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &300002 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 300000} + m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &300003 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 300000} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: cb83d9493647452e90225b94ee309539, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!1 &400000 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 400001} + - component: {fileID: 400002} + - component: {fileID: 400003} + - component: {fileID: 400004} + m_Layer: 0 + m_Name: SphereScaleHalf + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &400001 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 400000} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -2, y: 1, 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!33 &400002 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 400000} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &400003 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 400000} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: b9db42c1210043ca86f1f1233ae6528f, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!114 &400004 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 400000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a080bccbed8f5ed4ea912b92d88d2651, type: 3} + m_Name: + m_EditorClassIdentifier: Assembly-CSharp::SetUserValue + userValue: + serializedVersion: 2 + rgba: 1053609165 +--- !u!1 &500000 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 500001} + - component: {fileID: 500002} + - component: {fileID: 500003} + - component: {fileID: 500004} + m_Layer: 0 + m_Name: SphereScaleOne + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &500001 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 500000} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 1, 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!33 &500002 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 500000} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &500003 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 500000} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: b9db42c1210043ca86f1f1233ae6528f, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!114 &500004 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 500000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a080bccbed8f5ed4ea912b92d88d2651, type: 3} + m_Name: + m_EditorClassIdentifier: Assembly-CSharp::SetUserValue + userValue: + serializedVersion: 2 + rgba: 1061997773 +--- !u!1 &600000 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 600001} + - component: {fileID: 600002} + - component: {fileID: 600003} + - component: {fileID: 600004} + m_Layer: 0 + m_Name: SphereScaleOneAndHalf + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &600001 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 600000} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 2, y: 1, 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!33 &600002 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 600000} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &600003 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 600000} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: b9db42c1210043ca86f1f1233ae6528f, 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!114 &600004 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 600000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a080bccbed8f5ed4ea912b92d88d2651, type: 3} + m_Name: + m_EditorClassIdentifier: Assembly-CSharp::SetUserValue + userValue: + serializedVersion: 2 + rgba: 1070386381 +--- !u!1 &700000 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 700001} + - component: {fileID: 700002} + m_Layer: 0 + m_Name: SelectQualitySetting + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &700001 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 700000} + 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!114 &700002 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 700000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4f1decc188d2f3146ab93291a5c743e9, type: 3} + m_Name: + m_EditorClassIdentifier: + qualityLevelIndex: 17 +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 100001} + - {fileID: 200001} + - {fileID: 300001} + - {fileID: 400001} + - {fileID: 500001} + - {fileID: 600001} + - {fileID: 700001} diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows.unity.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows.unity.meta new file mode 100644 index 00000000000..c603d46b3c1 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 526d8c9b47914564ac6432becd421d90 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/352_RendererUserValue_Shadows_URPAsset.asset b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/352_RendererUserValue_Shadows_URPAsset.asset new file mode 100644 index 00000000000..231e55126b8 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/352_RendererUserValue_Shadows_URPAsset.asset @@ -0,0 +1,185 @@ +%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: bf2edee5c58d82540a51f03df9d42094, type: 3} + m_Name: 352_RendererUserValue_Shadows_URPAsset + m_EditorClassIdentifier: + k_AssetVersion: 13 + k_AssetPreviousVersion: 13 + m_RendererType: 1 + m_RendererData: {fileID: 0} + m_RendererDataList: + - {fileID: 11400000, guid: f59607d3476b54858a594ea904187fb5, type: 2} + - {fileID: 11400000, guid: ca5f242d5388d4263931bab3bc614312, type: 2} + - {fileID: 11400000, guid: eb924988a8ba4aa4c93a60d0380ce254, type: 2} + - {fileID: 11400000, guid: 56d7ecd0b54e2884191ca2c577dbacea, type: 2} + - {fileID: 11400000, guid: 2db0ce930f34f41c3b2aad53e6336a24, type: 2} + - {fileID: 11400000, guid: efad480a4aa014a0fa578c4c317c3690, type: 2} + - {fileID: 11400000, guid: cf6f9a77b024a423386dd9c195cae7cd, type: 2} + - {fileID: 11400000, guid: e46834cadfc4eb241bd46a362765a390, type: 2} + - {fileID: 11400000, guid: e4922a62e8fc5d3419df6201310f614c, type: 2} + - {fileID: 11400000, guid: ab1d554383c384b579bb06e59141ec9c, type: 2} + - {fileID: 11400000, guid: 9aff6a8332123534e889b8e9fcbc1d51, type: 2} + - {fileID: 11400000, guid: 4655de3dc9e4543669dc1a2ded31ef6a, type: 2} + - {fileID: 11400000, guid: d5ff83d8de3ff674b898e1a258b7d8b6, type: 2} + - {fileID: 11400000, guid: 44c1717b6468947409aaeb8bec9b287c, type: 2} + - {fileID: 11400000, guid: 9a26b2a5c669cc1409605b459d1696ea, type: 2} + - {fileID: 11400000, guid: 7ea39ebe5c005724080e9ffa68153bcc, type: 2} + - {fileID: 11400000, guid: f6caeba8e73a4774fa061ede8461fc20, type: 2} + - {fileID: 11400000, guid: 1f0ec70d2f6284f04a23236fd067dec1, type: 2} + - {fileID: 11400000, guid: 81c60c102f7364ff7a219d5723b5a355, type: 2} + - {fileID: 11400000, guid: 458bd0c3cd85a465bb7a902869fb61eb, type: 2} + - {fileID: 11400000, guid: 7155e055dd29f9944927bdffff6eb366, type: 2} + - {fileID: 11400000, guid: 74a701ce533b14adb8f98f35425f3aeb, type: 2} + - {fileID: 11400000, guid: 846bf2a7afe0943388665d187143c7f6, type: 2} + - {fileID: 11400000, guid: 708aca6b4b64e8f41946dabb10fe1586, type: 2} + - {fileID: 11400000, guid: 32bad5b5f60f85349bb6751a615e4571, type: 2} + - {fileID: 11400000, guid: c24cfbcb0b49eb642b5173d4d3478f4d, type: 2} + - {fileID: 11400000, guid: 81afd9c2ea9393c4589e79894b0c709b, type: 2} + - {fileID: 11400000, guid: dbd02dcdb14e40d4ab5ea07210293f4a, type: 2} + - {fileID: 11400000, guid: 3656fd7fd6af13443a87f41e876f4f5b, type: 2} + - {fileID: 11400000, guid: e4b83918ffe7df64e853e5666d23c6c2, type: 2} + - {fileID: 11400000, guid: 0699351e4ca597140b75a3bb09f44306, type: 2} + - {fileID: 11400000, guid: 823ccb5c53149134da6f996ffd85c560, type: 2} + - {fileID: 11400000, guid: 1fe9b1f0ad22be44b9c0cc6b154c11cb, type: 2} + - {fileID: 11400000, guid: 9bf96eec056933a4e9b82d6f9aeff8c7, type: 2} + - {fileID: 11400000, guid: 09b45d63cfa5efd409c0ea9b2d578745, type: 2} + - {fileID: 11400000, guid: 48abef57e282852469d60091626961da, type: 2} + - {fileID: 11400000, guid: d69b98d34e911c549bca5db83137eb7f, type: 2} + - {fileID: 11400000, guid: 89054f48c57da7c479fee17c7a703635, type: 2} + - {fileID: 11400000, guid: 030c8301f2c12b94fa730f3f402b803e, type: 2} + - {fileID: 11400000, guid: 07cb18bb06b5e43c09f9c046804bde0d, type: 2} + - {fileID: 11400000, guid: 6810122dc0f8d244faf9c3cd24516686, type: 2} + - {fileID: 11400000, guid: 862b6ef7a19e7474182799ea247b13a5, type: 2} + m_DefaultRendererIndex: 0 + m_RequireDepthTexture: 1 + m_RequireOpaqueTexture: 1 + m_OpaqueDownsampling: 1 + m_SupportsTerrainHoles: 0 + m_SupportsHDR: 1 + m_HDRColorBufferPrecision: 0 + m_MSAA: 4 + m_RenderScale: 1 + m_UpscalingFilter: 0 + m_FsrOverrideSharpness: 0 + m_FsrSharpness: 0.92 + m_EnableLODCrossFade: 0 + m_LODCrossFadeDitheringType: 1 + m_ShEvalMode: 0 + m_LightProbeSystem: 0 + m_ProbeVolumeMemoryBudget: 1024 + m_ProbeVolumeBlendingMemoryBudget: 128 + m_SupportProbeVolumeGPUStreaming: 0 + m_SupportProbeVolumeDiskStreaming: 0 + m_SupportProbeVolumeScenarios: 0 + m_SupportProbeVolumeScenarioBlending: 0 + m_ProbeVolumeSHBands: 1 + m_MainLightRenderingMode: 1 + m_MainLightShadowsSupported: 1 + m_MainLightShadowmapResolution: 2048 + m_AdditionalLightsRenderingMode: 1 + m_AdditionalLightsPerObjectLimit: 8 + m_AdditionalLightShadowsSupported: 1 + m_AdditionalLightsShadowmapResolution: 512 + m_AdditionalLightsShadowResolutionTierLow: 128 + m_AdditionalLightsShadowResolutionTierMedium: 256 + m_AdditionalLightsShadowResolutionTierHigh: 512 + m_ReflectionProbeBlending: 0 + m_ReflectionProbeBoxProjection: 0 + m_ReflectionProbeAtlas: 0 + m_ShadowDistance: 56 + m_ShadowCascadeCount: 4 + m_Cascade2Split: 0.25 + m_Cascade3Split: {x: 0.154, y: 0.478} + m_Cascade4Split: {x: 0.067, y: 0.2, z: 0.467} + m_CascadeBorder: 0.1 + m_ShadowDepthBias: 1 + m_ShadowNormalBias: 1 + m_AnyShadowsSupported: 1 + m_SoftShadowsSupported: 0 + m_ConservativeEnclosingSphere: 0 + m_NumIterationsEnclosingSphere: 64 + m_SoftShadowQuality: 2 + m_AdditionalLightsCookieResolution: 2048 + m_AdditionalLightsCookieFormat: 3 + m_UseSRPBatcher: 0 + m_SupportsDynamicBatching: 0 + m_MixedLightingSupported: 0 + m_SupportsLightCookies: 0 + m_SupportsLightLayers: 0 + m_StoreActionsOptimization: 0 + m_UseAdaptivePerformance: 1 + m_ColorGradingMode: 0 + m_ColorGradingLutSize: 32 + m_AllowPostProcessAlphaOutput: 0 + m_UseFastSRGBLinearConversion: 0 + m_SupportDataDrivenLensFlare: 0 + m_SupportScreenSpaceLensFlare: 0 + m_GPUResidentDrawerMode: 0 + m_SmallMeshScreenPercentage: 0 + m_GPUResidentDrawerEnableOcclusionCullingInCameras: 0 + m_ShadowType: 0 + m_LocalShadowsSupported: 1 + m_LocalShadowsAtlasResolution: 512 + m_MaxPixelLights: 4 + m_ShadowAtlasResolution: 2048 + m_VolumeFrameworkUpdateMode: 0 + m_VolumeProfile: {fileID: 0} + apvScenesData: + obsoleteSceneBounds: + m_Keys: [] + m_Values: [] + obsoleteHasProbeVolumes: + m_Keys: [] + m_Values: + m_PrefilteringModeMainLightShadows: 3 + m_PrefilteringModeAdditionalLight: 3 + m_PrefilteringModeAdditionalLightShadows: 2 + m_PrefilterXRKeywords: 1 + m_PrefilteringModeForwardPlus: 0 + m_PrefilteringModeDeferredRendering: 1 + m_PrefilteringModeScreenSpaceOcclusion: 0 + m_PrefilteringModeScreenSpaceReflection: 1 + m_PrefilterWriteSmoothness: 1 + m_PrefilterDebugKeywords: 1 + m_PrefilterWriteRenderingLayers: 1 + m_PrefilterHDROutput: 1 + m_PrefilterAlphaOutput: 0 + m_PrefilterSSAODepthNormals: 1 + m_PrefilterSSAOSourceDepthLow: 1 + m_PrefilterSSAOSourceDepthMedium: 1 + m_PrefilterSSAOSourceDepthHigh: 1 + m_PrefilterSSAOInterleaved: 1 + m_PrefilterSSAOBlueNoise: 1 + m_PrefilterSSAOSampleCountLow: 1 + m_PrefilterSSAOSampleCountMedium: 1 + m_PrefilterSSAOSampleCountHigh: 1 + m_PrefilterDBufferMRT1: 1 + m_PrefilterDBufferMRT2: 1 + m_PrefilterDBufferMRT3: 1 + m_PrefilterSoftShadowsQualityLow: 0 + m_PrefilterSoftShadowsQualityMedium: 0 + m_PrefilterSoftShadowsQualityHigh: 0 + m_PrefilterSoftShadows: 0 + m_PrefilterScreenCoord: 1 + m_PrefilterScreenSpaceIrradiance: 0 + m_PrefilterNativeRenderPass: 0 + m_PrefilterUseLegacyLightmaps: 0 + m_PrefilterBicubicLightmapSampling: 0 + m_PrefilterReflectionProbeRotation: 0 + m_PrefilterReflectionProbeBlending: 0 + m_PrefilterReflectionProbeBoxProjection: 0 + m_PrefilterReflectionProbeAtlas: 0 + m_ShaderVariantLogLevel: 0 + m_ShadowCascades: 3 + m_Textures: + blueNoise64LTex: {fileID: 2800000, guid: e3d24661c1e055f45a7560c033dbb837, type: 3} + bayerMatrixTex: {fileID: 2800000, guid: f9ee4ed84c1d10c49aabb9b210b0fc44, type: 3} diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/352_RendererUserValue_Shadows_URPAsset.asset.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/352_RendererUserValue_Shadows_URPAsset.asset.meta new file mode 100644 index 00000000000..f5cf134338c --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/352_RendererUserValue_Shadows_URPAsset.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4c7f4e5dc5a14dac88e87959f341e71a +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/RendererUserValueShadows.shader b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/RendererUserValueShadows.shader new file mode 100644 index 00000000000..93f0f495dd8 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/RendererUserValueShadows.shader @@ -0,0 +1,133 @@ +// Scales vertices by the renderer user value (unity_RendererUserValue, as float bits) in +// both the Forward and ShadowCaster passes, so a stale value in either pass shows up as a +// shadow/sphere size mismatch. No multi_compile_instancing on purpose: instancing would +// supply correct per-instance values and mask the regression this test covers. +// +// Single-pass instanced stereo (XR) is still handled explicitly in the Forward pass: XR +// injects STEREO_INSTANCING_ON, which routes UNITY_MATRIX_M through the per-instance +// unity_ObjectToWorldArray. Without UNITY_SETUP_INSTANCE_ID that array read is undefined and +// the geometry collapses off-screen (spheres vanish, shadows survive since the ShadowCaster +// pass renders mono). This stereo setup does NOT enable UNITY_INSTANCED_RENDERING_LAYER, so +// unity_RendererUserValue still resolves to the non-instanced UnityPerDraw value under test. +Shader "Test/RendererUserValueShadows" +{ + Properties + { + _BaseColor("Base Color", Color) = (1, 1, 1, 1) + } + SubShader + { + Tags { "RenderType" = "Opaque" "RenderPipeline" = "UniversalPipeline" } + + HLSLINCLUDE + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl" + + // Declared outside UnityPerMaterial: SRP Batcher compatibility is decided per subshader, + // so this alone forces every pass through the non-batcher render loops under test. + float4 _BaseColor; + + // Each sphere is initialized by the shared + // Assets/Scenes/352_RendererUserValue/SetUserValue.cs component, which sets + // Renderer.SetShaderUserValue to the raw bits of a float scale. + // 0 (unset) is treated as scale 1. + float3 ScaleByUserValue(float3 positionOS) + { + float scale = asfloat(unity_RendererUserValue); + return positionOS * (scale == 0.0 ? 1.0 : scale); + } + ENDHLSL + + Pass + { + Name "Forward" + Tags { "LightMode" = "UniversalForward" } + + HLSLPROGRAM + #pragma vertex Vert + #pragma fragment Frag + #pragma multi_compile _ STEREO_INSTANCING_ON STEREO_MULTIVIEW_ON + + struct Attributes + { + float4 positionOS : POSITION; + UNITY_VERTEX_INPUT_INSTANCE_ID + }; + + struct Varyings + { + float4 positionCS : SV_POSITION; + UNITY_VERTEX_OUTPUT_STEREO + }; + + Varyings Vert(Attributes input) + { + Varyings output = (Varyings)0; + UNITY_SETUP_INSTANCE_ID(input); + UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(output); + output.positionCS = TransformObjectToHClip(ScaleByUserValue(input.positionOS.xyz)); + return output; + } + + half4 Frag(Varyings input) : SV_Target + { + return half4(_BaseColor.rgb, 1); + } + ENDHLSL + } + + Pass + { + Name "ShadowCaster" + Tags { "LightMode" = "ShadowCaster" } + + ZWrite On + ZTest LEqual + ColorMask 0 + + HLSLPROGRAM + #pragma vertex Vert + #pragma fragment Frag + #pragma multi_compile_vertex _ _CASTING_PUNCTUAL_LIGHT_SHADOW + + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Shadows.hlsl" + + // Set by UnityEngine.Rendering.Universal.ShadowUtils.SetupShadowCasterConstantBuffer, + // same as in com.unity.render-pipelines.universal/Shaders/ShadowCasterPass.hlsl. + float3 _LightDirection; + float3 _LightPosition; + + struct Attributes + { + float4 positionOS : POSITION; + float3 normalOS : NORMAL; + }; + + struct Varyings + { + float4 positionCS : SV_POSITION; + }; + + Varyings Vert(Attributes input) + { + float3 positionWS = TransformObjectToWorld(ScaleByUserValue(input.positionOS.xyz)); + float3 normalWS = TransformObjectToWorldNormal(input.normalOS); + + #if _CASTING_PUNCTUAL_LIGHT_SHADOW + float3 lightDirectionWS = normalize(_LightPosition - positionWS); + #else + float3 lightDirectionWS = _LightDirection; + #endif + + Varyings output; + output.positionCS = ApplyShadowClamping(TransformWorldToHClip(ApplyShadowBias(positionWS, normalWS, lightDirectionWS))); + return output; + } + + half4 Frag(Varyings input) : SV_Target + { + return 0; + } + ENDHLSL + } + } +} diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/RendererUserValueShadows.shader.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/RendererUserValueShadows.shader.meta new file mode 100644 index 00000000000..63c09609957 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/RendererUserValueShadows.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 9882fb47b21648baa61b77cab76318ad +ShaderImporter: + externalObjects: {} + defaultTextures: [] + nonModifiableTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/ShadowsGroundMat.mat b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/ShadowsGroundMat.mat new file mode 100644 index 00000000000..7a1b0fccda3 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/ShadowsGroundMat.mat @@ -0,0 +1,141 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &-7629676802009650432 +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: 10 +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: ShadowsGroundMat + m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _ENVIRONMENTREFLECTIONS_OFF + - _SPECULARHIGHLIGHTS_OFF + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: + RenderType: Opaque + disabledShaderPasses: + - MOTIONVECTORS + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BaseMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + 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} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _SpecGlossMap: + 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: + - _AddPrecomputedVelocity: 0 + - _AlphaClip: 0 + - _AlphaToMask: 0 + - _Blend: 0 + - _BlendModePreserveSpecular: 1 + - _BumpScale: 1 + - _ClearCoatMask: 0 + - _ClearCoatSmoothness: 0 + - _Cull: 2 + - _Cutoff: 0.5 + - _DetailAlbedoMapScale: 1 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _DstBlendAlpha: 0 + - _EnvironmentReflections: 0 + - _GlossMapScale: 0 + - _Glossiness: 0 + - _GlossyReflections: 0 + - _Metallic: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.005 + - _QueueOffset: 0 + - _ReceiveShadows: 1 + - _ScreenSpaceReflections: 1 + - _ScreenSpaceReflectionsContributeTransparent: 1 + - _Smoothness: 0 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 0 + - _SrcBlend: 1 + - _SrcBlendAlpha: 1 + - _Surface: 0 + - _WorkflowMode: 1 + - _XRMotionVectorsPass: 1 + - _ZWrite: 1 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} + m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/ShadowsGroundMat.mat.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/ShadowsGroundMat.mat.meta new file mode 100644 index 00000000000..d88ee149c21 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/ShadowsGroundMat.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: cb83d9493647452e90225b94ee309539 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/UserValueScaleShadowsMat.mat b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/UserValueScaleShadowsMat.mat new file mode 100644 index 00000000000..c30b4d6eeac --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/UserValueScaleShadowsMat.mat @@ -0,0 +1,29 @@ +%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: UserValueScaleShadowsMat + m_Shader: {fileID: 4800000, guid: 9882fb47b21648baa61b77cab76318ad, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: [] + m_Ints: [] + m_Floats: [] + m_Colors: + - _BaseColor: {r: 0.85, g: 0.6, b: 0.2, a: 1} diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/UserValueScaleShadowsMat.mat.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/UserValueScaleShadowsMat.mat.meta new file mode 100644 index 00000000000..2c817243b42 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/Assets/Scenes/352_RendererUserValue_Shadows/UserValueScaleShadowsMat.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b9db42c1210043ca86f1f1233ae6528f +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/ProjectSettings/EditorBuildSettings.asset b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/ProjectSettings/EditorBuildSettings.asset index c46f35eacbf..4e743ec2694 100644 --- a/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/ProjectSettings/EditorBuildSettings.asset +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/ProjectSettings/EditorBuildSettings.asset @@ -566,6 +566,9 @@ EditorBuildSettings: - enabled: 1 path: Assets/Scenes/352_RendererUserValue.unity guid: 957ad4772bc7fdb43b51303b8c582e8d + - enabled: 1 + path: Assets/Scenes/352_RendererUserValue_Shadows.unity + guid: 526d8c9b47914564ac6432becd421d90 - enabled: 1 path: Assets/Scenes/364_Cubemap_Mipmaps.unity guid: f737a52042020b04683b9cccd9b4a5b5 diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/ProjectSettings/QualitySettings.asset b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/ProjectSettings/QualitySettings.asset index 0f2c9fd518a..5db15009b10 100644 --- a/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/ProjectSettings/QualitySettings.asset +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Foundation/ProjectSettings/QualitySettings.asset @@ -924,6 +924,59 @@ QualitySettings: terrainFadeLength: 5 terrainMaxTrees: 50 excludedTargetPlatforms: [] + - serializedVersion: 5 + name: 18-352_RendererUserValue_Shadows + pixelLightCount: 4 + shadows: 2 + shadowResolution: 2 + shadowProjection: 1 + shadowCascades: 4 + shadowDistance: 150 + shadowNearPlaneOffset: 3 + shadowCascade2Split: 0.33333334 + shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} + shadowmaskMode: 1 + skinWeights: 4 + globalTextureMipmapLimit: 0 + textureMipmapLimitSettings: [] + anisotropicTextures: 2 + antiAliasing: 4 + softParticles: 1 + softVegetation: 1 + realtimeReflectionProbes: 1 + billboardsFaceCameraPosition: 1 + useLegacyDetailDistribution: 1 + adaptiveVsync: 0 + vSyncCount: 1 + realtimeGICPUUsage: 25 + adaptiveVsyncExtraA: 0 + adaptiveVsyncExtraB: 0 + lodBias: 2 + meshLodThreshold: 1 + maximumLODLevel: 0 + enableLODCrossFade: 0 + streamingMipmapsActive: 0 + streamingMipmapsAddAllCameras: 1 + streamingMipmapsMemoryBudget: 512 + streamingMipmapsRenderersPerFrame: 512 + streamingMipmapsMaxLevelReduction: 2 + streamingMipmapsMaxFileIORequests: 1024 + particleRaycastBudget: 4096 + asyncUploadTimeSlice: 2 + asyncUploadBufferSize: 4 + asyncUploadPersistentBuffer: 1 + resolutionScalingFixedDPIFactor: 1 + customRenderPipeline: {fileID: 11400000, guid: 4c7f4e5dc5a14dac88e87959f341e71a, type: 2} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 + excludedTargetPlatforms: [] m_TextureMipmapLimitGroupNames: [] m_PerPlatformDefaultQuality: Android: 0 From 8935544c697e26801c0db1578d9135a06d439534 Mon Sep 17 00:00:00 2001 From: Marta Malberti Date: Wed, 29 Jul 2026 16:31:06 +0000 Subject: [PATCH 41/52] [Port][6000.5]docg-8935 update attribute operator list and create new operators pages --- .../Documentation~/Block-CollisionShape.md | 2 +- ...perator-GetAttributeCollisionEventCount.md | 28 +++++++++++++++++++ ...erator-GetAttributeCollisionEventNormal.md | 25 +++++++++++++++++ ...ator-GetAttributeCollisionEventPosition.md | 27 ++++++++++++++++++ .../Operator-GetAttributeHasCollisionEvent.md | 25 +++++++++++++++++ ...erator-GetAttributeParticleCountInStrip.md | 18 ++++++++---- .../Operator-GetCustomAttribute.md | 7 +++-- .../Documentation~/Operator-RatioOverStrip.md | 8 ++++-- .../Documentation~/OperatorAttribute.md | 7 ++++- .../Documentation~/TableOfContents.md | 5 ++++ 10 files changed, 139 insertions(+), 13 deletions(-) create mode 100644 Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeCollisionEventCount.md create mode 100644 Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeCollisionEventNormal.md create mode 100644 Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeCollisionEventPosition.md create mode 100644 Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeHasCollisionEvent.md diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-CollisionShape.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-CollisionShape.md index 09e5780f7ce..ef6cdebcbed 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-CollisionShape.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-CollisionShape.md @@ -27,7 +27,7 @@ To add a Collision Shape Block to your graph, [open the menu for adding a graph | **Shape** | Enum | Sets the shape for particles to collide with. For more information, refer to the [Shape dropdown](#shape-dropdown) section. | | **Mode** | Enum | Specifies how particles interact with the collider. The options are:
  • Solid: Stops particles entering the collider. If you set Shape to Plane, particles collide with the plane when they travel away from the normal of the plane.
  • Inverted: Stops particles leaving the shape volume. If you set Shape to Plane, particles collide with the plane when they travel in the same direction as the normal of the plane.
| | **Radius Mode** | Enum | Sets the collision radius of the particles. The options are:
  • None: Sets the collision radius to zero.
  • From Size: Sets the collision radius for each particle to its individual size.
  • Custom: Sets the collision radius to the value of **Radius** in the [Block properties](#block-properties).
| -| **Collision Attributes** | Enum | Specifies whether Unity stores data in the collision attributes of particles. The options are:
  • No Write: Doesn't write or store collision attributes.
  • Write Punctual Contact only: Updates the collision attribute only when a specific, single-point collision occurs. This prevents Unity updating the collision attributes repeatedly when a particle slides along a collision shape. To increase or decrease how much a particle needs to bounce off a shape to cause a collision response, enable **Override Bounce Threshold** in the Inspector window.
  • Write Always: Updates the collision attribute every time a collision occurs.
| +| **Collision Attributes** | Enum | Specifies whether Unity writes data to the [HasCollisionEvent](Operator-GetAttributeHasCollisionEvent.md), [CollisionEventNormal](Operator-GetAttributeCollisionEventNormal.md), [CollisionEventPosition](Operator-GetAttributeCollisionEventPosition.md), and [CollisionEventCount](Operator-GetAttributeCollisionEventCount.md) attributes of particles. The options are:
  • No Write: Doesn't write or store collision attributes.
  • Write Punctual Contact only: Updates the collision attribute only when a specific, single-point collision occurs. This prevents Unity updating the collision attributes repeatedly when a particle slides along a collision shape. To increase or decrease how much a particle needs to bounce off a shape to cause a collision response, enable **Override Bounce Threshold** in the Inspector window.
  • Write Always: Updates the collision attribute every time a collision occurs.
| | **Rough Surface** | Boolean | Adds randomness to the direction in which particles bounce back, to simulate collision with a rough surface. To set the roughness of the surface, use the **Roughness** property. | diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeCollisionEventCount.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeCollisionEventCount.md new file mode 100644 index 00000000000..64fe76a2139 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeCollisionEventCount.md @@ -0,0 +1,28 @@ +# Get Attribute: collisionEventCount + +Menu Path : **Operator** > **Attribute** > **Get Collision Event Count** + +The **Get Collision Event Count** operator outputs the number of times a particle has hit a surface since it was spawned. + +To write to the **Get Collision Event Count** attribute, add a [Collision Shape Block](Block-CollisionShape.md) to your graph and set its **Collision Attributes** property to **Write Punctual Content Only** or **Write Always**. + +[!include[](Snippets/Operator-GetAttributeOperatorSettings.md)] + +## Operator settings + +| **Setting** | **Type** | **Description** | +|---|---|---| +| **Location** | [Enum](https://docs.unity3d.com/Packages/com.unity.visualeffectgraph@17.6/manual/Snippets/Attributes.md#attribute-locations) | The location of the attribute. The options are:
• **Current**: Gets the value of the attribute from the current system data container. For example, particle data from a Particle System.
• **Source**: Gets the value of the attribute from the previous system data container read from. You can only read from this **Location** in the first Context of a system after a system data change. For example, in an Initialize Particle Context. | + + +## Operator properties + +| **Output** | **Type** | **Description** | +| -------------------- | -------- | ------------------------------------------------------------ | +| Collision Event Count | uint | The value of the collisionEventCount attribute, which is the number of times the particle has hit a surface, based on **Location**. If the particle hasn't collided with any surfaces, the operator returns the default attribute value. | + + + +## Details + +The value the operator returns uses the system’s space, either local space or world space. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeCollisionEventNormal.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeCollisionEventNormal.md new file mode 100644 index 00000000000..bf41db88ebc --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeCollisionEventNormal.md @@ -0,0 +1,25 @@ +# Get Attribute: collisionEventNormal + +Menu Path : **Operator** > **Attribute** > **Get Collision Event Normal** + +The **Get Collision Event Normal** operator returns the surface normal at the point of impact during the current frame. + +To write to the collisionEventNormal attribute, add a [Collision Shape Block](Block-CollisionShape.md) to your graph and set its **Collision Attributes** property to **Write Punctual Contact Only** or **Write Always**. + +[!include[](Snippets/Operator-GetAttributeOperatorSettings.md)] + +## Operator settings + +| **Setting** | **Type** | **Description** | +|---|---|---| +| **Location** | [Enum](https://docs.unity3d.com/Packages/com.unity.visualeffectgraph@17.6/manual/Snippets/Attributes.md#attribute-locations) | The location of the attribute. The options are:
• **Current**: Gets the value of the attribute from the current system data container. For example, particle data from a Particle System.
• **Source**: Gets the value of the attribute from the previous system data container read from. You can only read from this **Location** in the first Context of a system after a system data change. For example, in an Initialize Particle Context. | + +## Operator properties + +| **Output** | **Type** | **Description** | +| ------------------------ | -------- | ------------------------------------------------------------ | +| Collision Event Normal | Vector3 | The value of the collisionEventNormal attribute, which represents the surface normal at the point of impact, based on **Location**. If the particle hasn't collided with any surfaces, this operator returns (0,0,0). | + +## Details + +The value the operator returns uses the system's space, either local space or world space. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeCollisionEventPosition.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeCollisionEventPosition.md new file mode 100644 index 00000000000..1c48bf0fe67 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeCollisionEventPosition.md @@ -0,0 +1,27 @@ +# Get Attribute: collisionEventPosition + +Menu Path : **Operator** > **Attribute** > **Get Collision Event Position** + +The **Get Collision Event Position** operator returns the the coordinates of the point where the particle hit a surface during the current frame. + +To write to the collisionEventPosition attribute, add a [Collision Shape Block](Block-CollisionShape.md) to your graph and set its **Collision Attributes** property to **Write Punctual Contact Only** or **Write Always**. + +[!include[](Snippets/Operator-GetAttributeOperatorSettings.md)] + +## Operator settings + +| **Setting** | **Type** | **Description** | +|---|---|---| +| **Location** | [Enum](https://docs.unity3d.com/Packages/com.unity.visualeffectgraph@17.6/manual/Snippets/Attributes.md#attribute-locations) | The location of the attribute. The options are:
• **Current**: Gets the value of the attribute from the current system data container. For example, particle data from a Particle System.
• **Source**: Gets the value of the attribute from the previous system data container read from. You can only read from this **Location** in the first Context of a system after a system data change. For example, in an Initialize Particle Context. | + +## Operator properties + +| **Output** | **Type** | **Description** | +| ------------------------- | -------- | ------------------------------------------------------------ | +| Collision Event Position | Vector3 | The value of the collisionEventPosition attribute, which represents the coordinates of the point of impact, based on **Location**. If the particle hasn't collided with any surfaces, this operator returns (0,0,0). | + +## Details + +The value the operator returns uses the system's space, either local space or world space. + + diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeHasCollisionEvent.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeHasCollisionEvent.md new file mode 100644 index 00000000000..11f6c5fa371 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeHasCollisionEvent.md @@ -0,0 +1,25 @@ +# Get Attribute: hasCollisionEvent + +Menu Path : **Operator** > **Attribute** > **Get Has Collision Event** + +The **Get Has Collision Event** operator returns `true` if a particle has hit a surface. This attribute is only available in the [Update](Context-Update.md) context. + +To write to the hasCollisionEvent attribute, add a [Collision Shape Block](Block-CollisionShape.md) to your graph and set its **Collision Attributes** property to **Write Punctual Contact Only** or **Write Always**. + +[!include[](Snippets/Operator-GetAttributeOperatorSettings.md)] + +## Operator settings + +| **Setting** | **Type** | **Description** | +|---|---|---| +| **Location** | [Enum](https://docs.unity3d.com/Packages/com.unity.visualeffectgraph@17.6/manual/Snippets/Attributes.md#attribute-locations) | The location of the attribute. The options are:
• **Current**: Gets the value of the attribute from the current system data container. For example, particle data from a Particle System.
• **Source**: Gets the value of the attribute from the previous system data container read from. You can only read from this **Location** in the first Context of a system after a system data change. For example, in an Initialize Particle Context. | + +## Operator properties + +| **Output** | **Type** | **Description** | +| -------------------- | -------- | ------------------------------------------------------------ | +| Has Collision Event | bool | The value of the hasCollisionEvent attribute, based on **Location**. Returns `true` if the particle has hit a surface, and `false` otherwise. If this attribute has not been written to, this Operator returns the default attribute value. | + +## Details + +You can only use the **Get Has Collision Event** operator in the same Context as the Collision Shape Block that writes to it. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeParticleCountInStrip.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeParticleCountInStrip.md index 8eb59fc5230..1e8fe2165d2 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeParticleCountInStrip.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeParticleCountInStrip.md @@ -1,19 +1,25 @@ # Get Attribute: particleCountInStrip Operator -Menu Path : **Operator > Attribute > Get Attribute: particleCountInStrip** +Menu Path : **Operator** > **Attribute** > **Get Particle Count In Strip** -The **Get Attribute: particleCountInStrip** returns the particleCountInStrip, which is a [standard attribute](Reference-Attributes.md), of a simulated element depending on [Location](Attributes.md#attribute-locations). This Operator outputs the current number of particles in the particle strip the current particle belongs to. +The **Get Particle Count In Strip** operator returns the current number of particles in the particle strip the particle belongs to. + +This operator can return wrong values if you use it in the Initialize context, if the strip index property is not constant. [!include[](Snippets/Operator-GetAttributeOperatorSettings.md)] +## Operator settings + +| **Setting** | **Type** | **Description** | +|---|---|---| +| **Location** | [Enum](https://docs.unity3d.com/Packages/com.unity.visualeffectgraph@17.6/manual/Snippets/Attributes.md#attribute-locations) | The location of the attribute. The options are:
• **Current**: Gets the value of the attribute from the current system data container. For example, particle data from a Particle System.
• **Source**: Gets the value of the attribute from the previous system data container read from. You can only read from this **Location** in the first Context of a system after a system data change. For example, in an Initialize Particle Context. | + ## Operator properties | **Output** | **Type** | **Description** | | -------------------- | -------- | ------------------------------------------------------------ | -| particleCountInStrip | int | The value of the particleCountInStrip attribute, based on **Location**.
If this attribute has not been written to, this Operator returns the default attribute value. | +| Particle Count In Strip | int | The value of the particleCountInStrip attribute, which is the current number of particles in the particle strip the particle belongs to, based on **Location**.
If this attribute has not been written to, this operator returns the default attribute value. | ## Details -The value the attribute returns uses the system’s space (either local-space or world-space). - -This operator can return wrong values when used in the Initialize context, if the strip index property is not constant. \ No newline at end of file +The value the operator returns uses the system’s space, either local space or world space. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetCustomAttribute.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetCustomAttribute.md index 90e02aebb1e..e62944c6f00 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetCustomAttribute.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetCustomAttribute.md @@ -1,8 +1,11 @@ # Get Custom Attribute Operator -Menu Path : **Operator > Attribute > Get Custom Attribute** +> [!NOTE] +> The Get Custom Attribute operator is obsolete. Use a [Get Attribute](OperatorAttribute.md) operator instead. -The **Get Custom Attribute** Operator returns the value of a named custom Attribute of a given type depending on its location. +Menu Path : **Operator** > **Attribute** > **Get Custom Attribute** + +The **Get Custom Attribute** operator returns the value of a custom attribute of a given type depending on its location. ## Operator settings diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-RatioOverStrip.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-RatioOverStrip.md index 2cd21833de8..6f91f600898 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-RatioOverStrip.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-RatioOverStrip.md @@ -1,8 +1,10 @@ -# Ratio Over Strip +# Get Ratio Over Strip [0..1] -Menu Path : **Operator > Attribute > Ratio Over Strip** +Menu Path : **Operator** > **Attribute** > **Get Ratio Over Strip [0..1]** -The **Ratio Over Strip** Operator returns the ratio of the particle index relative to the total count of particles in that strip, as a value between 0.0 and 1.0. +The **Get Ratio Over Strip** attribute returns the ratio of the particle index relative to the total count of particles in that strip, as a value between 0.0 and 1.0. + +Because this Operator relies on the **Get Particle Count In Strip** operator, it shares the same limitation: it can return wrong values if you use it in the Initialize context, if the strip index property is not constant. For more information, refer to [Get Attribute: particleCountInStrip](Operator-GetAttributeParticleCountInStrip.md#details). ``` t = particleIndexInStrip / (particleCountInStrip - 1) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/OperatorAttribute.md b/Packages/com.unity.visualeffectgraph/Documentation~/OperatorAttribute.md index 6329868a883..b8e52e07fa8 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/OperatorAttribute.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/OperatorAttribute.md @@ -13,8 +13,12 @@ Get the data from [particle attributes](Attributes.md). | [Get Attribute: axisX Operator](Operator-GetAttributeAxisX.md) | Get the x-axis of a particle. | | [Get Attribute: axisY Operator](Operator-GetAttributeAxisY.md) | Get the y-axis of a particle. | | [Get Attribute: axisZ Operator](Operator-GetAttributeAxisZ.md) | Get the z-axis of a particle. | +| [Get Attribute: collisionEventCount Operator](Operator-GetAttributeCollisionEventCount.md) | Get the number of collisions that occur during a particle's lifetime. | +| [Get Attribute: collisionEventNormal Operator](Operator-GetAttributeCollisionEventNormal.md) | Get the normal of the collider's surface at the hit position. | +| [Get Attribute: collisionEventPosition Operator](Operator-GetAttributeCollisionEventPosition.md) | Get the position of the collision between particles and colliders. | | [Get Attribute: color Operator](Operator-GetAttributeColor.md) | Get the color of a particle. | | [Get Attribute: direction Operator](Operator-GetAttributeDirection.md) | Get the direction of a particle. | +| [Get Attribute: hasCollisionEvent](Operator-GetAttributeHasCollisionEvent.md) | Return True or False if a collision happened in this frame. | | [Get Attribute: lifetime Operator](Operator-GetAttributeLifetime.md) | Get the amount of time a particle should live for. | | [Get Attribute: mass Operator](Operator-GetAttributeMass.md) | Get the mass of a particle. | | [Get Attribute: oldPosition Operator](Operator-GetAttributeOldPosition.md) | Get the position of a particle before velocity is added. | @@ -33,9 +37,10 @@ Get the data from [particle attributes](Attributes.md). | [Get Attribute: texIndex Operator](Operator-GetAttributeTexIndex.md) | Get the frame number from a flipbook texture a particle uses. | | [Get Attribute: velocity Operator](Operator-GetAttributeVelocity.md) | Get the current velocity of a particle. | | [Get Custom Attribute Operator](Operator-GetCustomAttribute.md) | Get the value of a custom attribute. | +| [Get Ratio over Strip Operator](Operator-RatioOverStrip.md) | Get a normalized 0-1 value across the strip length. | ## Additional resources - [Attributes](Attributes.md) - [Standard Attribute Reference](Reference-Attributes.md) -- [Attribute Blocks](Attribute.md) +- [Attribute Blocks](Attribute.md) \ No newline at end of file diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/TableOfContents.md b/Packages/com.unity.visualeffectgraph/Documentation~/TableOfContents.md index e87f77a2617..43d72fe1d30 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/TableOfContents.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/TableOfContents.md @@ -152,8 +152,12 @@ * [Get Attribute: axisX Operator](Operator-GetAttributeAxisX.md) * [Get Attribute: axisY Operator](Operator-GetAttributeAxisY.md) * [Get Attribute: axisZ Operator](Operator-GetAttributeAxisZ.md) + * [Get Attribute: collisionEventCount Operator](Operator-GetAttributeCollisionEventCount.md) + * [Get Attribute: collisionEventNormal Operator](Operator-GetAttributeCollisionEventNormal.md) + * [Get Attribute: collisionEventPosition Operator](Operator-GetAttributeCollisionEventPosition.md) * [Get Attribute: color Operator](Operator-GetAttributeColor.md) * [Get Attribute: direction Operator](Operator-GetAttributeDirection.md) + * [Get Attribute: hasCollisionEvent Operator](Operator-GetAttributeHasCollisionEvent.md) * [Get Attribute: lifetime Operator](Operator-GetAttributeLifetime.md) * [Get Attribute: mass Operator](Operator-GetAttributeMass.md) * [Get Attribute: oldPosition Operator](Operator-GetAttributeOldPosition.md) @@ -172,6 +176,7 @@ * [Get Attribute: texIndex Operator](Operator-GetAttributeTexIndex.md) * [Get Attribute: velocity Operator](Operator-GetAttributeVelocity.md) * [Get Custom Attribute Operator](Operator-GetCustomAttribute.md) + * [Get Ratio over Strip Operator](Operator-RatioOverStrip.md) * [Bitwise Operators](Bitwise.md) * [And Operator](Operator-BitwiseAnd.md) * [Complement Operator](Operator-BitwiseComplement.md) From 6519c6614dbb5cc8c68d122286c476df3c9ebf11 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Sat, 1 Aug 2026 09:11:32 +0000 Subject: [PATCH 42/52] [Port] [6000.5] Fix virtual offset debug when last bake had virtual offset disabled --- .../ProbeVolume/ProbeGIBaking.VirtualOffset.cs | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeGIBaking.VirtualOffset.cs b/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeGIBaking.VirtualOffset.cs index 08269a06bb3..d1bfdaf7728 100644 --- a/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeGIBaking.VirtualOffset.cs +++ b/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeGIBaking.VirtualOffset.cs @@ -328,9 +328,19 @@ static internal void RecomputeVOForDebugOnly() while (job.currentStep < job.stepCount) job.Step(); - foreach (var cell in m_BakingBatch.cells) + for (int c = 0; c < m_BakingBatch.cells.Count; ++c) { + var cell = m_BakingBatch.cells[c]; int numProbes = cell.probePositions.Length; + + // Might have no offset vectors, if the previous bake wasn't using virtual offsets. + // If so, initialize them so the user can still preview what the offsets will do. + if (cell.offsetVectors == null) + { + cell.offsetVectors = new Vector3[numProbes]; + m_BakingBatch.cells[c] = cell; + } + for (int i = 0; i < numProbes; ++i) { int j = cell.probeIndices[i]; From 1f9d9b49af0c4a29bce8ee363eb6d353fd738318 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Tue, 4 Aug 2026 12:30:07 +0000 Subject: [PATCH 43/52] [Port] [6000.5] docg-8976: updating 4 missing attributes in attribute operators list --- .../Operator-GetAttributeMeshIndex.md | 23 ++++++++++++++++++ .../Operator-GetAttributeOldVelocity.md | 23 ++++++++++++++++++ .../Operator-GetAttributeSpawnCount.md | 22 +++++++++++++++++ .../Operator-GetAttributeSpawnIndexInStrip.md | 24 +++++++++++++++++++ .../Documentation~/OperatorAttribute.md | 4 ++++ .../Documentation~/Reference-Attributes.md | 3 +++ .../Documentation~/TableOfContents.md | 4 ++++ 7 files changed, 103 insertions(+) create mode 100644 Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeMeshIndex.md create mode 100644 Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeOldVelocity.md create mode 100644 Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeSpawnCount.md create mode 100644 Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeSpawnIndexInStrip.md diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeMeshIndex.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeMeshIndex.md new file mode 100644 index 00000000000..022a9572396 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeMeshIndex.md @@ -0,0 +1,23 @@ +# Get Attribute: meshIndex + +Menu Path : **Operator** > **Attribute** > **Get Mesh Index** + +The **Get Mesh Index** operator returns the index of the mesh a particle will use to render. This is only relevant when the **Mesh Count** setting on an Output Particle Mesh context is set higher than 1. + +[!include[](Snippets/Operator-GetAttributeOperatorSettings.md)] + +## Operator settings + +| **Setting** | **Type** | **Description** | +|---|---|---| +| **Location** | [Enum](https://docs.unity3d.com/Packages/com.unity.visualeffectgraph@17.6/manual/Snippets/Attributes.md#attribute-locations) | The location of the attribute. The options are:
• **Current**: Gets the value of the attribute from the current system data container. For example, particle data from a Particle System.
• **Source**: Gets the value of the attribute from the previous system data container read from. You can only read from this **Location** in the first Context of a system after a system data change. For example, in an Initialize Particle Context. | + +## Operator properties + +| **Output** | **Type** | **Description** | +| ---------- | -------- | ------------------------------------------------------------ | +| Mesh Index | uint | The value of the meshIndex attribute, which represents the index of the mesh to use, based on **Location**. If this attribute has not been written to, this operator returns 0.| + +## Details + +The value the operator returns uses the system's space, either local space or world space. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeOldVelocity.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeOldVelocity.md new file mode 100644 index 00000000000..32e126f95b9 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeOldVelocity.md @@ -0,0 +1,23 @@ +# Get Attribute: oldVelocity + +Menu Path : **Operator** > **Attribute** > **Get Old Velocity** + +The **Get Old Velocity** operator returns the velocity of a particle at the beginning of the context, before VFX Graph applies any forces. + +[!include[](Snippets/Operator-GetAttributeOperatorSettings.md)] + +## Operator settings + +| **Setting** | **Type** | **Description** | +|---|---|---| +| **Location** | [Enum](https://docs.unity3d.com/Packages/com.unity.visualeffectgraph@17.6/manual/Snippets/Attributes.md#attribute-locations) | The location of the attribute. The options are:
• **Current**: Gets the value of the attribute from the current system data container. For example, particle data from a Particle System.
• **Source**: Gets the value of the attribute from the previous system data container read from. You can only read from this **Location** in the first Context of a system after a system data change. For example, in an Initialize Particle Context. | + +## Operator properties + +| **Output** | **Type** | **Description** | +| ----------- | -------- | ------------------------------------------------------------ | +| Old Velocity | Vector3 | The value of the oldVelocity attribute, which represents the velocity of the particle at the beginning of the context, before any force integration, based on **Location**. If this attribute has not been written to, this operator returns 0. | + +## Details + +The value the operator returns uses the system's space, either local space or world space. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeSpawnCount.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeSpawnCount.md new file mode 100644 index 00000000000..ecbf98b0d14 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeSpawnCount.md @@ -0,0 +1,22 @@ +# Get Attribute: spawnCount + +Menu Path : **Operator** > **Attribute** > **Get Spawn Count** + +The **Get Spawn Count** operator returns the number of particles that have been spawned in the current frame. +[!include[](Snippets/Operator-GetAttributeOperatorSettings.md)] + +## Operator settings + +| **Setting** | **Type** | **Description** | +|---|---|---| +| **Location** | [Enum](https://docs.unity3d.com/Packages/com.unity.visualeffectgraph@17.6/manual/Snippets/Attributes.md#attribute-locations) | The location of the attribute. The options are:
• **Current**: Gets the value of the attribute from the current system data container. For example, in a Spawn Context.
• **Source**: Gets the value of the attribute from the previous system data container read from. You can only read from this **Location** in the first Context of a system after a system data change. For example, in an Initialize Particle Context. | + +## Operator properties + +| **Output** | **Type** | **Description** | +| ---------- | -------- | ------------------------------------------------------------ | +| Spawn Count | float | The value of the spawnCount attribute, which represents the number of particles spawned in the current frame, based on **Location**. If this attribute has not been written to, this operator returns 0. | + +## Details + +The value the operator returns uses the system's space, either local space or world space. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeSpawnIndexInStrip.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeSpawnIndexInStrip.md new file mode 100644 index 00000000000..745b23d9696 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator-GetAttributeSpawnIndexInStrip.md @@ -0,0 +1,24 @@ +# Get Attribute: spawnIndexInStrip + +Menu Path : **Operator** > **Attribute** > **Get Spawn Index In Strip** + +The **Get Spawn Index In Strip** operator returns the spawn index of the particle in the particle strip the particle belongs to. +Unlike the [particleIndexInStrip](Operator-GetAttributeParticleIndexInStrip.md) attribute, which is unique for each particle within a strip, this value can be the same for two or more particles in the same strip. + +[!include[](Snippets/Operator-GetAttributeOperatorSettings.md)] + +## Operator settings + +| **Setting** | **Type** | **Description** | +|---|---|---| +| **Location** | [Enum](https://docs.unity3d.com/Packages/com.unity.visualeffectgraph@17.6/manual/Snippets/Attributes.md#attribute-locations) | The location of the attribute. The options are:
• **Current**: Gets the value of the attribute from the current system data container. For example, particle data from a Particle System.
• **Source**: Gets the value of the attribute from the previous system data container read from. You can only read from this **Location** in the first Context of a system after a system data change. For example, in an Initialize Particle Context. | + +## Operator properties + +| **Output** | **Type** | **Description** | +| ------------------ | -------- | ------------------------------------------------------------ | +| Spawn Index In Strip | uint | The value of the spawnIndexInStrip attribute, which is the spawn index of the particle in the particle strip the particle belongs to, based on **Location**. If this attribute has not been written to, this operator returns 0. | + +## Details + +The value the operator returns uses the system's space, either local space or world space. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/OperatorAttribute.md b/Packages/com.unity.visualeffectgraph/Documentation~/OperatorAttribute.md index b8e52e07fa8..d15997f231b 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/OperatorAttribute.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/OperatorAttribute.md @@ -21,7 +21,9 @@ Get the data from [particle attributes](Attributes.md). | [Get Attribute: hasCollisionEvent](Operator-GetAttributeHasCollisionEvent.md) | Return True or False if a collision happened in this frame. | | [Get Attribute: lifetime Operator](Operator-GetAttributeLifetime.md) | Get the amount of time a particle should live for. | | [Get Attribute: mass Operator](Operator-GetAttributeMass.md) | Get the mass of a particle. | +| [Get Attribute: meshIndex Operator](Operator-GetAttributeMeshIndex.md) | Get the mesh index of a particle. | | [Get Attribute: oldPosition Operator](Operator-GetAttributeOldPosition.md) | Get the position of a particle before velocity is added. | +| [Get Attribute: oldVelocity Operator](Operator-GetAttributeOldVelocity.md) | Get the velocity of a particle before force integration. | | [Get Attribute: particleCountInStrip Operator](Operator-GetAttributeParticleCountInStrip.md) | Get the number of particles in a particle strip. | | [Get Attribute: particleId Operator](Operator-GetAttributeParticleID.md) | Get a unique ID that identifies a particle. | | [Get Attribute: particleIndexInStrip Operator](Operator-GetAttributeParticleIndexInStrip.md) | Get the index of a particle in its particle strip. | @@ -30,7 +32,9 @@ Get the data from [particle attributes](Attributes.md). | [Get Attribute: scale Operator](Operator-GetAttributeScale.md) | Get the scale of the particle. | | [Get Attribute: seed Operator](Operator-GetAttributeSeed.md) | Get the random number value of a particle. | | [Get Attribute: size Operator](Operator-GetAttributeSize.md) | Get the size of a particle. | +| [Get Attribute: spawnCount Operator](Operator-GetAttributeSpawnCount.md) | Get the number of particles spawned in the current frame. | | [Get Attribute: spawnIndex Operator](Operator-GetAttributeSpawnIndex.md) | Get the index of a particle when it spawned. | +| [Get Attribute: spawnIndexInStrip Operator](Operator-GetAttributeSpawnIndexInStrip.md) | Get the spawn index of a particle within its strip. | | [Get Attribute: spawnTime Operator](Operator-GetAttributeSpawnTime.md) | Get the time that the particle spawned. | | [Get Attribute: stripIndex Operator](Operator-GetAttributeStripIndex.md) | Get the index of the particle strip a particle belongs to. | | [Get Attribute: targetPosition Operator](Operator-GetAttributeTargetPosition.md) | Get the target coordinates of a particle. | diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Reference-Attributes.md b/Packages/com.unity.visualeffectgraph/Documentation~/Reference-Attributes.md index a73acca25d3..7f11b28949c 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Reference-Attributes.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Reference-Attributes.md @@ -28,6 +28,7 @@ Some attributes are a bit more advanced and will be used by default in most simu | `angle` | Vector3 | **Variadic:** Euler rotation of a simulated element, expressed as a Vector of Degrees Values. | (0,0,0) | | `angularVelocity` | Vector3 | **Variadic:** Euler rotation speed of a simulated element, expressed as a Vector of Degrees per second values. | (0,0,0) | | `oldPosition` | Vector3 | **Deprecated:** This attribute is a storage Helper if you want to back-up current position of a simulated element, before integrating its velocity. | (0,0,0) | +| `oldVelocity` | Vector3 | The velocity of a particle at the beginning of the context, before any force integration. | (0,0,0) | | `targetPosition` | Vector3 | This attribute has various purposes: it can be a storage Helper if you want to store a position to reach, then compute a vector in order to reach this Target Position. In Line Renderers, this attribute can be also used to set the end of each line particle. | (0,0,0) | ### Rendering Attributes @@ -42,6 +43,7 @@ Rendering Attributes are not used in simulation but are useful when you want to | `scale` | Vector3 | The Non-uniform Scale multiplier of a rendered element, applied to its **unit representation** | (1,1,1) | | `pivot` | Vector3 | The Origin position of a rendered element, in its **unit representation** | (0,0,0) | | `texIndex` | float | The animation frame used for sampling Flipbook UVs for a rendered element. | 0.0 | +| `meshIndex` | uint | The index of the mesh to use, when the Mesh Count setting on an Output Particle Mesh context is set higher than 1. | 0 | | `axisX` | Vector3 | The computed Right axis of the rendered Element. | (1,0,0) | | `axisY` | Vector3 | The computed Up axis of the rendered Element. | (0,1,0) | | `axisZ` | Vector3 | The computed Forward axis of the rendered Element. | (0,0,1) | @@ -57,6 +59,7 @@ System Attributes provide information about system values. These attributes are | `spawnCount` | float | A `SpawnEvent` attribute that describes how many particles were spawned this frame. You can use `spawnCount` as a [Source Attribute](Attributes.md) in a Spawn context. `spawnCount` is a floating point number so that Unity can accumulate a relative `spawnCount` at the spawn context stage in the [Constant Rate](Block-ConstantRate.md) block.| 0.0 | | `spawnTime` | float | A SpawnEvent attribute available as Source Attribute in Spawn Contexts, that contains a Spawn Context internal time (when exported using a [Set Spawn Time](Block-SetSpawnTime.md) Spawn Block) | 0.0 | | `particleIndexInStrip` | uint | The index in the Particle Strip Ring Buffer where is located this element. | 0 | +| spawnIndexInStrip | uint | The spawn index of a particle within its strip. Unlike particleIndexInStrip, which is unique for each particle, the spawnIndexInStrip value can be the same for two or more particles in different strip. | 0 | ### Collision Attributes diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/TableOfContents.md b/Packages/com.unity.visualeffectgraph/Documentation~/TableOfContents.md index 43d72fe1d30..84966c61022 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/TableOfContents.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/TableOfContents.md @@ -160,7 +160,9 @@ * [Get Attribute: hasCollisionEvent Operator](Operator-GetAttributeHasCollisionEvent.md) * [Get Attribute: lifetime Operator](Operator-GetAttributeLifetime.md) * [Get Attribute: mass Operator](Operator-GetAttributeMass.md) + * [Get Attribute: meshIndex Operator](Operator-GetAttributeMeshIndex.md) * [Get Attribute: oldPosition Operator](Operator-GetAttributeOldPosition.md) + * [Get Attribute: oldVelocity Operator](Operator-GetAttributeOldVelocity.md) * [Get Attribute: particleCountInStrip Operator](Operator-GetAttributeParticleCountInStrip.md) * [Get Attribute: particleId Operator](Operator-GetAttributeParticleID.md) * [Get Attribute: particleIndexInStrip Operator](Operator-GetAttributeParticleIndexInStrip.md) @@ -169,7 +171,9 @@ * [Get Attribute: scale Operator](Operator-GetAttributeScale.md) * [Get Attribute: seed Operator](Operator-GetAttributeSeed.md) * [Get Attribute: size Operator](Operator-GetAttributeSize.md) + * [Get Attribute: spawnCount Operator](Operator-GetAttributeSpawnCount.md) * [Get Attribute: spawnIndex Operator](Operator-GetAttributeSpawnIndex.md) + * [Get Attribute: spawnIndexInStrip Operator](Operator-GetAttributeSpawnIndexInStrip.md) * [Get Attribute: spawnTime Operator](Operator-GetAttributeSpawnTime.md) * [Get Attribute: stripIndex Operator](Operator-GetAttributeStripIndex.md) * [Get Attribute: targetPosition Operator](Operator-GetAttributeTargetPosition.md) From 7e4e8b2df1f2553fb1e69f221017e6c42a489c09 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Tue, 4 Aug 2026 12:30:09 +0000 Subject: [PATCH 44/52] [Port] [6000.5] Check actual clear coat value along with the clear coat flag --- .../Runtime/Material/Lit/Lit.hlsl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 37f49b3bf75..ef63e91e92f 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 @@ -383,7 +383,7 @@ NormalData ConvertSurfaceDataToNormalData(SurfaceData surfaceData) // If the fragment that we are processing has clear cloat, we want to export the clear coat's perceptual roughness and geometric normal // instead of the base layer's roughness and the shader normal to be use by SSR #if (SHADERPASS == SHADERPASS_DEPTH_ONLY) || (SHADERPASS == SHADERPASS_MOTION_VECTORS) || (SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS) - if (HasFlag(surfaceData.materialFeatures, MATERIALFEATUREFLAGS_LIT_CLEAR_COAT)) + if (HasFlag(surfaceData.materialFeatures, MATERIALFEATUREFLAGS_LIT_CLEAR_COAT) && surfaceData.coatMask > 0.0) { normalData.normalWS = surfaceData.geomNormalWS; normalData.perceptualRoughness = CLEAR_COAT_SSR_PERCEPTUAL_ROUGHNESS; From b6a69637fb83167973ec2dcee57b804210a4e253 Mon Sep 17 00:00:00 2001 From: Clara Kang Date: Thu, 6 Aug 2026 05:42:40 +0000 Subject: [PATCH 45/52] [Port] [6000.5] [UUM-148810] Skip URP Asset save in import workers during shader stripping --- .../Editor/ShaderBuildPreprocessor.cs | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/Packages/com.unity.render-pipelines.universal/Editor/ShaderBuildPreprocessor.cs b/Packages/com.unity.render-pipelines.universal/Editor/ShaderBuildPreprocessor.cs index 53ae5fe1d4e..5826176487f 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/ShaderBuildPreprocessor.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/ShaderBuildPreprocessor.cs @@ -422,9 +422,12 @@ private static void GetEveryShaderFeatureAndUpdateURPAssets(List // Update the Prefiltering settings for this URP asset urpAsset.UpdateShaderKeywordPrefiltering(ref spd); - // Save the asset before build - EditorUtility.SetDirty(urpAsset); - AssetDatabase.SaveAssetIfDirty(urpAsset); + if (!AssetDatabase.IsAssetImportWorkerProcess()) + { + // Save the asset before build + EditorUtility.SetDirty(urpAsset); + AssetDatabase.SaveAssetIfDirty(urpAsset); + } } } } @@ -494,9 +497,12 @@ ref ssaoRendererFeatures // Update the Prefiltering settings for this URP asset urpAsset.UpdateShaderKeywordPrefiltering(ref spd); - // Save the asset before build - EditorUtility.SetDirty(urpAsset); - AssetDatabase.SaveAssetIfDirty(urpAsset); + if (!AssetDatabase.IsAssetImportWorkerProcess()) + { + // Save the asset before build + EditorUtility.SetDirty(urpAsset); + AssetDatabase.SaveAssetIfDirty(urpAsset); + } // Clean up ssaoRendererFeatures.Clear(); From 35cf7e2f543ae73adc06773dfe6b35294d06079c Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Thu, 6 Aug 2026 16:08:58 +0000 Subject: [PATCH 46/52] [Port] [6000.5] Allow On Tile Post Processing only on the Universal Renderer --- .../Runtime/RendererFeatures/OnTilePostProcessFeature.cs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/OnTilePostProcessFeature.cs b/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/OnTilePostProcessFeature.cs index 0f5f3434637..b0a8bfff6a7 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/OnTilePostProcessFeature.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/RendererFeatures/OnTilePostProcessFeature.cs @@ -7,6 +7,7 @@ /// The class for the On-Tile Post Processing renderer feature. This renderer feature provides a reduced scope alternative to the built-in URP post-processing features but that can run more optimally on tile-based graphics hardware (most untethered-XR devices) /// The renderer feature could only be added once. Adding multiple post processing passes is currently not supported. ///
+[SupportedOnRenderer(typeof(UniversalRendererData))] [DisallowMultipleRendererFeature("On Tile Post Processing")] public partial class OnTilePostProcessFeature : ScriptableRendererFeature { @@ -82,7 +83,9 @@ public override void AddRenderPasses(ScriptableRenderer renderer, ref RenderingD // NOTE: Ideally, we check here if the Post Processing is enabled on the UniversalRenderer asset through a public API. In that case, the built in post processing will be enabled. // We currently do not have a public API for that, so we use internal API for now. - var universalRenderer = renderer as UniversalRenderer; + if (renderer is not UniversalRenderer universalRenderer) + return; + if (universalRenderer.postProcessEnabled) { Debug.LogError("URP renderer(Universal Renderer Data) has post processing enabled, which conflicts with the On-Tile post processing feature. Only one of the post processing should be enabled. On-Tile post processing feature will not be added."); From 7f0ce4e437c0bade522ab086b3e13048181c7f53 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Fri, 7 Aug 2026 05:30:07 +0000 Subject: [PATCH 47/52] [Port] [6000.5] Turn GRD off from URP/HDRP template projects --- .../Settings/QualityLevels/1HDRPLowQuality.asset | 2 +- .../Settings/QualityLevels/2HDRPMediumQuality.asset | 2 +- .../Settings/QualityLevels/3HDRPHighQuality.asset | 2 +- .../Settings/QualityLevels/4HDRPRaytracingQuality.asset | 2 +- .../Settings/QualityLevels/5HDRPRaytracingRTGIQuality.asset | 2 +- .../ProjectSettings/GraphicsSettings.asset | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Templates/com.unity.template-hd/Assets/SampleSceneAssets/Settings/QualityLevels/1HDRPLowQuality.asset b/Templates/com.unity.template-hd/Assets/SampleSceneAssets/Settings/QualityLevels/1HDRPLowQuality.asset index 25567b04c62..785b9a876b7 100644 --- a/Templates/com.unity.template-hd/Assets/SampleSceneAssets/Settings/QualityLevels/1HDRPLowQuality.asset +++ b/Templates/com.unity.template-hd/Assets/SampleSceneAssets/Settings/QualityLevels/1HDRPLowQuality.asset @@ -312,7 +312,7 @@ MonoBehaviour: - 0.5 - 0.5 gpuResidentDrawerSettings: - mode: 1 + mode: 0 smallMeshScreenPercentage: 0 enableOcclusionCullingInCameras: 0 useDepthPrepassForOccluders: 1 diff --git a/Templates/com.unity.template-hd/Assets/SampleSceneAssets/Settings/QualityLevels/2HDRPMediumQuality.asset b/Templates/com.unity.template-hd/Assets/SampleSceneAssets/Settings/QualityLevels/2HDRPMediumQuality.asset index d011b3bf77f..16978ff2afb 100644 --- a/Templates/com.unity.template-hd/Assets/SampleSceneAssets/Settings/QualityLevels/2HDRPMediumQuality.asset +++ b/Templates/com.unity.template-hd/Assets/SampleSceneAssets/Settings/QualityLevels/2HDRPMediumQuality.asset @@ -312,7 +312,7 @@ MonoBehaviour: - 0.5 - 0.5 gpuResidentDrawerSettings: - mode: 1 + mode: 0 smallMeshScreenPercentage: 0 enableOcclusionCullingInCameras: 0 useDepthPrepassForOccluders: 1 diff --git a/Templates/com.unity.template-hd/Assets/SampleSceneAssets/Settings/QualityLevels/3HDRPHighQuality.asset b/Templates/com.unity.template-hd/Assets/SampleSceneAssets/Settings/QualityLevels/3HDRPHighQuality.asset index 5abe037c86f..4d3ea8e1fb7 100644 --- a/Templates/com.unity.template-hd/Assets/SampleSceneAssets/Settings/QualityLevels/3HDRPHighQuality.asset +++ b/Templates/com.unity.template-hd/Assets/SampleSceneAssets/Settings/QualityLevels/3HDRPHighQuality.asset @@ -312,7 +312,7 @@ MonoBehaviour: - 0.5 - 0.5 gpuResidentDrawerSettings: - mode: 1 + mode: 0 smallMeshScreenPercentage: 0 enableOcclusionCullingInCameras: 0 useDepthPrepassForOccluders: 1 diff --git a/Templates/com.unity.template-hd/Assets/SampleSceneAssets/Settings/QualityLevels/4HDRPRaytracingQuality.asset b/Templates/com.unity.template-hd/Assets/SampleSceneAssets/Settings/QualityLevels/4HDRPRaytracingQuality.asset index 7281e067810..0b4704b708b 100644 --- a/Templates/com.unity.template-hd/Assets/SampleSceneAssets/Settings/QualityLevels/4HDRPRaytracingQuality.asset +++ b/Templates/com.unity.template-hd/Assets/SampleSceneAssets/Settings/QualityLevels/4HDRPRaytracingQuality.asset @@ -312,7 +312,7 @@ MonoBehaviour: - 0.5 - 0.5 gpuResidentDrawerSettings: - mode: 1 + mode: 0 smallMeshScreenPercentage: 0 enableOcclusionCullingInCameras: 0 useDepthPrepassForOccluders: 1 diff --git a/Templates/com.unity.template-hd/Assets/SampleSceneAssets/Settings/QualityLevels/5HDRPRaytracingRTGIQuality.asset b/Templates/com.unity.template-hd/Assets/SampleSceneAssets/Settings/QualityLevels/5HDRPRaytracingRTGIQuality.asset index 5ee914b3b4f..72741ad8c1d 100644 --- a/Templates/com.unity.template-hd/Assets/SampleSceneAssets/Settings/QualityLevels/5HDRPRaytracingRTGIQuality.asset +++ b/Templates/com.unity.template-hd/Assets/SampleSceneAssets/Settings/QualityLevels/5HDRPRaytracingRTGIQuality.asset @@ -312,7 +312,7 @@ MonoBehaviour: - 0.5 - 0.5 gpuResidentDrawerSettings: - mode: 1 + mode: 0 smallMeshScreenPercentage: 0 enableOcclusionCullingInCameras: 0 useDepthPrepassForOccluders: 1 diff --git a/Templates/com.unity.template-hd/ProjectSettings/GraphicsSettings.asset b/Templates/com.unity.template-hd/ProjectSettings/GraphicsSettings.asset index 4a2782c45b0..d31add319c5 100644 --- a/Templates/com.unity.template-hd/ProjectSettings/GraphicsSettings.asset +++ b/Templates/com.unity.template-hd/ProjectSettings/GraphicsSettings.asset @@ -116,7 +116,7 @@ GraphicsSettings: m_LightmapStripping: 0 m_FogStripping: 0 m_InstancingStripping: 0 - m_BrgStripping: 2 + m_BrgStripping: 0 m_LightmapKeepPlain: 0 m_LightmapKeepDirCombined: 1 m_LightmapKeepDynamicPlain: 0 From 88e005240b6364a08e98cd0d3cf894519c8d0f9d Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Tue, 11 Aug 2026 12:04:05 +0000 Subject: [PATCH 48/52] [Port] [6000.5] Fix a water null exception when exiting the frame debugger. --- .../Runtime/RenderPipeline/HDRenderPipeline.cs | 4 ++-- .../Runtime/Water/HDRenderPipeline.WaterSystem.cs | 8 ++++++++ 2 files changed, 10 insertions(+), 2 deletions(-) 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 608b67d8995..7bc2dbe9762 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 @@ -2244,8 +2244,8 @@ protected override void Render(ScriptableRenderContext renderContext, List(); return !(!settings.enable.value || !hdCamera.frameSettings.IsEnabled(FrameSettingsField.Water) From c4c9e8a70ad30db3c24506d4215c259c4804e72a Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Wed, 12 Aug 2026 07:23:42 +0000 Subject: [PATCH 49/52] [Port] [6000.5] Skipping exposure compensation when post processing history is reset to avoid screen flicker --- .../Runtime/PostProcessing/Shaders/UberPost.compute | 4 +++- .../Runtime/RenderPipeline/HDRenderPipeline.PostProcess.cs | 6 ++++++ .../Runtime/RenderPipeline/HDStringConstants.cs | 1 + 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/Packages/com.unity.render-pipelines.high-definition/Runtime/PostProcessing/Shaders/UberPost.compute b/Packages/com.unity.render-pipelines.high-definition/Runtime/PostProcessing/Shaders/UberPost.compute index 32a14248c3e..126fa978e81 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Runtime/PostProcessing/Shaders/UberPost.compute +++ b/Packages/com.unity.render-pipelines.high-definition/Runtime/PostProcessing/Shaders/UberPost.compute @@ -53,6 +53,7 @@ CBUFFER_START(cb0) float4 _BloomBicubicParams; float4 _DebugFlags; float4 _AlphaScaleBias; + float4 _PreExposureCorrectionParams; // x: 1 to apply pre-exposure correction, 0 to skip it (reset frames) CBUFFER_END #define DistCenter _DistortionParams1.xy @@ -75,6 +76,7 @@ CBUFFER_END #define VignetteOpacity _VignetteColor.w #define PostExposure _LogLut3D_Params.z +#define PreExposureCorrectionEnabled _PreExposureCorrectionParams.x #define NeedLUT _LogLut3D_Params.w @@ -176,7 +178,7 @@ void Uber(uint3 dispatchThreadId : SV_DispatchThreadID) // When the HDCamera is reset, post-processing history and exposure resets as well, leaving the default value for the current // previous exposure frame even though the current exposure is still be valid (the frame was pre-exposed with a non default value). // To avoid this case we don't perform exposure compensation if the current frame exposure is the default value. - if (currentFrameExposure != 1) + if (PreExposureCorrectionEnabled != 0 && currentFrameExposure != 1) { // Find the original color of the pixel as if it was not exposed, hence removing the previous frame exposure from current frame. float3 nonExposedColor = color.rgb / previousFrameExposure; diff --git a/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDRenderPipeline.PostProcess.cs b/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDRenderPipeline.PostProcess.cs index 4058a2e4cc3..47b7695ef2d 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDRenderPipeline.PostProcess.cs +++ b/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDRenderPipeline.PostProcess.cs @@ -5564,6 +5564,8 @@ class UberPostPassData public Vector4 alphaScaleBias; + public bool exposureCompensationEnabled; + public TextureHandle source; public TextureHandle destination; public TextureHandle logLut; @@ -5631,6 +5633,8 @@ TextureHandle UberPass(RenderGraph renderGraph, HDCamera hdCamera, in TextureHan PrepareUberBloomParameters(passData, hdCamera); PrepareAlphaScaleParameters(passData, hdCamera); + passData.exposureCompensationEnabled = !hdCamera.resetPostProcessingHistory && !hdCamera.didResetPostProcessingHistoryInLastFrame && !IsExposureFixed(hdCamera); + passData.source = source; builder.UseTexture(passData.source, AccessFlags.Read); passData.bloomTexture = bloomTexture; @@ -5674,6 +5678,8 @@ TextureHandle UberPass(RenderGraph renderGraph, HDCamera hdCamera, in TextureHan // Alpha scale and bias (only used when alpha is enabled) natCmd.SetComputeVectorParam(data.uberPostCS, HDShaderIDs._AlphaScaleBias, data.alphaScaleBias); + natCmd.SetComputeVectorParam(data.uberPostCS, HDShaderIDs._PreExposureCorrectionParams, new Vector4(data.exposureCompensationEnabled ? 1f : 0f, 0f, 0f, 0f)); + // Dispatch uber post natCmd.SetComputeVectorParam(data.uberPostCS, "_DebugFlags", new Vector4(data.outputColorLog ? 1 : 0, 0, 0, data.isSearchingInHierarchy ? 1 : 0)); natCmd.SetComputeTextureParam(data.uberPostCS, data.uberPostKernel, HDShaderIDs._InputTexture, data.source); 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 8b8981103bc..e69b0d9086d 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 @@ -943,6 +943,7 @@ static class HDShaderIDs public static readonly int _PrevExposureTexture = Shader.PropertyToID("_PrevExposureTexture"); // Note that this is a separate name because is bound locally to a exposure shader, while _PrevExposureTexture is bound globally for everything else. public static readonly int _PreviousExposureTexture = Shader.PropertyToID("_PreviousExposureTexture"); + public static readonly int _PreExposureCorrectionParams = Shader.PropertyToID("_PreExposureCorrectionParams"); public static readonly int _ExposureDebugTexture = Shader.PropertyToID("_ExposureDebugTexture"); public static readonly int _ExposureParams = Shader.PropertyToID("_ExposureParams"); public static readonly int _ExposureParams2 = Shader.PropertyToID("_ExposureParams2"); From d958b225be9d804dcc4605d5f24a2f9e82989348 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Wed, 12 Aug 2026 17:28:05 +0000 Subject: [PATCH 50/52] [Port] [6000.5] [STP] Fix TAA feedback artifacts on Vulkan (UUM-139455) --- .../Runtime/STP/StpCommon.hlsl | 15 ++------------- 1 file changed, 2 insertions(+), 13 deletions(-) diff --git a/Packages/com.unity.render-pipelines.core/Runtime/STP/StpCommon.hlsl b/Packages/com.unity.render-pipelines.core/Runtime/STP/StpCommon.hlsl index 4e21a5a2324..7fbf3531c56 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/STP/StpCommon.hlsl +++ b/Packages/com.unity.render-pipelines.core/Runtime/STP/StpCommon.hlsl @@ -42,19 +42,8 @@ #define STP_TAA_Q 0 #endif -#if defined(SHADER_API_SWITCH) || defined(SHADER_API_SWITCH2) - #define STP_BUG_SAT_INF 1 -#endif - -// Enable workarounds that help us avoid issues on Metal -#if defined(SHADER_API_METAL) - // Relying on infinity behavior causes issues in the on-screen inline pass calculations - // We expect this option to be required on Metal because the shading language spec states that the fast-math - // option is on by default which disables support for proper INF handling. - #define STP_BUG_SAT_INF 1 -#endif - -#if defined(SHADER_API_PSSL) +// No guaranteed INF/NaN arithmetic on these platforms (fast-math by default) +#if defined(SHADER_API_VULKAN) || defined(SHADER_API_METAL) || defined(SHADER_API_SWITCH) || defined(SHADER_API_SWITCH2) || defined(SHADER_API_PSSL) || defined(SHADER_API_WEBGPU) #define STP_BUG_SAT_INF 1 #endif From 497065d95897213cb6d36c09ab9d4cb835d74592 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Wed, 12 Aug 2026 17:28:06 +0000 Subject: [PATCH 51/52] [Port] [6000.5] docg-8933: Check subheading and create new landing pages VFX Graph --- .../Context-Common-LandingPage.md | 18 +++++++++ .../Context-Event-LandingPage.md | 16 ++++++++ .../Context-OutputAdvanced-LandingPage.md | 17 ++++++++ .../Context-OutputBasic-LandingPage.md | 19 +++++++++ .../Context-OutputStrip-LandingPage.md | 17 ++++++++ .../Documentation~/Context.md | 27 +++++-------- .../Documentation~/TableOfContents.md | 39 +++++++++++-------- 7 files changed, 118 insertions(+), 35 deletions(-) create mode 100644 Packages/com.unity.visualeffectgraph/Documentation~/Context-Common-LandingPage.md create mode 100644 Packages/com.unity.visualeffectgraph/Documentation~/Context-Event-LandingPage.md create mode 100644 Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputAdvanced-LandingPage.md create mode 100644 Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputBasic-LandingPage.md create mode 100644 Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputStrip-LandingPage.md diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-Common-LandingPage.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-Common-LandingPage.md new file mode 100644 index 00000000000..b33bc1669b2 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-Common-LandingPage.md @@ -0,0 +1,18 @@ +# Common Contexts reference + +Spawn particles, set their starting values, and update them each frame. + +These Contexts form the core simulation loop that every particle system relies on, regardless of how the particles are rendered. + +| **Topic** | **Description** | +| --- | --- | +| [Initialize Particle Context](Context-Initialize.md) | Process an event and initialize new particle elements. | +| [Spawn Context](Context-Spawn.md) | Control the spawn rate of particles, or create a custom spawning behavior. | +| [Update Particle Context](Context-Update.md) | Manage the behavior of particles or particle strips from an Initialize Context. | + +**Note**: The **Initialize Particle Strip** menu entry also opens the [Initialize Particle Context](Context-Initialize.md) page. Set its **Data Type** setting to **Particle Strip** to initialize particle strips instead of particles. + +## Additional resources + +- [Contexts](Contexts.md) +- [Blocks](Blocks.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-Event-LandingPage.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-Event-LandingPage.md new file mode 100644 index 00000000000..1211b7aed59 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-Event-LandingPage.md @@ -0,0 +1,16 @@ +# Event Contexts reference + +Trigger and manage the events that start and stop a visual effect. + +These Contexts define where the processing workflow starts and ends in a graph and can also send data back out to the Visual Effect component. + +| **Topic** | **Description** | +| --- | --- | +| [Event Context](Context-Event.md) | Define names for events that trigger actions in a graph. | +| [GPU Event Context](Context-GPUEvent.md) | Spawn new particles from specific Blocks in Update or Initialize Contexts. | +| Output Event Context | Outputs a CPU Spawn Event back to the Visual Effect component. For information on consuming these events, see [Output Event Handlers](OutputEventHandlers.md). | + +## Additional resources + +- [Contexts](Contexts.md) +- [Sending Events](ComponentAPI.md#sending-events) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputAdvanced-LandingPage.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputAdvanced-LandingPage.md new file mode 100644 index 00000000000..16262057ef6 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputAdvanced-LandingPage.md @@ -0,0 +1,17 @@ +# Output Advanced Contexts reference + +Render particles as decals or volumetric fog for specialized effects. + +These Contexts require specific render pipeline support (URP or HDRP) and cover more specialized rendering needs than the basic outputs. + +| **Topic** | **Description** | +| --- | --- | +| [Output Distortion Context](Context-OutputDistortion.md) | In HDRP, use distortion to simulate effects like heat haze from fire. Covers the **Output Particle Distortion Mesh** variant. | +| [Output Particle HDRP Lit Decal Context](Context-OutputParticleHDRPLitDecal.md) | Use a decal to render a particle system in the High Definition Render Pipeline (HDRP). | +| [Output Particle HDRP Volumetric Fog Context](Context-OutputParticleHDRPVolumetricFog.md) | Convert particles into a volumetric fog effect in HDRP, to create dynamic fog effects. | +| [Output Particle URP Lit Decal Context](Context-OutputParticleURPLitDecal.md) | Use a decal to render a particle system in the Universal Render Pipeline (URP). | + +## Additional resources + +- [Contexts](Contexts.md) +- [Shared output settings Context](SharedOutputSettings.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputBasic-LandingPage.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputBasic-LandingPage.md new file mode 100644 index 00000000000..632607a7cb7 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputBasic-LandingPage.md @@ -0,0 +1,19 @@ +# Output Basic Contexts reference + +Render particles as meshes, quads, triangles, or octagons. + +These are the most commonly used output Contexts and cover the majority of everyday particle rendering needs. + +| **Topic** | **Description** | +| --- | --- | +| [Output Particle Mesh Context](Context-OutputParticleMesh.md) | Render particles as meshes. | +| [Output Particle Primitive Context](Context-OutputPrimitive.md) | Render particles as lit quads, triangles, or octagons. | +| [Output Particle ShaderGraph Mesh Context](Context-OutputShaderGraphMesh.md) | Render particles as a custom Shader Graph mesh. | +| [Output ShaderGraph Quad Context](Context-OutputShaderGraphPlanarPrimitive.md) | Render particles as a custom Shader Graph quad. | + +**Note**: Each of these Contexts covers both its Unlit variant and, on render pipelines that support it (URP, HDRP), its [Lit](Context-OutputLitSettings.md) variant. + +## Additional resources + +- [Contexts](Contexts.md) +- [Shared output settings Context](SharedOutputSettings.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputStrip-LandingPage.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputStrip-LandingPage.md new file mode 100644 index 00000000000..f97ad1fefe9 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputStrip-LandingPage.md @@ -0,0 +1,17 @@ +# Output Strip Contexts reference + +Render connected particle strips such as trails and ribbons. + +These Contexts render particle strip data as a continuous connected surface, rather than as independent particles. + +| **Topic** | **Description** | +| --- | --- | +| [Output Particle ShaderGraph Strip Context](Context-OutputShaderGraphStrip.md) | Render particles as a custom Shader Graph strip. | +| [Output Distortion Context](Context-OutputDistortion.md) | In the High Definition Render Pipeline (HDRP), use distortion to simulate effects like heat haze from fire. Covers the **Output Strip Distortion Quad** variant. | + +**Note**: The Unlit and Lit **Output ParticleStrip Quad** menu entries do not have a dedicated reference page yet. + +## Additional resources + +- [Contexts](Contexts.md) +- [Shared output settings Context](SharedOutputSettings.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context.md index 0f67d098ad6..603983cc2a0 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Context.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context.md @@ -2,27 +2,18 @@ Explore the different [Contexts](Contexts.md) you can add to a graph. -| **Page** | **Description** | +| **Topic** | **Description** | | --- | --- | -| [Event Context](Context-Event.md) | Define names for events that trigger actions in a graph. | -| [GPU Event Context](Context-GPUEvent.md) | Spawn new particles from specific Blocks in Update or Initialize Contexts. | -| [Initialize Particle Context](Context-Initialize.md) | Process an event and initialize new particle elements. | -| [Output Decal Context](Context-OutputForwardDecal.md) | Render a particle system using a projected decal texture. | -| [Output Distortion Context](Context-OutputDistortion.md) | In the High Definition Render Pipeline (HDRP), use distortion to simulate effects like heat haze from fire. | -| [Output Line Context](Context-OutputLine.md) | Render particles as lines. | +| [Common Contexts](Context-Common-LandingPage.md) | Spawn particles, set their starting values, and update them each frame. | +| [Event Contexts](Context-Event-LandingPage.md) | Trigger and manage the events that start and stop a visual effect. | +| [Output Basic Contexts](Context-OutputBasic-LandingPage.md) | Render particles as meshes, quads, triangles, or octagons. | +| [Output Strip Contexts](Context-OutputStrip-LandingPage.md) | Render connected particle strips such as trails and ribbons. | +| [Output Advanced Contexts](Context-OutputAdvanced-LandingPage.md) | Render particles as decals or volumetric fog for specialized effects. | | [Output Mesh Context](Context-OutputMesh.md) | Render a static mesh. | -| [Output Particle HDRP Lit Decal Context](Context-OutputParticleHDRPLitDecal.md) | Use a decal to render a particle system in HDRP. | -| [Output Particle HDRP Volumetric Fog Context](Context-OutputParticleHDRPVolumetricFog.md) | Convert particles into a volumetric fog effect in HDRP, to create dynamic fog effects. | -| [Output Particle Mesh Context](Context-OutputParticleMesh.md) | Render particles as meshes. | -| [Output Particle URP Lit Decal Context](Context-OutputParticleURPLitDecal.md) | Use a decal to render a particle system in the Universal Render Pipeline (URP). | -| [Output Point Context](Context-OutputPoint.md) | Render particles as points. | -| [Output Primitive Context](Context-OutputPrimitive.md) | Render particles as lit quads, triangles, or octagons. | -| [Output ShaderGraph Mesh Context](Context-OutputShaderGraphMesh.md) | Render particles as a custom Shader Graph mesh. | -| [Output ShaderGraph Quad Context](Context-OutputShaderGraphPlanarPrimitive.md) | Render particles as a custom Shader Graph quad. | -| [Output ShaderGraph Strip Context](Context-OutputShaderGraphStrip.md) | Render particles as a custom Shader Graph strip. | +| [Output Particle Forward Decal Context](Context-OutputForwardDecal.md) | Render a particle system using a projected decal texture. | +| [Output Particle Line Context](Context-OutputLine.md) | Render particles as lines. | +| [Output Particle Point Context](Context-OutputPoint.md) | Render particles as points. | | [Shared output settings Context](SharedOutputSettings.md) | Explore the settings that appear in all Contexts. | -| [Spawn Context](Context-Spawn.md) | Control the spawn rate of particles, or create a custom spawning behavior. | -| [Update Particle Context](Context-Update.md) | Manage the behavior of particles or particle strips from an Initialize Context. | ## Additional resources diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/TableOfContents.md b/Packages/com.unity.visualeffectgraph/Documentation~/TableOfContents.md index 84966c61022..7729b8cbbe8 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/TableOfContents.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/TableOfContents.md @@ -65,27 +65,32 @@ * [Six-way smoke lit reference](six-way-lighting-reference.md) * [Node Library](node-library.md) * [Contexts](Context.md) - * [Event Context](Context-Event.md) - * [GPU Event Context](Context-GPUEvent.md) - * [Initialize Particle Context](Context-Initialize.md) + * [Common Contexts](Context-Common-LandingPage.md) + * [Initialize Particle Context](Context-Initialize.md) + * [Spawn Context](Context-Spawn.md) + * [Update Particle Context](Context-Update.md) + * [Event Contexts](Context-Event-LandingPage.md) + * [Event Context](Context-Event.md) + * [GPU Event Context](Context-GPUEvent.md) + * [Output Basic Contexts](Context-OutputBasic-LandingPage.md) + * [Output Particle Mesh Context](Context-OutputParticleMesh.md) + * [Output Particle Primitive Context](Context-OutputPrimitive.md) + * [Output Particle ShaderGraph Mesh Context](Context-OutputShaderGraphMesh.md) + * [Output ShaderGraph Quad Context](Context-OutputShaderGraphPlanarPrimitive.md) + * [Output Strip Contexts](Context-OutputStrip-LandingPage.md) + * [Output Particle ShaderGraph Strip Context](Context-OutputShaderGraphStrip.md) + * [Output Advanced Contexts](Context-OutputAdvanced-LandingPage.md) + * [Output Distortion Context](Context-OutputDistortion.md) + * [Output Particle HDRP Lit Decal Context](Context-OutputParticleHDRPLitDecal.md) + * [Output Particle HDRP Volumetric Fog Context](Context-OutputParticleHDRPVolumetricFog.md) + * [Output Particle URP Lit Decal Context](Context-OutputParticleURPLitDecal.md) * [Output Mesh Context](Context-OutputMesh.md) - * [Output Distortion Context](Context-OutputDistortion.md) - * [Output Decal Context](Context-OutputForwardDecal.md) - * [Output Line Context](Context-OutputLine.md) - * [Output Particle Mesh Context](Context-OutputParticleMesh.md) - * [Output Particle HDRP Lit Decal Context](Context-OutputParticleHDRPLitDecal.md) - * [Output Particle HDRP Volumetric Fog Context](Context-OutputParticleHDRPVolumetricFog.md) - * [Output Particle URP Lit Decal Context](Context-OutputParticleURPLitDecal.md) - * [Output Point Context](Context-OutputPoint.md) - * [Output Particle Primitive Context](Context-OutputPrimitive.md) - * [Output ShaderGraph Quad Context](Context-OutputShaderGraphPlanarPrimitive.md) - * [Output Particle ShaderGraph Mesh Context](Context-OutputShaderGraphMesh.md) - * [Output ParticleStrip ShaderGraph Quad Context](Context-OutputShaderGraphStrip.md) + * [Output Particle Forward Decal Context](Context-OutputForwardDecal.md) + * [Output Particle Line Context](Context-OutputLine.md) + * [Output Particle Point Context](Context-OutputPoint.md) * [Shared Output Settings Context](SharedOutputSettings.md) * [Global Settings Context](Context-OutputSharedSettings.md) * [Lit Output Settings Context](Context-OutputLitSettings.md) - * [Spawn Context](Context-Spawn.md) - * [Update Particle Context](Context-Update.md) * [Blocks](Block.md) * [Attribute Blocks](Attribute.md) * [Curve Block](Block-SetAttributeFromCurve.md) From e17d0296f5dec140c292b3074c3868c74a4e3f47 Mon Sep 17 00:00:00 2001 From: Reach Platform Support Date: Fri, 14 Aug 2026 05:24:07 +0000 Subject: [PATCH 52/52] [content automatically redacted] touching PlatformDependent folder --- .../Assets/Tests/HDRP_VisualEffectsGraph_GraphicsTests.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/Tests/SRPTests/Projects/VisualEffectGraph_HDRP/Assets/Tests/HDRP_VisualEffectsGraph_GraphicsTests.cs b/Tests/SRPTests/Projects/VisualEffectGraph_HDRP/Assets/Tests/HDRP_VisualEffectsGraph_GraphicsTests.cs index 48b10ebc1cd..704df5e3d5b 100644 --- a/Tests/SRPTests/Projects/VisualEffectGraph_HDRP/Assets/Tests/HDRP_VisualEffectsGraph_GraphicsTests.cs +++ b/Tests/SRPTests/Projects/VisualEffectGraph_HDRP/Assets/Tests/HDRP_VisualEffectsGraph_GraphicsTests.cs @@ -31,7 +31,6 @@ public class VFXGraphicsTests [IgnoreGraphicsTest("39_SmokeLighting_APV", "Too many bindings when using APVs", runtimePlatforms: new RuntimePlatform[] { RuntimePlatform.Switch })] [IgnoreGraphicsTest("102_ShadergraphShadow", "See UUM-96202", runtimePlatforms: new RuntimePlatform[] { RuntimePlatform.Switch })] [IgnoreGraphicsTest("015_FixedTime", "See UUM-109089", runtimePlatforms: new RuntimePlatform[] { RuntimePlatform.Switch })] - [IgnoreGraphicsTest("DebugAlbedo", "Onscreen assert", runtimePlatforms: new RuntimePlatform[] { RuntimePlatform.Switch2 })] [IgnoreGraphicsTest("015_FixedTime", "Onscreen assert", runtimePlatforms: new RuntimePlatform[] { RuntimePlatform.Switch2 })] [IgnoreGraphicsTest("Repro_SampleGradient_Branch_Instancing", "Compute shader ([Repro_SampleGradient_Branch_Instancing] [Minimal] Update Particles): Property (Repro_SampleGradient_Branch_Instancing_Buffer) at kernel index (0) is not set")] [IgnoreGraphicsTest("Empty", "No reference images provided")]