diff --git a/Packages/com.unity.render-pipelines.core/Documentation~/advanced-properties.md b/Packages/com.unity.render-pipelines.core/Documentation~/advanced-properties.md index 0534d9daf74..c62806f8d8e 100644 --- a/Packages/com.unity.render-pipelines.core/Documentation~/advanced-properties.md +++ b/Packages/com.unity.render-pipelines.core/Documentation~/advanced-properties.md @@ -1,3 +1,7 @@ +--- +uid: um-srp-advanced-properties +--- + # Advanced Properties Unity Render Pipelines components expose standard properties by default that are suitable for most use-cases. 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 dabbfc90e27..bb04940a8bb 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 @@ -754,8 +754,7 @@ static bool SetBakingContext(List perSceneData) for (int i = 0; i < perSceneData.Count; ++i) { var data = perSceneData[i]; - var scene = data.gameObject.scene; - var sceneGUID = scene.GetGUID(); + var sceneGUID = data.sceneGUID; var bakingSet = ProbeVolumeBakingSet.GetBakingSetForScene(sceneGUID); if (bakingSet == null) @@ -763,7 +762,8 @@ static bool SetBakingContext(List perSceneData) if (isBakingSingleScene) continue; - Debug.LogError($"Scene '{scene.name}' does not belong to any Baking Set. Please add it to a Baking Set in the Adaptive Probe Volumes tab of the Lighting Window."); + var sceneName = data.gameObject.scene.name; + Debug.LogError($"Scene '{sceneName}' does not belong to any Baking Set. Please add it to a Baking Set in the Adaptive Probe Volumes tab of the Lighting Window."); return false; } diff --git a/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeReferenceVolume.ReflProbeNormalization.cs b/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeReferenceVolume.ReflProbeNormalization.cs index 97fbeb60b35..34a74a3357f 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeReferenceVolume.ReflProbeNormalization.cs +++ b/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeReferenceVolume.ReflProbeNormalization.cs @@ -1,3 +1,4 @@ +using System; using System.Collections.Generic; using Unity.Collections; #if UNITY_EDITOR @@ -25,6 +26,7 @@ public class AdditionalGIBakeRequestsManager public static AdditionalGIBakeRequestsManager instance { get { return s_Instance; } } const float kInvalidSH = 1f; + const float kInvalidValidity = 1f; const float kValidSHThresh = 0.33f; private static Dictionary m_SHCoefficients = new Dictionary(); @@ -64,6 +66,7 @@ public void DequeueRequest(int probeInstanceID) /// The output SH coefficients that have been computed. /// The position for which the computed SH coefficients are valid. /// Whether the request for light probe rendering has been fulfilled and sh is valid. + [Obsolete("Use RetrieveProbe instead.", false)] public bool RetrieveProbeSH(int probeInstanceID, out SphericalHarmonicsL2 sh, out Vector3 pos) { if (m_SHCoefficients.ContainsKey(probeInstanceID)) @@ -78,6 +81,32 @@ public bool RetrieveProbeSH(int probeInstanceID, out SphericalHarmonicsL2 sh, ou return false; } + /// + /// Retrieve the result of a capture request, it will return false if the request ID is invalid. + /// + /// The instance ID of the probe doing the request. + /// The position for which the computed SH coefficients are valid. + /// The output SH coefficients that have been computed. + /// The output validity that has been computed. + /// True if the request ID is valid. + public bool RetrieveProbe(EntityId probeInstanceID, out Vector3 pos, out SphericalHarmonicsL2 sh, out float validity) + { + if (m_SHCoefficients.ContainsKey(probeInstanceID)) + { + sh = m_SHCoefficients[probeInstanceID]; + pos = m_RequestPositions[probeInstanceID]; + validity = m_SHValidity[probeInstanceID]; + + return true; + } + + sh = new SphericalHarmonicsL2(); + pos = Vector3.negativeInfinity; + validity = float.NegativeInfinity; + + return false; + } + static internal bool GetPositionForRequest(int probeInstanceID, out Vector3 pos) { if (m_SHCoefficients.ContainsKey(probeInstanceID)) diff --git a/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeReferenceVolume.cs b/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeReferenceVolume.cs index f6615975f95..b3b2882ab6e 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeReferenceVolume.cs +++ b/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeReferenceVolume.cs @@ -1388,7 +1388,7 @@ internal void AddPendingSceneLoading(string sceneGUID, ProbeVolumeBakingSet baki return; } - if (m_CurrentBakingSet != null && bakingSet != m_CurrentBakingSet) + if (m_CurrentBakingSet != null && !m_CurrentBakingSet.HasSameSceneGUIDs(bakingSet)) { // Trying to load data for a scene from a different baking set than currently loaded ones. // This should not throw an error, but it's not supported 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 d37cd5090f6..e0b37ef8e2a 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 @@ -1115,5 +1115,19 @@ internal int GetChunkGPUMemory(ProbeVolumeSHBands shBands) return size; } + + internal bool HasSameSceneGUIDs(ProbeVolumeBakingSet other) + { + var otherSceneGUIDs = other.sceneGUIDs; + if (m_SceneGUIDs.Count != otherSceneGUIDs.Count) + return false; + + for (var i = 0; i < m_SceneGUIDs.Count; ++i) + { + if (m_SceneGUIDs[i] != otherSceneGUIDs[i]) + return false; + } + return true; + } } } diff --git a/Packages/com.unity.render-pipelines.core/ShaderLibrary/HDROutput.hlsl b/Packages/com.unity.render-pipelines.core/ShaderLibrary/HDROutput.hlsl index f987bacf3bc..1a0b36024d3 100644 --- a/Packages/com.unity.render-pipelines.core/ShaderLibrary/HDROutput.hlsl +++ b/Packages/com.unity.render-pipelines.core/ShaderLibrary/HDROutput.hlsl @@ -21,9 +21,9 @@ int _HDREncoding; // ACES2065-1: A gamut that covers the full XYZ space, part of the ACES specs. Mostly used for storage since it is harder to work with than ACEScg. // WCG: Wide color gamut. This is defined as a color gamut that is wider than the Rec709 one. // LMS: A color space represented by the response of the three cones of human eye (responsivity peaks Long, Medium, Short) -// OETF (Optical Eelectro Transfer Function): This is a function to goes from optical (linear light) to electro (signal transmitted to the display). -// EOTF (Eelectro Optical Transfer Function): The inverse of the OETF, used by the TV/Monitor. -// EETF (Eelectro-Electro Transfer Function): This is generally just a remapping function, we use the BT2390 EETF to perform range reduction based on the actual display. +// OETF (Optical-Electro Transfer Function): This is a function to goes from optical (linear light) to electro (signal transmitted to the display). +// EOTF (Electro-Optical Transfer Function): The inverse of the OETF, used by the TV/Monitor. +// EETF (Electro-Electro Transfer Function): This is generally just a remapping function, we use the BT2390 EETF to perform range reduction based on the actual display. // PQ (Perceptual Quantizer): the EOTF used for HDR10 TVs. It works in the range [0, 10000] nits. Important to keep in mind that this represents an absolute intensity and not relative as for SDR. Sometimes this can be referenced as ST2084. As OETF we'll use the inverse of the PQ curve. // scRGB: a wide color gamut that uses same color space and white point as sRGB, but with much wider coordinates. Used on windows when 16 bit depth is selected. Most of the color space is imaginary colors. Works differently than with PQ (encoding is linear). // G22 (Gamma 2.2): the EOTF used for exact gamma 2.2 curve. diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Images/new-empty-water-decal.png b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Images/new-empty-water-decal.png new file mode 100644 index 00000000000..8f750abecac Binary files /dev/null and b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Images/new-empty-water-decal.png differ diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Images/water-deform-a-water-surface-x-axis.jpg b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Images/water-deform-a-water-surface-x-axis.jpg new file mode 100644 index 00000000000..455e6e9433e Binary files /dev/null and b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Images/water-deform-a-water-surface-x-axis.jpg differ diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Images/water-deform-a-water-surface-y-axis.jpg b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Images/water-deform-a-water-surface-y-axis.jpg new file mode 100644 index 00000000000..890ab1b9649 Binary files /dev/null and b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Images/water-deform-a-water-surface-y-axis.jpg differ diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Images/water-surface-3d-deformation.png b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Images/water-surface-3d-deformation.png new file mode 100644 index 00000000000..404f4da01e9 Binary files /dev/null and b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Images/water-surface-3d-deformation.png differ diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Post-Processing-Bloom.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Post-Processing-Bloom.md index bef26203b0b..29464ba7acf 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Post-Processing-Bloom.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Post-Processing-Bloom.md @@ -40,7 +40,7 @@ Bloom includes [advanced properties](https://docs.unity3d.com/Packages/com.unity | **Property** | **Description** | | -------------------------- | ------------------------------------------------------------ | | **Resolution** | Use the drop-down to set the resolution at which HDRP processes the Bloom effect. If you target consoles that use a very high resolution (for example, 4k), select **Quarter,** because it's less resource-intensive.
• **Quarter**: Uses quarter the screen resolution.
• **Half**: Uses half the screen resolution.
This property only appears when you enable [advanced properties](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@latest?subfolder=/manual/advanced-properties.html). | -| **High Quality Prefiltering** | Enable the checkbox to make HDRP use 13 samples instead of 4 during the prefiltering pass. This increases the resource intensity of the Bloom effect, but results in less flickering by small and bright objects like the sun.
This property only appears when you enable [additional properties](expose-all-additional-properties.md). | +| **High Quality Prefiltering** | Enable the checkbox to make HDRP use 13 samples instead of 4 during the prefiltering pass. This increases the resource intensity of the Bloom effect, but results in less flickering by small and bright objects like the sun.
This property only appears when you enable [additional properties](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@17.2/manual/advanced-properties.html). | | **High Quality Filtering** | Enable the checkbox to make HDRP use bicubic filtering instead of bilinear filtering. This increases the resource intensity of the Bloom effect, but results in smoother visuals.
This property only appears when you enable [advanced properties](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@latest?subfolder=/manual/advanced-properties.html). | | **Anamorphic** | Enable the checkbox to make the bloom effect take the **Anamorphism** property of the Camera into account. This stretches the bloom horizontally or vertically like it would on anamorphic sensors.
This property only appears when you enable [advanced properties](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@latest?subfolder=/manual/advanced-properties.html). | diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Rendering-Layers.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Rendering-Layers.md index 20ccc91d1ea..22edb89fffd 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Rendering-Layers.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Rendering-Layers.md @@ -35,7 +35,7 @@ You can then use the **HD Sample Buffer** node and set **RenderingLayerMask** as After you enable Light Layers, you can then use them to decouple Meshes from certain Lights in your Scene. To do this: 1. Click on a Light in the Hierarchy or the Scene view to view it in the Inspector. -2. Enable [additional properties](expose-all-additional-properties.md) in the **General** section to expose the **Rendering Layer Mask** property. +2. Enable [additional properties](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@17.2/manual/advanced-properties.html) in the **General** section to expose the **Rendering Layer Mask** property. 3. Use the **Rendering Layer Mask** property drop-down to select which Light Layers this Light affects. 4. Click on a Mesh Renderer or Terrain in the Hierarchy or the Scene view to view it in the Inspector. 5. Use the **Rendering Layer Mask** drop-down (See [MeshRenderer](https://docs.unity3d.com/Manual/class-MeshRenderer.html) for GameObjects or [OtherSettings](https://docs.unity3d.com/Manual/terrain-OtherSettings.html) for Terrain) to select which Light Layers affect this Mesh Renderer or Terrain. When you enable Light Layers, a Light only affects a Mesh Renderer or Terrain if they both use a matching Light Layer. diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Shadows-in-HDRP.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Shadows-in-HDRP.md index 3488bc431bb..410e0a9bf9a 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Shadows-in-HDRP.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Shadows-in-HDRP.md @@ -72,7 +72,7 @@ In HDRP, each individual Light component controls its own shadow biasing using t - **Slope-Scale Depth Bias** - **Normal Bias** -Find these settings under the **Shadows** section in the **Light** Inspector. If some property fields are missing, enable [additional properties](expose-all-additional-properties.md) to display them. For details on how each property controls the shadow biasing, see the [Light documentation](Light-Component.md). +Find these settings under the **Shadows** section in the **Light** Inspector. If some property fields are missing, enable [additional properties](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@17.2/manual/advanced-properties.html) to display them. For details on how each property controls the shadow biasing, see the [Light documentation](Light-Component.md). Using high shadow bias values may result in light "leaking" through Meshes. This is where there is a visible gap between the shadow and its caster and leads to shadow shapes that don't accurately represent their casters. diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/TableOfContents.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/TableOfContents.md index cdb1494d035..454b5c2bc89 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/TableOfContents.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/TableOfContents.md @@ -38,7 +38,6 @@ * [Configure build settings for different platforms](configure-build-settings-for-different-platforms.md) * [Quality settings](quality-settings.md) * [Frame Settings](frame-settings.md) - * [Expose all additional properties](expose-all-additional-properties.md) * [Create an HDRP asset](create-an-hdrp-asset.md) * [Scene setup](scene-setup.md) * [Understand Volumes](understand-volumes.md) diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/configure-build-and-project-settings.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/configure-build-and-project-settings.md index bc767c666ac..b717b06649a 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/configure-build-and-project-settings.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/configure-build-and-project-settings.md @@ -9,4 +9,3 @@ Use settings to configure the High Definition Render Pipeline (HDRP) for differe | [Configure build settings for different platforms](configure-build-settings-for-different-platforms.md) | Install platform packages to build your project for different platforms. | | [Quality settings](quality-settings.md) | Create additional HDRP Assets to override HDRP settings for different hardware and computer processing ability. | | [Frame Settings](frame-settings.md) | Change HDRP camera and reflection settings. | -| [Expose all additional properties](expose-all-additional-properties.md) | Show additional properties in a component so you can fine-tune the behavior of the component. | diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/convert-from-built-in-convert-lighting-and-shadows.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/convert-from-built-in-convert-lighting-and-shadows.md index 3ffb6891bdb..60632b4024c 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/convert-from-built-in-convert-lighting-and-shadows.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/convert-from-built-in-convert-lighting-and-shadows.md @@ -53,7 +53,7 @@ To set up lighting in your HDRP Project: 1. In the Hierarchy, select a Spot Light and view the Light component in the Inspector. 2. Go to **Emission** and set **Intensity** to 17000 **Lumen** to represent two 8500 Lumen light bulbs. - 3. In the **Emission**, select the More menu (⋮) and enable [additional properties](expose-all-additional-properties.md). + 3. In the **Emission**, select the More menu (⋮) and enable [additional properties](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@17.2/manual/advanced-properties.html). 4. Enable **Reflector** checkbox. This simulates a reflective surface behind the spot Light to adjust the visual intensity. 9. Make the light bulb Material emissive: diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/create-local-foam-in-the-wake-of-a-gameobject.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/create-local-foam-in-the-wake-of-a-gameobject.md index 4e576ac3b99..00c46ce38b1 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/create-local-foam-in-the-wake-of-a-gameobject.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/create-local-foam-in-the-wake-of-a-gameobject.md @@ -2,11 +2,11 @@ To create foam on a water surface near a GameObject, follow these steps: -1. In the **Hierarchy** window, open the context menu (right-click) and select **Water > Surface**, then create a water surface. +1. In the **Hierarchy** window, open the context menu (right-click) and select **Water** > **Surface**, then create a water surface. -1. In the **Inspector** window of the water surface, in the **Water decals** section, enable **Foam**. +1. In the **Inspector** window of the water surface, in the **Water Decals** section, enable **Foam**. -1. In the **Hierarchy** window, right-click a GameObject and select **Water > Surface > Water decal**. +1. In the **Hierarchy** window, right-click a GameObject and select **Water** > **Surface** > **Water Decal**. The new water decal is now a child of the GameObject. diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/custom-post-processing-scripts.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/custom-post-processing-scripts.md index c8debeed51c..ce0187a311b 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/custom-post-processing-scripts.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/custom-post-processing-scripts.md @@ -229,4 +229,4 @@ sealed class GrayScaleEditor : VolumeComponentEditor } ``` -This custom editor isn't useful as it produces the same result as the editor that Unity creates. Custom Volume component editors also support an [additonal properties toggle](expose-all-additional-properties.md). To add it, you have to set the `hasAdvancedMode` override to true. Then, inside `OnInspectorGUI`, you can use the `isInAdvancedMode` Boolean to display more properties. +This custom editor isn't useful as it produces the same result as the editor that Unity creates. Custom Volume component editors also support an [additonal properties toggle](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@17.2/manual/advanced-properties.html). To add it, you have to set the `hasAdvancedMode` override to true. Then, inside `OnInspectorGUI`, you can use the `isInAdvancedMode` Boolean to display more properties. diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/enable-mask-and-current-water-decals.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/enable-mask-and-current-water-decals.md index 0a0ddea964b..e22a6bba07e 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/enable-mask-and-current-water-decals.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/enable-mask-and-current-water-decals.md @@ -2,6 +2,6 @@ To enable mask and current water decals, follow these steps: -1. Go to **Edit** > **Project Settings**. +1. In the main menu, go to **Edit** > **Project Settings**. -1. In the **Project Settings** window, select the **Graphics** tab and enable **Enable Mask and Current Water Decals** in the **Water System** section. +1. In the **Project Settings** window, go to **Graphics**, and enable **Enable Mask and Current Water Decals** in the **Water System** section. diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/reference-light-component.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/reference-light-component.md index 099d5adb25b..2c910a93af0 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/reference-light-component.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/reference-light-component.md @@ -127,7 +127,7 @@ These settings define the emissive behavior of your Light. You can set the Light | **Affect Diffuse** | Enable the checkbox to apply [diffuse]() lighting to this Light.
This property only appears when you enable [advanced properties](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@latest?subfolder=/manual/advanced-properties.html) for this section. It's only available in Realtime or Mixed light **Mode**. | | **Affect Specular** | Enable the checkbox to apply [specular](https://docs.unity3d.com/Manual/shader-NormalSpecular.html) lighting to this Light.
This property only appears when you enable [advanced properties](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@latest?subfolder=/manual/advanced-properties.html)for this section. It's only available in Realtime or Mixed light **Mode**. | | **Range Attenuation** | Enable the checkbox to make this Light shine uniformly across its range. This stops light from fading around the edges. This setting is useful when the range limit isn't visible on screen, and you don't want the edges of your light to fade out. This property is available for all **Light Types** except **Directional**.
This property only appears when you enable [advanced properties](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@latest?subfolder=/manual/advanced-properties.html) for this section. It's only available in Realtime or Mixed light **Mode** for **Type** Area. | -| **Fade Distance** | The distance between the Light source and the Camera at which the Light begins to fade out. Measured in meters. This property is available for all **Light Types** except **Directional**.
This property only appears when you enable [additional properties](expose-all-additional-properties.md) for this section. It's only available in Realtime or Mixed light **Mode**. | +| **Fade Distance** | The distance between the Light source and the Camera at which the Light begins to fade out. Measured in meters. This property is available for all **Light Types** except **Directional**.
This property only appears when you enable [additional properties](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@17.2/manual/advanced-properties.html) for this section. It's only available in Realtime or Mixed light **Mode**. | | **Intensity Multiplier** | A multiplier that gets applied to the intensity of the Light. Doesn't affect the intensity value, but only gets applied during the evaluation of the lighting. You can also modify this property via [Timeline](https://docs.unity3d.com/Manual/TimelineSection.html), Scripting or [animation](https://docs.unity3d.com/Manual/animeditor-AnimatingAGameObject.html). The parameter lets you fade the Light in and out without having to store its original intensity.
This property does not affect the [Physically Based Sky](physically-based-sky-volume-override-reference.html) rendering for the main directionnal light.
This property only appears when you enable [advanced properties](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@latest?subfolder=/manual/advanced-properties.html) for this section. It's only available in Realtime or Mixed light **Mode**. | | **Display Emissive Mesh** | Enable the checkbox to make Unity automatically generate a Mesh with an emissive Material using the size, color, and intensity of this Light. Unity automatically adds the Mesh and Material to the GameObject the Light component is attached to. This property is available for **Rectangle** and **Tube** Lights.
This property only appears when you enable [advanced properties](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@latest?subfolder=/manual/advanced-properties.html) for this section. (In case of an IES profile and a cookie used at the same time, only the cookie will be displayed). | | **Include For Ray Tracing** | Enable the checkbox to make this Light active when you enable the **Ray Tracing** [Frame Setting](Frame-Settings.md) on the Camera. This applies to rasterization and [ray tracing](Ray-Tracing-Getting-Started.md) passes.
This property only appears when you enable [advanced properties](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@latest?subfolder=/manual/advanced-properties.html) for this section. It's only available in Realtime or Mixed light **Mode**. | @@ -191,13 +191,13 @@ This section is only available in Realtime or Mixed light **Mode**. | **Shadow Angle** | Use the slider to set a custom angle to use for shadow map rendering.
This property only appears if you enable **Custom Spot Angle** and enable [advanced properties](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@latest?subfolder=/manual/advanced-properties.html) for this section. | | **Shadow Cone** | Use the slider to set the aperture of the shadow cone this area Light uses for shadowing. This property only appears if you select **Rectangle** from the **Type** drop-down. | | **EVSM Exponent** | Use the slider to set the exponent this area Light uses for depth warping. [EVSM](Glossary.md#ExponentialVarianceShadowMap) modifies its shadow distribution representation by this exponent. Increase this value to reduce light leaking and change the appearance of the shadow. This property only appears if you select **Rectangle** from the **Type** drop-down and enable [advanced properties](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@latest?subfolder=/manual/advanced-properties.html) for this section. | -| **Light Leak Bias** | Use this slider to set the bias that HDRP uses to prevent light leaking through Scene geometry. Increasing this value prevents light leaks, but removes some of the shadow softness. This property only appears if you select **Rectangle** from the **Type** drop-down and enable [additional properties](expose-all-additional-properties.md) for this section. | +| **Light Leak Bias** | Use this slider to set the bias that HDRP uses to prevent light leaking through Scene geometry. Increasing this value prevents light leaks, but removes some of the shadow softness. This property only appears if you select **Rectangle** from the **Type** drop-down and enable [additional properties](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@17.2/manual/advanced-properties.html) for this section. | | **Variance Bias** | Use the slider to fix numerical accuracy issues in the [EVSM](Glossary.md#ExponentialVarianceShadowMap). This property only appears if you select **Rectangle** from the **Type** drop-down and enable [advanced properties](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@latest?subfolder=/manual/advanced-properties.html) for this section. | | **Blur Passes** | Use the slider to set the number of blur passes HDRP performs on this shadow map. Increasing this value softens shadows, but impacts performance. This property only appears if you select **Rectangle** from the **Type** drop-down and enable [advanced properties](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@latest?subfolder=/manual/advanced-properties.html) for this section. | | **Dimmer** | Dims the shadows this Light casts so they become more faded and transparent.
This property only appears when you enable [advanced properties](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@latest?subfolder=/manual/advanced-properties.html) for this section. | | **Tint** | Specifies whether HDRP should tint the shadows this Light casts. This option affects dynamic shadows, [Contact Shadows](Override-Contact-Shadows.md), and [ShadowMask](Lighting-Mode-Shadowmask.md). It doesn't affect baked shadows. You can use this behavior to change the color and transparency of shadows.
This property only appears when you enable [advanced properties](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@latest?subfolder=/manual/advanced-properties.html) for this section. | | **Penumbra Tint** | Specifies whether the tint should only affect the shadow's penumbra. If you enable this property, HDRP only applies the color tint to the shadow's penumbra. If you disable this property, HDRP applies the color tint to the entire shadow including the penumbra. To change the color HDRP tints the shadow to, see the above **Tint** property.
This property only appears when you enable [advanced properties](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@latest?subfolder=/manual/advanced-properties.html)for this section. | -| **Fade Distance** | The distance, in meters, between the Camera and the Light at which shadows fade out. This property is available for **Spot** and **Point** Lights.
This property only appears when you enable [additional properties](expose-all-additional-properties.md) for this section. | +| **Fade Distance** | The distance, in meters, between the Camera and the Light at which shadows fade out. This property is available for **Spot** and **Point** Lights.
This property only appears when you enable [additional properties](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@17.2/manual/advanced-properties.html) for this section. | | **Custom Shadow Layers** | Enable the checkbox to use a different [Rendering Layer Mask](Rendering-Layers.md) for shadows than the one used for lighting. If you enable this feature, then HDRP uses the **Shadow Layers** drop-down in this section for shadowing. If you disable it, then HDRP uses the **Rendering Layer Mask** drop-down in the **General** section for shadowing.
This property only appears when you enable [advanced properties](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@latest?subfolder=/manual/advanced-properties.html) for this section. To access this property, enable **Light Layers** in your [HDRP Asset](HDRP-Asset.md). | | **Shadow Layers** | Use the drop-down to set the [Rendering Layer Mask](Rendering-Layers.md) HDRP uses for shadowing. This Light therefore only casts shadows for GameObjects that use a matching Rendering Layer. For more information about using Rendering Layers for shadowing, see [Shadow Light Layers](Rendering-Layers.md#ShadowLightLayers).
This property only appears when you enable [advanced properties](https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@latest?subfolder=/manual/advanced-properties.html) for this section. To access this property, enable the **Custom Shadow Layers** checkbox. | diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/simulating-currents-with-water-decals.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/simulating-currents-with-water-decals.md index e3c314e2fd5..d08264eb659 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/simulating-currents-with-water-decals.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/simulating-currents-with-water-decals.md @@ -11,11 +11,13 @@ By default, water decal regions are anchored to the camera. You can also anchor ## Create a water decal -1. In the main menu, select **GameObject** > **Water** > **Water Decal**. +1. In the main menu, go to **GameObject** > **Water** > **Water Decal**. Unity adds a **Water Decal** GameObject to your scene. -2. Move the **Water Decal** GameObject to the area of water you want to affect. -3. To add deformation, foam, or current effects to the water decal shader graph, select the **Water Decal** GameObject, then under **Water Decal (Material)** select **Edit...**. + +1. Move the **Water Decal** GameObject to the area of water you want to affect. + +1. To add deformation, foam, or current effects to the water decal shader graph, in the **Inspector** window of the **Water Decal**, go to **Water Decal (Script)**, then select **Edit** in the **Water Decal (Material)** section. By default, the water decal shader graph Master Stack contains the following properties: @@ -31,18 +33,3 @@ Once you have [enabled water mask and current water decals](enable-mask-and-curr - **LargeCurrentInfluence** - **RipplesCurrent** - **RipplesCurrentInfluence** - -## Enable horizontal deformation - -To enable horizontal deformation, go to the active [HDRP Asset](hdrp-asset.md), then under **Rendering** > **Water** enable **Horizontal Deformation**. - -Enabling horizontal deformation has the following effects: - -- You can add a new **HorizontalDeformation** feature in the Graph Inspector of a water decal shader graph. -- HDRP creates a new buffer, which increases the amount of memory HDRP uses. -- The results of water scripts and [underwater effects](water-underwater-view.md) and [script interactions](float-objects-on-a-water-surface.md)might be less accurate. - -## Additional resources - -- The **RollingWave** scene in the [Water package samples](HDRP-Sample-Content.md#water-samples). -- [Shader Graph](https://docs.unity3d.com/Packages/com.unity.shadergraph@latest) diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/water-deform-a-water-surface.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/water-deform-a-water-surface.md index 1460f36fc34..a1205d22b91 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/water-deform-a-water-surface.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/water-deform-a-water-surface.md @@ -1,14 +1,16 @@ -# Deform a water surface vertically +# Deform a water surface You can use water decals to achieve deformation effects on the water surface. Water decals use textures and Shader Graph materials to modify the water's appearance dynamically. ![A swimming pool with a deformed water surface.](Images/watersystem-deformer.png) +## Deform a water surface vertically + To deform a water surface vertically: 1. Create a [water surface](water-use-the-water-system-in-your-project.md). -1. In the **Inspector** window of the water surface, under **Water Decals**, enable **Deformation**. +1. In the **Inspector** window of the water surface, go to **Water Surface (Script)** > **Water decals**, and enable **Deformation**. To add a deformation only, disable **Foam**. @@ -28,6 +30,39 @@ To deform a water surface vertically: 1. In the **Inspector** window of the **Water Decal**, select **Edit** next to the water decal shader graph, then edit the shader graph as needed. +For example, connect the following gradient texture with your deformation pattern with the Deformation fragment. + +![Water decal shader graph: Vertical deformation.](Images/new-empty-water-decal.png) + +This results in the following deformation along the Y-axis: + +![Water surface deformed vertically](Images/water-deform-a-water-surface-y-axis.jpg) + +## Deform a water surface horizontally + +Enabling horizontal deformation has the following effects: + +- HDRP creates a new buffer, which increases the amount of memory HDRP uses. +- The results of water scripts, [underwater effects](water-underwater-view.md), and [script interactions](float-objects-on-a-water-surface.md) might be less accurate. + +Follow these steps: + +1. In the main menu, go to **Edit** > **Project Settings**. +1. In the **Project Settings** window, go to **Quality** > **HDRP** > **Rendering** > **Water**, then enable **Horizontal Deformation**. + +1. If the **Fragment** context doesn't contain a **Horizontal Deformation** block, right-click the **Fragment** context and select **Add Block Node** > **Horizontal Deformation**. +1. Connect a gradient texture to the **Horizontal Deformation** block. HDRP uses the yellow and blue channels of the texture to deform the x-axis and z-axis of the water surface. + + For example, connect the red channel of the default HDRP **Default-Particle** texture to both the x-axis and z-axis: + + ![Water decal shader graph example: A deformation along the x-axis and z-axis, built on top of existing vertical deformation.](Images/water-surface-3d-deformation.png) + + This results in deformation along the x-axis and z-axis, built on top of existing vertical deformation. + + ![Water surface deformed in 3D](Images/water-deform-a-water-surface-x-axis.jpg) + +You can also view an advanced example of how to apply a 3D deformation to a water surface in the rolling wave [water sample](HDRP-Sample-Content.md). + ## Configure the Deformer and Foam Water Decal template The properties used in the water decal material **Inspector** window change based on the type you select. @@ -82,8 +117,11 @@ These properties are specific to the Texture deformer type. | **Property** | **Description** | |-----------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | **Range Remap** | Specifies the range of the deformer in the [-1, 1] interval. The input texture values will be remapped from [0,1] to the specified range. | -| **Texture** | The texture used by the deformer. This is a single channel texture that contains the amplitude of the deformation relative to the deformer’s amplitude.
This texture can be a regular texture or a Render Texture, which can be updated at runtime by modifying a render target with a compute shader for example. For a Render Texture, use the R16_UNorm format . | +| **Texture** | The texture used by the deformer. This is a single channel texture that contains the amplitude of the deformation relative to the deformer’s amplitude.
This texture can be a regular texture or a Render Texture, which can be updated at runtime by modifying a render target with a compute shader for example. For a Render Texture, use the R16_UNorm format. | + ## Additional resources -[Materials and surfaces](materials-and-surfaces.md) +- [Materials and surfaces](materials-and-surfaces.md) +- [Shader Graph](https://docs.unity3d.com/Packages/com.unity.shadergraph@17.2) + diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/water.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/water.md index 990275855b5..3e09d00294e 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/water.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/water.md @@ -14,7 +14,7 @@ Create water in the High Definition Render Pipeline (HDRP). | [Foam in the water system](water-foam-in-the-water-system.md) | Control how much foam appears on your water surface. | | [Customize caustics in the water system](water-caustics-in-the-water-system.md) | Customize the appearance of the bright light patterns caused by the curved water surface reflecting and refracting light. | | [Create a current in the water system](water-create-a-current-in-the-water-system.md) | Apply a current map to a water surface. | -| [Deform a water surface](water-deform-a-water-surface.md) | Use a deformer to control the shape of a water surface | +| [Deform a water surface](water-deform-a-water-surface.md) | Use a water decal to alter the shape of a water surface. | | [Exclude part of a water surface](water-exclude-part-of-the-water-surface.md) | Prevent water from appearing on top of other surfaces. | | [Underwater view](water-underwater-view.md) | Learn more about the underwater view of the water surface simulation. | | [Materials in the water system](water-materials-in-the-water-system.md) | The effects of water Material properties. | diff --git a/Packages/com.unity.render-pipelines.high-definition/Editor/Lighting/Reflection/HDProbeUI.Skin.cs b/Packages/com.unity.render-pipelines.high-definition/Editor/Lighting/Reflection/HDProbeUI.Skin.cs index 0adcc91fbca..6efdb7cb423 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Editor/Lighting/Reflection/HDProbeUI.Skin.cs +++ b/Packages/com.unity.render-pipelines.high-definition/Editor/Lighting/Reflection/HDProbeUI.Skin.cs @@ -28,10 +28,10 @@ static partial class HDProbeUI static readonly Dictionary k_ToolbarContents = new Dictionary { - { ToolBar.InfluenceShape, EditorGUIUtility.TrIconContent("EditCollider", "Modify the base shape.") }, - { ToolBar.Blend, EditorGUIUtility.TrIconContent("PreMatCube", "Modify the influence volume.") }, - { ToolBar.NormalBlend, EditorGUIUtility.TrIconContent("SceneViewOrtho", "Modify the influence normal volume.") }, - { ToolBar.CapturePosition, EditorGUIUtility.TrIconContent("MoveTool", "Change the capture position.") }, + { ToolBar.InfluenceShape, EditorGUIUtility.TrIconContent("EditShape", "Modify the base shape.") }, + { ToolBar.Blend, EditorGUIUtility.TrIconContent("BlendDistance", "Modify the influence volume blend distance.") }, + { ToolBar.NormalBlend, EditorGUIUtility.TrIconContent("NormalBlendDistance", "Modify the influence volume normal blend distance.") }, + { ToolBar.CapturePosition, EditorGUIUtility.TrIconContent("CapturePosition", "Change the capture position.") }, { ToolBar.MirrorPosition, EditorGUIUtility.TrIconContent("MoveTool", "Change the mirror position.") }, { ToolBar.MirrorRotation, EditorGUIUtility.TrIconContent("RotateTool", "Change the mirror rotation.") }, { ToolBar.ShowChromeGizmo, EditorGUIUtility.TrIconContent(IconReflectionProbeGizmoId, "Display the chrome gizmo.") }, diff --git a/Packages/com.unity.render-pipelines.high-definition/Runtime/Lighting/Reflection/HDProbe.cs b/Packages/com.unity.render-pipelines.high-definition/Runtime/Lighting/Reflection/HDProbe.cs index 26a60be678f..32f91cb6f18 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Runtime/Lighting/Reflection/HDProbe.cs +++ b/Packages/com.unity.render-pipelines.high-definition/Runtime/Lighting/Reflection/HDProbe.cs @@ -791,7 +791,9 @@ public virtual void PrepareCulling() { } internal void TryUpdateLuminanceSHL2ForNormalization() { #if UNITY_EDITOR - m_HasValidSHForNormalization = AdditionalGIBakeRequestsManager.instance.RetrieveProbeSH(GetInstanceID(), out m_SHForNormalization, out m_SHValidForCapturePosition); + const float kValidSHThresh = 0.33f; // This threshold is used to make the code below functionally equivalent to the obsolete RetrieveProbeSH. + m_HasValidSHForNormalization = AdditionalGIBakeRequestsManager.instance.RetrieveProbe(GetEntityId(), out m_SHValidForCapturePosition, out m_SHForNormalization, out float validity); + m_HasValidSHForNormalization = m_HasValidSHForNormalization && validity < kValidSHThresh; if (m_HasValidSHForNormalization) m_SHValidForSourcePosition = transform.position; #endif diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/ForwardLights.cs b/Packages/com.unity.render-pipelines.universal/Runtime/ForwardLights.cs index 4f8414215bb..0e22a0518d4 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/ForwardLights.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/ForwardLights.cs @@ -513,11 +513,12 @@ internal void SetupLights(UnsafeCommandBuffer cmd, UniversalRenderingData render cmd.SetKeyword(ShaderGlobalKeywords.ReflectionProbeAtlas, lightData.reflectionProbeAtlas); var asset = UniversalRenderPipeline.asset; - #if UNITY_WEBGL && !UNITY_EDITOR - bool apvIsEnabled = false; // APV not supported on WebGL, don't try to enable it. - #else + bool apvIsEnabled = asset != null && asset.lightProbeSystem == LightProbeSystem.ProbeVolumes; + #if UNITY_WEBGL && !UNITY_EDITOR + apvIsEnabled &= SystemInfo.graphicsDeviceType == GraphicsDeviceType.WebGPU; // APV not supported on WebGL, don't try to enable it. WebGPU is fine, though. #endif + ProbeVolumeSHBands probeVolumeSHBands = asset.probeVolumeSHBands; cmd.SetKeyword(ShaderGlobalKeywords.ProbeVolumeL1, apvIsEnabled && probeVolumeSHBands == ProbeVolumeSHBands.SphericalHarmonicsL1); diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Passes/AdditionalLightsShadowCasterPass.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Passes/AdditionalLightsShadowCasterPass.cs index 332c5c7fb5d..b3e4b6e9e5e 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Passes/AdditionalLightsShadowCasterPass.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Passes/AdditionalLightsShadowCasterPass.cs @@ -17,6 +17,7 @@ public partial class AdditionalLightsShadowCasterPass : ScriptableRenderPass private int renderTargetWidth; private int renderTargetHeight; private bool m_CreateEmptyShadowmap; + private bool m_SetKeywordForEmptyShadowmap; private bool m_EmptyShadowmapNeedsClear; private bool m_IssuedMessageAboutShadowSlicesTooMany; private bool m_IssuedMessageAboutShadowMapsRescale; @@ -74,6 +75,7 @@ private class PassData { internal int shadowmapID; internal bool emptyShadowmap; + internal bool setKeywordForEmptyShadowmap; internal bool useStructuredBuffer; internal bool stripShadowsOffVariants; internal Matrix4x4 viewMatrix; @@ -338,11 +340,19 @@ public bool Setup(UniversalRenderingData renderingData, UniversalCameraData came { using var profScope = new ProfilingScope(m_ProfilingSetupSampler); - if (!shadowData.additionalLightShadowsEnabled) + bool shadowsEnabled = shadowData.additionalLightShadowsEnabled; + if (!shadowsEnabled) + { + // If (realtime) shadows are disabled, but any additional light casts baked shadows, we need to do empty rendering to setup the _MainLightShadowParams uniform, + // which is also used when sampling baked shadows. This allows for using baked shadows even when realtime shadows are completely disabled. + if (AnyAdditionalLightHasMixedShadows(lightData)) + return SetupForEmptyRendering(cameraData.renderer.stripShadowsOffVariants, shadowsEnabled, lightData, shadowData); + return false; + } if (!shadowData.supportsAdditionalLightShadows) - return SetupForEmptyRendering(cameraData.renderer.stripShadowsOffVariants, lightData, shadowData); + return SetupForEmptyRendering(cameraData.renderer.stripShadowsOffVariants, shadowsEnabled, lightData, shadowData); Clear(); @@ -564,7 +574,7 @@ public bool Setup(UniversalRenderingData renderingData, UniversalCameraData came // Lights that need to be rendered in the shadow map atlas if (validShadowCastingLightsCount == 0) - return SetupForEmptyRendering(cameraData.renderer.stripShadowsOffVariants, lightData, shadowData); + return SetupForEmptyRendering(cameraData.renderer.stripShadowsOffVariants, shadowsEnabled, lightData, shadowData); int shadowCastingLightsBufferCount = m_ShadowSliceToAdditionalLightIndex.Count; @@ -635,7 +645,29 @@ private void UpdateTextureDescriptorIfNeeded() } } - bool SetupForEmptyRendering(bool stripShadowsOffVariants, UniversalLightData lightData, UniversalShadowData shadowData) + bool AnyAdditionalLightHasMixedShadows(UniversalLightData lightData) + { + for (int visibleLightIndex = 0; visibleLightIndex < lightData.visibleLights.Length; ++visibleLightIndex) + { + if (visibleLightIndex == lightData.mainLightIndex) + { + continue; + } + + Light light = lightData.visibleLights[visibleLightIndex].light; + if (light.shadows != LightShadows.None && + light.bakingOutput.isBaked && + light.bakingOutput.mixedLightingMode != MixedLightingMode.IndirectOnly && + light.bakingOutput.lightmapBakeType == LightmapBakeType.Mixed) + { + return true; + } + } + + return false; + } + + bool SetupForEmptyRendering(bool stripShadowsOffVariants, bool shadowsEnabled, UniversalLightData lightData, UniversalShadowData shadowData) { if (!stripShadowsOffVariants) return false; @@ -644,6 +676,8 @@ bool SetupForEmptyRendering(bool stripShadowsOffVariants, UniversalLightData lig m_CreateEmptyShadowmap = true; useNativeRenderPass = false; + m_SetKeywordForEmptyShadowmap = shadowsEnabled; + // Even though there are not real-time shadows, the lights might be using shadowmasks, // which is why we need to update the shadow parameters, for example so shadow strength can be used. @@ -740,7 +774,8 @@ public override void Execute(ScriptableRenderContext context, ref RenderingData RasterCommandBuffer rasterCommandBuffer = CommandBufferHelpers.GetRasterCommandBuffer(renderingData.commandBuffer); if (m_CreateEmptyShadowmap) { - rasterCommandBuffer.EnableKeyword(ShaderGlobalKeywords.AdditionalLightShadows); + if (m_SetKeywordForEmptyShadowmap) + rasterCommandBuffer.EnableKeyword(ShaderGlobalKeywords.AdditionalLightShadows); SetShadowParamsForEmptyShadowmap(rasterCommandBuffer); universalRenderingData.commandBuffer.SetGlobalTexture(AdditionalShadowsConstantBuffer._AdditionalLightsShadowmapID, m_EmptyAdditionalLightShadowmapTexture); return; @@ -922,6 +957,7 @@ private void InitPassData(ref PassData passData, UniversalCameraData cameraData, passData.stripShadowsOffVariants = cameraData.renderer.stripShadowsOffVariants; passData.emptyShadowmap = m_CreateEmptyShadowmap; + passData.setKeywordForEmptyShadowmap = m_SetKeywordForEmptyShadowmap; passData.useStructuredBuffer = m_UseStructuredBuffer; } @@ -991,7 +1027,8 @@ internal TextureHandle Render(RenderGraph graph, ContextContainer frameData) } else { - rasterCommandBuffer.EnableKeyword(ShaderGlobalKeywords.AdditionalLightShadows); + if (data.setKeywordForEmptyShadowmap) + rasterCommandBuffer.EnableKeyword(ShaderGlobalKeywords.AdditionalLightShadows); SetShadowParamsForEmptyShadowmap(rasterCommandBuffer); } }); diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Passes/MainLightShadowCasterPass.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Passes/MainLightShadowCasterPass.cs index 3ee18b31856..9af7fcb6246 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Passes/MainLightShadowCasterPass.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Passes/MainLightShadowCasterPass.cs @@ -16,6 +16,7 @@ public class MainLightShadowCasterPass : ScriptableRenderPass private int renderTargetHeight; private int m_ShadowCasterCascadesCount; private bool m_CreateEmptyShadowmap; + private bool m_SetKeywordForEmptyShadowmap; private bool m_EmptyShadowmapNeedsClear; private float m_CascadeBorder; private float m_MaxShadowDistanceSq; @@ -55,6 +56,7 @@ private static class MainLightShadowConstantBuffer private class PassData { internal bool emptyShadowmap; + internal bool setKeywordForEmptyShadowmap; internal UniversalRenderingData renderingData; internal UniversalCameraData cameraData; internal UniversalLightData lightData; @@ -119,8 +121,8 @@ public bool Setup(ref RenderingData renderingData) /// public bool Setup(UniversalRenderingData renderingData, UniversalCameraData cameraData, UniversalLightData lightData, UniversalShadowData shadowData) { - if (!shadowData.mainLightShadowsEnabled) - return false; + bool shadowsEnabled = shadowData.mainLightShadowsEnabled; + bool shadowsSupported = shadowData.supportsMainLightShadows; #if UNITY_EDITOR if (CoreUtils.IsSceneLightingDisabled(cameraData.camera)) @@ -130,18 +132,39 @@ public bool Setup(UniversalRenderingData renderingData, UniversalCameraData came using var profScope = new ProfilingScope(m_ProfilingSetupSampler); bool stripShadowsOffVariants = cameraData.renderer.stripShadowsOffVariants; - if (!shadowData.supportsMainLightShadows) - return SetupForEmptyRendering(stripShadowsOffVariants, null, cameraData, shadowData); Clear(); int shadowLightIndex = lightData.mainLightIndex; if (shadowLightIndex == -1) - return SetupForEmptyRendering(stripShadowsOffVariants, null, cameraData, shadowData); + { + if (shadowsEnabled) + return SetupForEmptyRendering(stripShadowsOffVariants, shadowsEnabled, null, cameraData, shadowData); + else + return false; + } VisibleLight shadowLight = lightData.visibleLights[shadowLightIndex]; Light light = shadowLight.light; - if (light.shadows == LightShadows.None) - return SetupForEmptyRendering(stripShadowsOffVariants, light, cameraData, shadowData); + if (shadowsSupported && light.shadows == LightShadows.None) + return SetupForEmptyRendering(stripShadowsOffVariants, shadowsEnabled, light, cameraData, shadowData); + + if (!shadowsEnabled) + { + // If (realtime) shadows are disabled, but the light casts baked shadows, we need to do empty rendering to setup the _MainLightShadowParams uniform, + // which is also used when sampling baked shadows. This allows for using baked shadows even when realtime shadows are completely disabled. + if (light.shadows != LightShadows.None && + light.bakingOutput.isBaked && + light.bakingOutput.mixedLightingMode != MixedLightingMode.IndirectOnly && + light.bakingOutput.lightmapBakeType == LightmapBakeType.Mixed) + { + return SetupForEmptyRendering(stripShadowsOffVariants, shadowsEnabled, light, cameraData, shadowData); + } + + return false; + } + + if (!shadowsSupported) + return SetupForEmptyRendering(stripShadowsOffVariants, shadowsEnabled, null, cameraData, shadowData); if (shadowLight.lightType != LightType.Directional) { @@ -149,7 +172,7 @@ public bool Setup(UniversalRenderingData renderingData, UniversalCameraData came } if (!renderingData.cullResults.GetShadowCasterBounds(shadowLightIndex, out Bounds _)) - return SetupForEmptyRendering(stripShadowsOffVariants, light, cameraData, shadowData); + return SetupForEmptyRendering(stripShadowsOffVariants, shadowsEnabled, light, cameraData, shadowData); m_ShadowCasterCascadesCount = shadowData.mainLightShadowCascadesCount; renderTargetWidth = shadowData.mainLightRenderTargetWidth; @@ -164,7 +187,7 @@ public bool Setup(UniversalRenderingData renderingData, UniversalCameraData came m_CascadeSlices[cascadeIndex] = sliceData; if (!shadowCullingInfos.IsSliceValid(cascadeIndex)) - return SetupForEmptyRendering(stripShadowsOffVariants, light, cameraData, shadowData); + return SetupForEmptyRendering(stripShadowsOffVariants, shadowsEnabled, light, cameraData, shadowData); } UpdateTextureDescriptorIfNeeded(); @@ -188,7 +211,7 @@ private void UpdateTextureDescriptorIfNeeded() } } - bool SetupForEmptyRendering(bool stripShadowsOffVariants, Light light, UniversalCameraData cameraData, UniversalShadowData shadowData) + bool SetupForEmptyRendering(bool stripShadowsOffVariants, bool shadowsEnabled, Light light, UniversalCameraData cameraData, UniversalShadowData shadowData) { if (!stripShadowsOffVariants) return false; @@ -196,6 +219,8 @@ bool SetupForEmptyRendering(bool stripShadowsOffVariants, Light light, Universal m_CreateEmptyShadowmap = true; useNativeRenderPass = false; + m_SetKeywordForEmptyShadowmap = shadowsEnabled; + // Even though there are not real-time shadows, the light might be using shadowmasks, // which is why we need to update the shadow parameters, for example so shadow strength can be used. @@ -261,7 +286,8 @@ public override void Execute(ScriptableRenderContext context, ref RenderingData RasterCommandBuffer rasterCommandBuffer = CommandBufferHelpers.GetRasterCommandBuffer(renderingData.commandBuffer); if (m_CreateEmptyShadowmap) { - rasterCommandBuffer.EnableKeyword(ShaderGlobalKeywords.MainLightShadows); + if (m_SetKeywordForEmptyShadowmap) + rasterCommandBuffer.EnableKeyword(ShaderGlobalKeywords.MainLightShadows); SetShadowParamsForEmptyShadowmap(rasterCommandBuffer); universalRenderingData.commandBuffer.SetGlobalTexture(MainLightShadowConstantBuffer._MainLightShadowmapID, m_EmptyMainLightShadowmapTexture.nameID); return; @@ -404,6 +430,7 @@ private void InitPassData( { passData.pass = this; passData.emptyShadowmap = m_CreateEmptyShadowmap; + passData.setKeywordForEmptyShadowmap = m_SetKeywordForEmptyShadowmap; passData.renderingData = renderingData; passData.cameraData = cameraData; passData.lightData = lightData; @@ -472,7 +499,8 @@ internal TextureHandle Render(RenderGraph graph, ContextContainer frameData) } else { - rasterCommandBuffer.EnableKeyword(ShaderGlobalKeywords.MainLightShadows); + if (data.setKeywordForEmptyShadowmap) + rasterCommandBuffer.EnableKeyword(ShaderGlobalKeywords.MainLightShadows); SetShadowParamsForEmptyShadowmap(rasterCommandBuffer); } }); diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Passes/PostProcessPassRenderGraph.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Passes/PostProcessPassRenderGraph.cs index d102ffcda28..f10b66c4a6f 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Passes/PostProcessPassRenderGraph.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Passes/PostProcessPassRenderGraph.cs @@ -1418,6 +1418,7 @@ public void RenderFinalSetup(RenderGraph renderGraph, UniversalCameraData camera using (var builder = renderGraph.AddRasterRenderPass("Postprocessing Final Setup Pass", out var passData, ProfilingSampler.Get(URPProfileId.RG_FinalSetup))) { Material material = m_Materials.scalingSetup; + material.shaderKeywords = null; if (settings.isFxaaEnabled) material.EnableKeyword(ShaderKeywordStrings.Fxaa); diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-CollideWithSignedDistanceField.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-CollideWithSignedDistanceField.md index 0ad536c940b..f20e9fb54de 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-CollideWithSignedDistanceField.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-CollideWithSignedDistanceField.md @@ -1,8 +1,8 @@ -# Collide with Signed Distance Field +# Collision Shape Signed Distance Field -Menu Path : **Collision > Collide with Signed Distance Field** +Menu Path : **Collision > Collision Shape Signed Distance Field** -The **Collide with Signed Distance Field** Block allows you to create more complex collisions by using an SDF (signed distance field) Asset to represent the shape of the object. This is useful for precise complex collision with predetermined Assets. +The **Collision Shape Signed Distance Field** Block allows you to create more complex collisions by using an SDF (signed distance field) Asset to represent the shape of the object. This is useful for precise complex collision with predetermined Assets. ![](Images/Block-CollideWithSDFMain.png) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-ConformToSignedDistanceField.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-ConformToSignedDistanceField.md index 4b513ccbe7b..d7233c40124 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-ConformToSignedDistanceField.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-ConformToSignedDistanceField.md @@ -1,8 +1,8 @@ -# Conform to Signed Distance Field +# Attractor Shape Signed Distance Field -Menu Path : **Force > Conform to Signed Distance Field** +Menu Path : **Force > Attractor Shape Signed Distance Field** -The **Conform to Signed Distance Field** Block attracts particles towards a defined distance field. This is useful for pulling particles towards a specific shape which cannot be easily defined via other force Blocks, and it works best when you use it alongside other forces. +The **Attractor Shape Signed Distance Field** Block attracts particles towards a defined distance field. This is useful for pulling particles towards a specific shape which cannot be easily defined via other force Blocks, and it works best when you use it alongside other forces. ![](Images/Block-ConformToSDFExample.gif) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-ConformToSphere.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-ConformToSphere.md index 89613644c8d..8e5a3299b7b 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-ConformToSphere.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-ConformToSphere.md @@ -1,8 +1,8 @@ -# Conform to Sphere +# Attractor Shape Sphere -Menu Path : **Force > Conform to Sphere** +Menu Path : **Force > Attractor Shape Sphere** -The **Conform to Sphere** Block attracts particles towards a defined sphere. This is useful for a range of cases, such as simulating a “charging” energy effect, and works best when you use it alongside other forces. +The **Attractor Shape Sphere** Block attracts particles towards a defined sphere. This is useful for a range of cases, such as simulating a “charging” energy effect, and works best when you use it alongside other forces. This Operator doesn't support spheres that have scale axis of different lengths (ellipsoids). If you use an ellipsoid as an input, this Operator uses its longest axis to define the sphere. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/TableOfContents.md b/Packages/com.unity.visualeffectgraph/Documentation~/TableOfContents.md index 065469d6cfb..9de4696388b 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/TableOfContents.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/TableOfContents.md @@ -89,13 +89,13 @@ * [Collide with Cone](Block-CollideWithCone.md) * [Collide with Depth Buffer](Block-CollideWithDepthBuffer.md) * [Collide with Plane](Block-CollideWithPlane.md) - * [Collide with Signed Distance Field](Block-CollideWithSignedDistanceField.md) + * [Collision Shape Signed Distance Field](Block-CollideWithSignedDistanceField.md) * [Collide with Sphere](Block-CollideWithSphere.md) * Flipbook * [Flipbook Player](Block-FlipbookPlayer.md) * Force - * [Conform to Signed Distance Field](Block-ConformToSignedDistanceField.md) - * [Conform to Sphere](Block-ConformToSphere.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) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/sdf-bake-tool-api.md b/Packages/com.unity.visualeffectgraph/Documentation~/sdf-bake-tool-api.md index 1538ec84184..ec35628b684 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/sdf-bake-tool-api.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/sdf-bake-tool-api.md @@ -15,9 +15,9 @@ Within a Visual Effect Graph, create a new exposed Texture3D property. To do thi 3. Double-click on the new Texture3D, enter a meaningful name, and press enter to save it. You use this name to identify the property from the C# API. 4. To the left of the new Texture3D, click the drop-down arrow. 5. Enable **Exposed** if it is not already. -6. Drag the property into the graph and connect it to an input that accepts an SDF. For example, the **Distance Field** property of a [Collide With Signed Distance Field](Block-CollideWithSignedDistanceField.md) Block. +6. Drag the property into the graph and connect it to an input that accepts an SDF. For example, the **Distance Field** property of a [Collision Shape Signed Distance Field](Block-CollideWithSignedDistanceField.md) Block. -![](Images/sdf-bake-tool-api-example.png)
*Assigning an SDF to the Distance Field input port of the Collide with Signed Distance Field Block* +![](Images/sdf-bake-tool-api-example.png)
*Assigning an SDF to the Distance Field input port of the Collision Shape Signed Distance Field Block* ## MonoBehaviour diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/sdf-bake-tool-window.md b/Packages/com.unity.visualeffectgraph/Documentation~/sdf-bake-tool-window.md index 8ef7e669806..3ecde422822 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/sdf-bake-tool-window.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/sdf-bake-tool-window.md @@ -6,7 +6,7 @@ To open the SDF Bake Tool window, select **Window** > **Visual Effects** > **Uti ## Working with the SDF Bake Tool window -In the Unity Editor, in the [Visual Effect Graph window](VisualEffectGraphWindow.md), blocks and operators, such as [Collide With Signed Distance Field](Block-CollideWithSignedDistanceField.md), take an SDF as an input. +In the Unity Editor, in the [Visual Effect Graph window](VisualEffectGraphWindow.md), blocks and operators, such as [Collision Shape Signed Distance Field](Block-CollideWithSignedDistanceField.md), take an SDF as an input. ![The Update Particle context.](Images/sdf-update-particle-context.png) The **Update Particle** context. @@ -28,7 +28,7 @@ To make it easier to iterate over signed distance fields, the SDF Bake Tool wind * With the SDF Bake Tool window open, select the asset in the Project window. * In the Project window, double-click the asset. If the SDF Bake Tool window isn't open, this opens the window and assigns the asset. -Note: To use the SDF asset with the [Collide With Signed Distance Field](Block-CollideWithSignedDistanceField.md) block. In the block, set the **Size** of the **Field Transform** to match the **Box Size** that you used in the SDF Bake Tool. +Note: To use the SDF asset with the [Collision Shape Signed Distance Field](Block-CollideWithSignedDistanceField.md) block. In the block, set the **Size** of the **Field Transform** to match the **Box Size** that you used in the SDF Bake Tool. ## Properties diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/sdf-in-vfx-graph.md b/Packages/com.unity.visualeffectgraph/Documentation~/sdf-in-vfx-graph.md index ce3579075e7..df1e0681553 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/sdf-in-vfx-graph.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/sdf-in-vfx-graph.md @@ -6,10 +6,10 @@ Signed Distance Fields (SDF) are 3D textures where each texel stores the distanc In the Visual Effect Graph, there are several nodes that use SDFs to create effects: -- [*Position On Signed Distance Field*](Block-SetPosition(SignedDistanceField).md): Positions particles either within the volume of the SDF or on its surface. -- [*Conform To Signed Distance Field*](Block-ConformToSignedDistanceField.md): Attracts particles towards an SDF. This is useful for pulling particles towards a complex shape that would be difficult to replicate using other force blocks. -- [*Collide With Signed Distance Field*](Block-CollideWithSignedDistanceField.md): Simulates collision between particles and an SDF. This is useful when you want particles to collide with complex shapes. -- [*Sample Signed Distance Field*](Operator-SampleSDF.md): Samples an SDF and enables you to create custom behavior with the result. +- [**Position On Signed Distance Field**](Block-SetPosition(SignedDistanceField).md): Positions particles either within the volume of the SDF or on its surface. +- [**Attractor Shape Signed Distance Field**](Block-ConformToSignedDistanceField.md): Attracts particles towards an SDF. This is useful for pulling particles towards a complex shape that would be difficult to replicate using other force blocks. +- [**Collision Shape Signed Distance Field**](Block-CollideWithSignedDistanceField.md): Simulates collision between particles and an SDF. This is useful when you want particles to collide with complex shapes. +- [**Sample Signed Distance Field**](Operator-SampleSDF.md): Samples an SDF and enables you to create custom behavior with the result. ## Generating SDFs diff --git a/Packages/com.unity.visualeffectgraph/Editor/GraphView/Views/VFXConvertSubgraph.cs b/Packages/com.unity.visualeffectgraph/Editor/GraphView/Views/VFXConvertSubgraph.cs index 5b723cfc946..e0d33376b31 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/GraphView/Views/VFXConvertSubgraph.cs +++ b/Packages/com.unity.visualeffectgraph/Editor/GraphView/Views/VFXConvertSubgraph.cs @@ -248,6 +248,8 @@ public void ConvertToSubgraphContext(VFXView sourceView, IEnumerable TransferEdges(); //TransferContextsFlowEdges(); UninitSmart(); + + m_TargetSubgraph.GetResource()?.WriteAssetWithSubAssets(); } public void ConvertToSubgraphOperator(VFXView sourceView, IEnumerable controllers, Rect rect, string path) @@ -282,6 +284,8 @@ public void ConvertToSubgraphOperator(VFXView sourceView, IEnumerable m_SourceBlockControllers; @@ -374,6 +378,8 @@ public void ConvertToSubgraphBlock(VFXView sourceView, IEnumerable c TransferEdges(); m_SourceControllers = m_SourceControllersWithBlocks.ToList(); UninitSmart(); + + m_TargetSubgraph.GetResource()?.WriteAssetWithSubAssets(); } bool CreateUniqueSubgraph(string typeName, string extension, Func createFunc) diff --git a/Packages/com.unity.visualeffectgraph/Editor/GraphView/Views/VFXView.cs b/Packages/com.unity.visualeffectgraph/Editor/GraphView/Views/VFXView.cs index c72c6c6ee9d..00565a49fee 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/GraphView/Views/VFXView.cs +++ b/Packages/com.unity.visualeffectgraph/Editor/GraphView/Views/VFXView.cs @@ -1820,27 +1820,7 @@ internal void OnSave() { m_ComponentBoard?.DeactivateBoundsRecordingIfNeeded(); //Avoids saving the graph with unnecessary bounds computations - var graphToSave = new HashSet(); - GetGraphsRecursively(controller.graph, graphToSave); - foreach (var graph in graphToSave) - { - if (EditorUtility.IsDirty(graph) || UnityEngine.Object.ReferenceEquals(graph, controller.graph)) - { - graph.UpdateSubAssets(); - try - { - VFXGraph.compilingInEditMode = !m_IsRuntimeMode; - graph.visualEffectResource.WriteAsset(); - } - finally - { - VFXGraph.compilingInEditMode = false; - } - } - } - - // Only for testing purpose - //VFXAnalytics.GetInstance().OnSaveVFXAsset(this); + controller.graph.visualEffectResource.WriteAssetWithSubAssets(); } internal void SaveAs(string newPath) @@ -1856,46 +1836,6 @@ internal void SaveAs(string newPath) } } - void GetGraphsRecursively(VFXGraph start, HashSet graphs) - { - if (graphs.Contains(start)) - return; - graphs.Add(start); - foreach (var child in start.children) - { - if (child is VFXSubgraphOperator ope) - { - if (ope.subgraph != null) - { - var graph = ope.subgraph.GetResource().GetOrCreateGraph(); - GetGraphsRecursively(graph, graphs); - } - } - else if (child is VFXSubgraphContext subCtx) - { - if (subCtx.subgraph != null) - { - var graph = subCtx.subgraph.GetResource().GetOrCreateGraph(); - GetGraphsRecursively(graph, graphs); - } - } - else if (child is VFXContext ctx) - { - foreach (var block in ctx.children.Cast()) - { - if (block is VFXSubgraphBlock subBlock) - { - if (subBlock.subgraph != null) - { - var graph = subBlock.subgraph.GetResource().GetOrCreateGraph(); - GetGraphsRecursively(graph, graphs); - } - } - } - } - } - } - public EventPropagation OnCompile() { Compile(); diff --git a/Packages/com.unity.visualeffectgraph/Editor/Models/VFXGraph.cs b/Packages/com.unity.visualeffectgraph/Editor/Models/VFXGraph.cs index 6a8a7b6071c..3a36953672f 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/Models/VFXGraph.cs +++ b/Packages/com.unity.visualeffectgraph/Editor/Models/VFXGraph.cs @@ -374,19 +374,7 @@ static string[] OnWillSaveAssets(string[] paths) AssetDatabase.StartAssetEditing(); } var vfxResource = VisualEffectResource.GetResourceAtPath(path); - if (vfxResource != null) - { - vfxResource.GetOrCreateGraph().UpdateSubAssets(); - try - { - VFXGraph.compilingInEditMode = vfxResource.GetOrCreateGraph().GetCompilationMode() == VFXCompilationMode.Edition; - vfxResource.WriteAsset(); // write asset as the AssetDatabase won't do it. - } - finally - { - VFXGraph.compilingInEditMode = false; - } - } + vfxResource?.WriteAssetWithSubAssets(); } } finally @@ -432,6 +420,13 @@ public static void UpdateSubAssets(this VisualEffectResource resource) resource.GetOrCreateGraph().UpdateSubAssets(); } + public static void WriteAssetWithSubAssets(this VisualEffectResource resource) + { + var graph = resource.GetOrCreateGraph(); + graph.UpdateSubAssets(); + resource.WriteAsset(); + } + public static bool IsAssetEditable(this VisualEffectResource resource) { return AssetDatabase.IsOpenForEdit((UnityEngine.Object)resource.asset ?? resource.subgraph, StatusQueryOptions.UseCachedIfPossible); @@ -488,15 +483,6 @@ class VFXGraph : VFXModel // 18: Change ProbabilitySampling m_IntegratedRandomDeprecated changed to m_Mode public static readonly int CurrentVersion = 18; - [NonSerialized] - internal static bool compilingInEditMode = false; - - public override void OnEnable() - { - base.OnEnable(); - m_ExpressionGraphDirty = true; - } - public override void OnSRPChanged() { m_GraphSanitized = false; @@ -1139,7 +1125,7 @@ public uint FindReducedExpressionIndexFromSlotCPU(VFXSlot slot) public void SetCompilationMode(VFXCompilationMode mode, bool reimport = true) { - if (m_CompilationMode != mode) + if (m_CompilationMode != mode && !GetResource().isSubgraph) { m_CompilationMode = mode; SetExpressionGraphDirty(); @@ -1400,11 +1386,10 @@ public void SanitizeForImport() public void CompileForImport() { - if (compilingInEditMode) - m_CompilationMode = VFXCompilationMode.Edition; + bool isSubgraph = GetResource().isSubgraph; SyncCustomAttributes(); - if (!GetResource().isSubgraph) + if (!isSubgraph) { // Check Graph Before Import can be needed to synchronize modified shaderGraph foreach (var child in children) @@ -1492,21 +1477,15 @@ private VFXGraphCompiledData compiledData [SerializeField] private int m_ResourceVersion; - [NonSerialized] private bool m_GraphSanitized = false; - [NonSerialized] private bool m_ExpressionGraphDirty = true; - [NonSerialized] private bool m_ExpressionValuesDirty = true; - [NonSerialized] private bool m_DependentDirty = true; - [NonSerialized] private bool m_MaterialsDirty = false; - [NonSerialized] private bool m_CustomAttributesDirty = false; - [NonSerialized] private VFXGraphCompiledData m_CompiledData; + private VFXCompilationMode m_CompilationMode = VFXCompilationMode.Runtime; private bool m_ForceShaderDebugSymbols = false; private bool m_ForceShaderValidation = false; diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/uss/PropertyRM.uss b/Packages/com.unity.visualeffectgraph/Editor/UIResources/uss/PropertyRM.uss index 23b7686058d..5e83b2e7879 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/uss/PropertyRM.uss +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/uss/PropertyRM.uss @@ -107,9 +107,11 @@ .propertyrm #spacebutton.None { background-image : url("project:///Packages/com.unity.visualeffectgraph/Editor/UIResources/VFX/d_NoneSpace@2x.png"); } -.propertyrm VFXMatrix4x4Field Label { - width: 18px; - margin-left: 4px; + +.propertyrm #matrixContainer Label { + width: 20px; + margin-right: 2px; + -unity-text-align: middle-right; } .propertyrm #spacebutton:hover { diff --git a/Packages/com.unity.visualeffectgraph/Editor/UIResources/uss/VFXDataAnchor.uss b/Packages/com.unity.visualeffectgraph/Editor/UIResources/uss/VFXDataAnchor.uss index af340652d11..e1fd03968e0 100644 --- a/Packages/com.unity.visualeffectgraph/Editor/UIResources/uss/VFXDataAnchor.uss +++ b/Packages/com.unity.visualeffectgraph/Editor/UIResources/uss/VFXDataAnchor.uss @@ -175,6 +175,10 @@ VFXDataAnchor.Output #type -unity-text-align: middle-center; } +.VFXDataAnchor .propertyrm #matrixContainer FloatInput { + width: 30px; +} + .VFXOutputDataAnchor #icon { width: 13px; diff --git a/Tests/SRPTests/Packages/com.unity.testing.urp/Scripts/Runtime/UniversalGraphicsTestBase.cs b/Tests/SRPTests/Packages/com.unity.testing.urp/Scripts/Runtime/UniversalGraphicsTestBase.cs index 93b30ed4537..31a268acdd2 100644 --- a/Tests/SRPTests/Packages/com.unity.testing.urp/Scripts/Runtime/UniversalGraphicsTestBase.cs +++ b/Tests/SRPTests/Packages/com.unity.testing.urp/Scripts/Runtime/UniversalGraphicsTestBase.cs @@ -28,30 +28,22 @@ public class UniversalGraphicsTestBase protected readonly GpuResidentDrawerContext requestedGRDContext; protected readonly GpuResidentDrawerContext previousGRDContext; - protected readonly StereoRenderingGlobalContext stereoRenderingContext; - protected readonly StereoRenderingContext requestedXRContext; - protected readonly StereoRenderingContext previousXRContext; - public UniversalGraphicsTestBase(RenderGraphContext rgContext) - : this(rgContext, GpuResidentDrawerContext.None, StereoRenderingContext.None) + : this(rgContext, GpuResidentDrawerContext.None) { requestedGRDContext = previousGRDContext; - requestedXRContext = previousXRContext; GraphicsTestLogger.DebugLog($"RenderGraphContext: {requestedRGContext}"); GraphicsTestLogger.DebugLog($"GpuResidentDrawerContext: {requestedGRDContext}"); - GraphicsTestLogger.DebugLog($"StereoRenderingContext: {requestedXRContext}"); } public UniversalGraphicsTestBase( RenderGraphContext rgContext, - GpuResidentDrawerContext grdContext, - StereoRenderingContext xrContext + GpuResidentDrawerContext grdContext ) { requestedRGContext = rgContext; requestedGRDContext = grdContext; - requestedXRContext = xrContext; // Register context renderGraphContext = @@ -62,19 +54,13 @@ StereoRenderingContext xrContext GlobalContextManager.RegisterGlobalContext(typeof(GpuResidentDrawerGlobalContext)) as GpuResidentDrawerGlobalContext; - stereoRenderingContext = - GlobalContextManager.RegisterGlobalContext(typeof(StereoRenderingGlobalContext)) - as StereoRenderingGlobalContext; - // Cache previous state to avoid state leak previousRGContext = (RenderGraphContext)renderGraphContext.Context; previousGRDContext = (GpuResidentDrawerContext)gpuResidentDrawerContext.Context; - previousXRContext = (StereoRenderingContext)stereoRenderingContext.Context; // Activate new context renderGraphContext.ActivateContext(requestedRGContext); gpuResidentDrawerContext.ActivateContext(requestedGRDContext); - stereoRenderingContext.ActivateContext(requestedXRContext); } [OneTimeSetUp] @@ -94,7 +80,6 @@ public void SetUpContext() { renderGraphContext.ActivateContext(requestedRGContext); gpuResidentDrawerContext.ActivateContext(requestedGRDContext); - stereoRenderingContext.ActivateContext(requestedXRContext); Assert.That( GlobalContextManager.GetGlobalContext()?.Context, @@ -107,12 +92,6 @@ public void SetUpContext() Is.EqualTo((int)requestedGRDContext), $"Expected {requestedGRDContext} but was {(GpuResidentDrawerContext)GlobalContextManager.GetGlobalContext()?.Context}" ); - - Assert.That( - GlobalContextManager.GetGlobalContext()?.Context, - Is.EqualTo((int)requestedXRContext), - $"Expected {requestedXRContext} but was {(StereoRenderingContext)GlobalContextManager.GetGlobalContext()?.Context}" - ); } [TearDown] @@ -138,12 +117,6 @@ public void TearDown() ); } - Assert.That( - GlobalContextManager.GetGlobalContext()?.Context, - Is.EqualTo((int)requestedXRContext), - $"Expected {requestedXRContext} but was {(StereoRenderingContext)GlobalContextManager.GetGlobalContext()?.Context}" - ); - Debug.ClearDeveloperConsole(); #if ENABLE_VR XRGraphicsAutomatedTests.running = false; @@ -157,11 +130,9 @@ public void OneTimeTearDown() renderGraphContext.ActivateContext(previousRGContext); gpuResidentDrawerContext.ActivateContext(previousGRDContext); - stereoRenderingContext.ActivateContext(previousXRContext); GlobalContextManager.UnregisterGlobalContext(typeof(RenderGraphGlobalContext)); GlobalContextManager.UnregisterGlobalContext(typeof(GpuResidentDrawerGlobalContext)); - GlobalContextManager.UnregisterGlobalContext(typeof(StereoRenderingGlobalContext)); } } @@ -173,61 +144,24 @@ public static IEnumerable FixtureParams { yield return new TestFixtureData( RenderGraphContext.CompatibilityMode, - GpuResidentDrawerContext.GpuResidentDrawerDisabled, - StereoRenderingContext.StereoRenderingDisabled + GpuResidentDrawerContext.GpuResidentDrawerDisabled ); yield return new TestFixtureData( RenderGraphContext.RenderGraphMode, - GpuResidentDrawerContext.GpuResidentDrawerDisabled, - StereoRenderingContext.StereoRenderingDisabled + GpuResidentDrawerContext.GpuResidentDrawerDisabled ); if (GraphicsTestPlatform.Current.IsEditorPlatform) { yield return new TestFixtureData( RenderGraphContext.CompatibilityMode, - GpuResidentDrawerContext.GpuResidentDrawerInstancedDrawing, - StereoRenderingContext.StereoRenderingDisabled - ); - - yield return new TestFixtureData( - RenderGraphContext.RenderGraphMode, - GpuResidentDrawerContext.GpuResidentDrawerInstancedDrawing, - StereoRenderingContext.StereoRenderingDisabled - ); - } - - if (GraphicsTestPlatform.Current.Platform == RuntimePlatform.WindowsEditor) - { - yield return new TestFixtureData( - RenderGraphContext.CompatibilityMode, - GpuResidentDrawerContext.GpuResidentDrawerInstancedDrawing, - StereoRenderingContext.StereoRenderingEnabled - ); - - yield return new TestFixtureData( - RenderGraphContext.RenderGraphMode, - GpuResidentDrawerContext.GpuResidentDrawerInstancedDrawing, - StereoRenderingContext.StereoRenderingEnabled - ); - } - - if ( - GraphicsTestPlatform.Current.Platform == RuntimePlatform.WindowsPlayer - || GraphicsTestPlatform.Current.Platform == RuntimePlatform.WindowsEditor - ) - { - yield return new TestFixtureData( - RenderGraphContext.CompatibilityMode, - GpuResidentDrawerContext.GpuResidentDrawerDisabled, - StereoRenderingContext.StereoRenderingEnabled + GpuResidentDrawerContext.GpuResidentDrawerInstancedDrawing ); yield return new TestFixtureData( RenderGraphContext.RenderGraphMode, - GpuResidentDrawerContext.GpuResidentDrawerDisabled, - StereoRenderingContext.StereoRenderingEnabled + GpuResidentDrawerContext.GpuResidentDrawerInstancedDrawing ); } } diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/CommonAssets/URPAssets/UniversalRPAsset_APV_NoRealtimeShadows.asset b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/CommonAssets/URPAssets/UniversalRPAsset_APV_NoRealtimeShadows.asset new file mode 100644 index 00000000000..32a62a90a8f --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/CommonAssets/URPAssets/UniversalRPAsset_APV_NoRealtimeShadows.asset @@ -0,0 +1,138 @@ +%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: UniversalRPAsset_APV_NoRealtimeShadows + m_EditorClassIdentifier: + k_AssetVersion: 12 + k_AssetPreviousVersion: 12 + m_RendererType: 1 + m_RendererData: {fileID: 0} + m_RendererDataList: + - {fileID: 11400000, guid: f59607d3476b54858a594ea904187fb5, 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: 1 + m_RenderScale: 1 + m_UpscalingFilter: 0 + m_FsrOverrideSharpness: 0 + m_FsrSharpness: 0.92 + m_EnableLODCrossFade: 0 + m_LODCrossFadeDitheringType: 1 + m_ShEvalMode: 3 + m_LightProbeSystem: 1 + 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: 0 + m_MainLightShadowmapResolution: 2048 + m_AdditionalLightsRenderingMode: 1 + m_AdditionalLightsPerObjectLimit: 8 + m_AdditionalLightShadowsSupported: 0 + 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: 1 + m_ConservativeEnclosingSphere: 0 + m_NumIterationsEnclosingSphere: 64 + m_SoftShadowQuality: 2 + m_AdditionalLightsCookieResolution: 2048 + m_AdditionalLightsCookieFormat: 3 + m_UseSRPBatcher: 1 + m_SupportsDynamicBatching: 0 + m_MixedLightingSupported: 1 + m_SupportsLightCookies: 0 + m_SupportsLightLayers: 0 + m_DebugLevel: 0 + m_StoreActionsOptimization: 0 + m_UseAdaptivePerformance: 1 + m_ColorGradingMode: 0 + m_ColorGradingLutSize: 32 + m_AllowPostProcessAlphaOutput: 0 + m_UseFastSRGBLinearConversion: 0 + m_SupportDataDrivenLensFlare: 1 + m_SupportScreenSpaceLensFlare: 1 + 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: 0 + m_PrefilteringModeScreenSpaceOcclusion: 0 + m_PrefilterDebugKeywords: 1 + m_PrefilterWriteRenderingLayers: 1 + m_PrefilterHDROutput: 1 + m_PrefilterAlphaOutput: 1 + 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: 1 + m_PrefilterSoftShadowsQualityMedium: 1 + m_PrefilterSoftShadowsQualityHigh: 1 + m_PrefilterSoftShadows: 0 + m_PrefilterScreenCoord: 1 + m_PrefilterNativeRenderPass: 1 + m_PrefilterUseLegacyLightmaps: 0 + m_PrefilterBicubicLightmapSampling: 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_Lighting/Assets/CommonAssets/URPAssets/UniversalRPAsset_APV_NoRealtimeShadows.asset.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/CommonAssets/URPAssets/UniversalRPAsset_APV_NoRealtimeShadows.asset.meta new file mode 100644 index 00000000000..69eceb54881 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/CommonAssets/URPAssets/UniversalRPAsset_APV_NoRealtimeShadows.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1e23f43b03a29614baedd721281f66c7 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows.lighting b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows.lighting new file mode 100644 index 00000000000..ea41653f90c --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows.lighting @@ -0,0 +1,63 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!850595691 &4890085278179872738 +LightingSettings: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: 231_APV_Subtractive_NoRealtimeShadows + serializedVersion: 9 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 0 + m_RealtimeEnvironmentLighting: 1 + m_BounceScale: 1 + m_AlbedoBoost: 1 + m_IndirectOutputScale: 1 + m_UsingShadowmask: 0 + m_BakeBackend: 2 + m_LightmapMaxSize: 1024 + m_LightmapSizeFixed: 0 + m_UseMipmapLimits: 1 + m_BakeResolution: 40 + m_Padding: 2 + m_LightmapCompression: 3 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAO: 0 + m_MixedBakeMode: 1 + m_LightmapsBakeMode: 1 + m_FilterMode: 1 + m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0} + m_ExportTrainingData: 0 + m_EnableWorkerProcessBaking: 1 + m_TrainingDataDestination: TrainingData + m_RealtimeResolution: 2 + m_ForceWhiteAlbedo: 0 + m_ForceUpdates: 0 + m_PVRCulling: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_LightProbeSampleCountMultiplier: 4 + m_PVRBounces: 2 + m_PVRMinBounces: 2 + m_PVREnvironmentImportanceSampling: 1 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 1 + m_PVRFilteringGaussRadiusAO: 1 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_RespectSceneVisibilityWhenBakingGI: 0 diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows.lighting.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows.lighting.meta new file mode 100644 index 00000000000..8f5d195350c --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows.lighting.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 516cde3419ce29d4fa4da7ae39102aec +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 4890085278179872738 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows.meta new file mode 100644 index 00000000000..40014f5257d --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f0ffc24084af819479fe422469d90395 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows.unity b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows.unity new file mode 100644 index 00000000000..c72a28c0038 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows.unity @@ -0,0 +1,2086 @@ +%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, g: 0, b: 0, 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: 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: 1 + 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: 112000000, guid: 653b34d8b91f71b48b36cbc9437144dd, + type: 2} + m_LightingSettings: {fileID: 4890085278179872738, guid: 516cde3419ce29d4fa4da7ae39102aec, + 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 &770229555 +GameObject: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 770229557} + - component: {fileID: 770229556} + m_Layer: 0 + m_Name: ProbeVolumePerSceneData + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &770229556 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 770229555} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a83d2f7ae04ab6f4f99b0d85377be998, type: 3} + m_Name: + m_EditorClassIdentifier: + serializedBakingSet: {fileID: 11400000, guid: 1c5559cc330dfeb40b862cf3d9fa6974, + type: 2} + sceneGUID: 911c47a2fe05f9846b9eca70cf7757ee + obsoleteAsset: {fileID: 0} + obsoleteCellSharedDataAsset: {fileID: 0} + obsoleteCellSupportDataAsset: {fileID: 0} + obsoleteSerializedScenarios: [] +--- !u!4 &770229557 +Transform: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 770229555} + 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 &933834001 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 933834004} + - component: {fileID: 933834003} + - component: {fileID: 933834002} + - component: {fileID: 933834005} + - component: {fileID: 933834006} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &933834002 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 933834001} + m_Enabled: 1 +--- !u!20 &933834003 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 933834001} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0, g: 0, b: 0, 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: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &933834004 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 933834001} + serializedVersion: 2 + m_LocalRotation: {x: 0.50240177, y: 0.4975888, z: -0.5015013, w: 0.49849203} + m_LocalPosition: {x: -0.009538189, y: 10.01572, z: -0.07985285} + 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 &933834005 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 933834001} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_RenderShadows: 1 + m_RequiresDepthTextureOption: 2 + m_RequiresOpaqueTextureOption: 2 + m_CameraType: 0 + m_Cameras: [] + m_RendererIndex: -1 + m_VolumeLayerMask: + serializedVersion: 2 + m_Bits: 1 + m_VolumeTrigger: {fileID: 0} + m_VolumeFrameworkUpdateModeOption: 2 + m_RenderPostProcessing: 0 + m_Antialiasing: 0 + m_AntialiasingQuality: 2 + m_StopNaN: 0 + m_Dithering: 0 + m_ClearDepth: 1 + m_AllowXRRendering: 1 + m_AllowHDROutput: 1 + m_UseScreenCoordOverride: 0 + m_ScreenSizeOverride: {x: 0, y: 0, z: 0, w: 0} + m_ScreenCoordScaleBias: {x: 0, y: 0, z: 0, w: 0} + m_RequiresDepthTexture: 0 + m_RequiresColorTexture: 0 + m_Version: 2 + m_TaaSettings: + m_Quality: 3 + m_FrameInfluence: 0.1 + m_JitterScale: 1 + m_MipBias: 0 + m_VarianceClampScale: 0.9 + m_ContrastAdaptiveSharpening: 0 +--- !u!114 &933834006 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 933834001} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 73231aa468d81ea49bc3d914080de185, type: 3} + m_Name: + m_EditorClassIdentifier: + ImageComparisonSettings: + TargetWidth: 512 + TargetHeight: 512 + TargetMSAASamples: 1 + PerPixelCorrectnessThreshold: 0.001 + PerPixelGammaThreshold: 0.003921569 + PerPixelAlphaThreshold: 0.003921569 + RMSEThreshold: 0 + AverageCorrectnessThreshold: 0.04 + IncorrectPixelsThreshold: 0.0000038146973 + UseHDR: 0 + UseBackBuffer: 0 + ImageResolution: 0 + ActiveImageTests: 1 + ActivePixelTests: -1 + WaitFrames: 60 + XRCompatible: 1 + gpuDrivenCompatible: 0 + CheckMemoryAllocation: 0 + renderBackendCompatibility: 2 + SetBackBufferResolution: 0 +--- !u!1 &2088962498 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2088962500} + - component: {fileID: 2088962499} + m_Layer: 0 + m_Name: SelectQualityLevel + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &2088962499 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2088962498} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4f1decc188d2f3146ab93291a5c743e9, type: 3} + m_Name: + m_EditorClassIdentifier: + qualityLevelIndex: 9 + callbacks: [] +--- !u!4 &2088962500 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2088962498} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0.38117677, y: 6.107272, z: 0.46914768} + 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!23 &67325507504406580 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6969514674424780300} + 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_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, 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: 2 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!1 &271474419760019788 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4134375864582252412} + - component: {fileID: 2062998818642273012} + - component: {fileID: 7114342468818599215} + - component: {fileID: 3598740249766370291} + m_Layer: 0 + m_Name: Dynamic Sphere + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &374602141648391824 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4059610913787252183} + - component: {fileID: 953730802645617070} + - component: {fileID: 4475418186702868875} + - component: {fileID: 8942702416144025576} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 2147483647 + m_IsActive: 1 +--- !u!65 &540499354856750645 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8504963404592668053} + 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!4 &798416354214501664 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2166082154144361193} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: 0.70710576, z: -0, w: 0.7071078} + m_LocalPosition: {x: 2.5, y: 2, z: -1.5} + m_LocalScale: {x: 2, y: 4, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 6634170014767251332} + m_LocalEulerAnglesHint: {x: 0, y: 90, z: 0} +--- !u!108 &859577872565831529 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6321587644014348277} + m_Enabled: 1 + serializedVersion: 11 + m_Type: 2 + m_Color: {r: 1, g: 0, b: 0, a: 1} + m_Intensity: 47.746483 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 + m_CookieSize: 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: 1 + m_LightShadowCasterMode: 1 + m_AreaSize: {x: 0.5, y: 0.5} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 1 + m_BoundingSphereOverride: {x: -431602080, y: -431602080, z: -431602080, w: -431602080} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ForceVisible: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 + m_LightUnit: 0 + m_LuxAtDistance: 1 + m_EnableSpotReflector: 1 +--- !u!33 &953730802645617070 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 374602141648391824} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!64 &1238376638853135773 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6969514674424780300} + 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!65 &1371860413889496614 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8928246947585449534} + 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!4 &1427932271683834300 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2462461463155272272} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: 0.70710576, z: -0, w: 0.7071078} + m_LocalPosition: {x: -2.5, y: 2, z: 1.5} + m_LocalScale: {x: 2, y: 4, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 6634170014767251332} + m_LocalEulerAnglesHint: {x: 0, y: 90, z: 0} +--- !u!108 &1570675156920661301 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8679978060537002285} + m_Enabled: 1 + serializedVersion: 11 + m_Type: 2 + m_Color: {r: 0, g: 0.050011635, b: 1, a: 1} + m_Intensity: 47.746483 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 + m_CookieSize: 10 + m_Shadows: + m_Type: 1 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 0.863 + 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: 1 + m_LightShadowCasterMode: 1 + m_AreaSize: {x: 0.5, y: 0.5} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 1 + m_BoundingSphereOverride: {x: -431602080, y: -431602080, z: -431602080, w: -431602080} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ForceVisible: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 + m_LightUnit: 0 + m_LuxAtDistance: 1 + m_EnableSpotReflector: 1 +--- !u!23 &1605641141031658456 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8504963404592668053} + 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_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, 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: 2 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!4 &1803642981592810338 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4651778334697894093} + serializedVersion: 2 + m_LocalRotation: {x: 0.038325842, y: -0, z: -0, w: 0.9992653} + m_LocalPosition: {x: -0.010000229, y: 1.27, z: -4.52} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 6634170014767251332} + m_LocalEulerAnglesHint: {x: 4.393, y: 0, z: 0} +--- !u!1 &1823457049397243833 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6634170014767251332} + m_Layer: 0 + m_Name: Scene + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!33 &2062998818642273012 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 271474419760019788} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &2144455156859478448 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5756054324564951361} + - component: {fileID: 2970671074882417522} + m_Layer: 0 + m_Name: APV + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &2166082154144361193 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 798416354214501664} + - component: {fileID: 6243295092000202842} + - component: {fileID: 8188205864735557659} + - component: {fileID: 4342198802582672871} + m_Layer: 0 + m_Name: Cube (6) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 2147483647 + m_IsActive: 1 +--- !u!65 &2371774636374080023 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6163529519532588936} + 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!1 &2462461463155272272 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1427932271683834300} + - component: {fileID: 4352309899908625014} + - component: {fileID: 8046425854238307997} + - component: {fileID: 6720118322612580565} + m_Layer: 0 + m_Name: Cube (5) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 2147483647 + m_IsActive: 1 +--- !u!4 &2532214595042140878 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7945227134465128003} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: 0.70710576, z: -0, w: 0.7071078} + m_LocalPosition: {x: -2.5, y: 2, z: -1.5} + m_LocalScale: {x: 2, y: 4, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 6634170014767251332} + m_LocalEulerAnglesHint: {x: 0, y: 90, z: 0} +--- !u!23 &2844751935784873468 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6163529519532588936} + 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_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, 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: 2 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!4 &2856650062826844497 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8679978060537002285} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0.010000229, y: 1.27, z: 3.8200002} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 6634170014767251332} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &2932963878553811337 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7945227134465128003} + 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!114 &2970671074882417522 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2144455156859478448} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: cded085d155cde949b60f67a11dbc3bd, type: 3} + m_Name: + m_EditorClassIdentifier: + mode: 1 + size: {x: 14.648293, y: 7, z: 13} + overrideRendererFilters: 0 + minRendererVolumeSize: 0.1 + objectLayerMask: + serializedVersion: 2 + m_Bits: 4294967295 + lowestSubdivLevelOverride: 0 + highestSubdivLevelOverride: 0 + overridesSubdivLevels: 1 + mightNeedRebaking: 0 + cachedTransform: + e00: 1 + e01: 0 + e02: 0 + e03: -0 + e10: 0 + e11: 1 + e12: 0 + e13: -2 + e20: 0 + e21: 0 + e22: 1 + e23: -0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + cachedHashCode: 441805281 + fillEmptySpaces: 1 + version: 2 + globalVolume: 1 +--- !u!4 &3009558854448248236 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7151793788623955431} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: 0.70710576, z: -0, w: 0.7071078} + m_LocalPosition: {x: 2.5, y: 2, z: 1.5} + m_LocalScale: {x: 2, y: 4, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 6634170014767251332} + m_LocalEulerAnglesHint: {x: 0, y: 90, z: 0} +--- !u!135 &3598740249766370291 +SphereCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 271474419760019788} + 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_Radius: 0.5 + m_Center: {x: 0, y: 0, z: 0} +--- !u!33 &3710372955477937279 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8928246947585449534} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &4059610913787252183 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 374602141648391824} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -1.5, y: 2, z: 2.5} + m_LocalScale: {x: 2, y: 4, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 6634170014767251332} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &4134375864582252412 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 271474419760019788} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0.030000687, y: 0.63, z: -0.01999998} + m_LocalScale: {x: 4.6972065, y: 1.548, z: 4.534092} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 6634170014767251332} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &4342198802582672871 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2166082154144361193} + 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!33 &4352309899908625014 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2462461463155272272} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &4475418186702868875 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 374602141648391824} + 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_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, 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: 2 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!4 &4559612831519568058 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8928246947585449534} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 1.5, y: 2, z: 2.5} + m_LocalScale: {x: 2, y: 4, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 6634170014767251332} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &4651778334697894093 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1803642981592810338} + - component: {fileID: 8388378193671957909} + - component: {fileID: 8388378193671957910} + m_Layer: 0 + m_Name: Point Light (3) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4801559507434063172 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8823705289361188576} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0.7071062, z: -0, w: 0.7071075} + m_LocalPosition: {x: 5.549999, y: 1.27, z: -0.03999996} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 6634170014767251332} + m_LocalEulerAnglesHint: {x: 0, y: -90, z: 0} +--- !u!65 &4964775915549609775 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7151793788623955431} + 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!33 &5093465006564105547 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6969514674424780300} + m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} +--- !u!33 &5174378685605876727 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7151793788623955431} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!33 &5199497250532912330 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6163529519532588936} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &5756054324564951361 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2144455156859478448} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 2, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &6163529519532588936 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7659408397790067796} + - component: {fileID: 5199497250532912330} + - component: {fileID: 2844751935784873468} + - component: {fileID: 2371774636374080023} + m_Layer: 0 + m_Name: Cube (3) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 2147483647 + m_IsActive: 1 +--- !u!33 &6243295092000202842 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2166082154144361193} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &6321587644014348277 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8421560447745624478} + - component: {fileID: 859577872565831529} + - component: {fileID: 8421560447745624479} + m_Layer: 0 + m_Name: Point Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6634170014767251332 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1823457049397243833} + 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: 1 + m_Children: + - {fileID: 9092851139533727843} + - {fileID: 4059610913787252183} + - {fileID: 4559612831519568058} + - {fileID: 8639481702839641202} + - {fileID: 2532214595042140878} + - {fileID: 798416354214501664} + - {fileID: 3009558854448248236} + - {fileID: 1427932271683834300} + - {fileID: 7659408397790067796} + - {fileID: 8421560447745624478} + - {fileID: 2856650062826844497} + - {fileID: 1803642981592810338} + - {fileID: 4801559507434063172} + - {fileID: 4134375864582252412} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &6720118322612580565 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2462461463155272272} + 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!1 &6969514674424780300 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 9092851139533727843} + - component: {fileID: 5093465006564105547} + - component: {fileID: 67325507504406580} + - component: {fileID: 1238376638853135773} + m_Layer: 0 + m_Name: Plane + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 2147483647 + m_IsActive: 1 +--- !u!23 &7114342468818599215 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 271474419760019788} + 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_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, 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_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!1 &7151793788623955431 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3009558854448248236} + - component: {fileID: 5174378685605876727} + - component: {fileID: 9059298711009972520} + - component: {fileID: 4964775915549609775} + m_Layer: 0 + m_Name: Cube (7) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 2147483647 + m_IsActive: 1 +--- !u!108 &7365760829012495416 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8823705289361188576} + m_Enabled: 1 + serializedVersion: 11 + m_Type: 0 + m_Color: {r: 0.24126458, g: 1, b: 0, a: 1} + m_Intensity: 71.94863 + m_Range: 10 + m_SpotAngle: 79.92309 + m_InnerSpotAngle: 21.80208 + m_CookieSize: 10 + m_Shadows: + m_Type: 1 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 0.917 + 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: 1 + m_LightShadowCasterMode: 1 + m_AreaSize: {x: 0.5, y: 0.5} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 1 + m_BoundingSphereOverride: {x: -431602080, y: -431602080, z: -431602080, w: -431602080} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ForceVisible: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 + m_LightUnit: 0 + m_LuxAtDistance: 1 + m_EnableSpotReflector: 1 +--- !u!33 &7653247284745782390 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8504963404592668053} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &7659408397790067796 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6163529519532588936} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 1.5, y: 2, z: -2.5} + m_LocalScale: {x: 2, y: 4, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 6634170014767251332} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &7678397962808843124 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7945227134465128003} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &7945227134465128003 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2532214595042140878} + - component: {fileID: 7678397962808843124} + - component: {fileID: 9181637969281536300} + - component: {fileID: 2932963878553811337} + m_Layer: 0 + m_Name: Cube (4) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 2147483647 + m_IsActive: 1 +--- !u!23 &8046425854238307997 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2462461463155272272} + 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_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, 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: 2 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!23 &8188205864735557659 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2166082154144361193} + 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_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, 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: 2 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!108 &8388378193671957909 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4651778334697894093} + m_Enabled: 1 + serializedVersion: 11 + m_Type: 1 + m_Color: {r: 1, g: 0.8461648, b: 0, a: 1} + m_Intensity: 47.746475 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 + m_CookieSize: 10 + m_Shadows: + m_Type: 1 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 0.993 + 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: 1 + m_LightShadowCasterMode: 1 + m_AreaSize: {x: 0.5, y: 0.5} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 1 + m_BoundingSphereOverride: {x: -431602080, y: -431602080, z: -431602080, w: -431602080} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ForceVisible: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 + m_LightUnit: 2 + m_LuxAtDistance: 1 + m_EnableSpotReflector: 1 +--- !u!114 &8388378193671957910 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4651778334697894093} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Version: 3 + m_UsePipelineSettings: 1 + m_AdditionalLightsShadowResolutionTier: 2 + m_LightLayerMask: 1 + m_RenderingLayers: 1 + m_CustomShadowLayers: 0 + m_ShadowLayerMask: 1 + m_ShadowRenderingLayers: 1 + m_LightCookieSize: {x: 1, y: 1} + m_LightCookieOffset: {x: 0, y: 0} + m_SoftShadowQuality: 0 +--- !u!4 &8421560447745624478 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6321587644014348277} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -3.8700008, y: 1.27, z: -0.13999999} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 6634170014767251332} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &8421560447745624479 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6321587644014348277} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Version: 3 + m_UsePipelineSettings: 1 + m_AdditionalLightsShadowResolutionTier: 2 + m_LightLayerMask: 1 + m_RenderingLayers: 1 + m_CustomShadowLayers: 0 + m_ShadowLayerMask: 1 + m_ShadowRenderingLayers: 1 + m_LightCookieSize: {x: 1, y: 1} + m_LightCookieOffset: {x: 0, y: 0} + m_SoftShadowQuality: 0 +--- !u!1 &8504963404592668053 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8639481702839641202} + - component: {fileID: 7653247284745782390} + - component: {fileID: 1605641141031658456} + - component: {fileID: 540499354856750645} + m_Layer: 0 + m_Name: Cube (2) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 2147483647 + m_IsActive: 1 +--- !u!23 &8617595329683034408 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8928246947585449534} + 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_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, 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: 2 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!4 &8639481702839641202 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8504963404592668053} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -1.5, y: 2, z: -2.5} + m_LocalScale: {x: 2, y: 4, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 6634170014767251332} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &8679978060537002285 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2856650062826844497} + - component: {fileID: 1570675156920661301} + - component: {fileID: 8679978060537002286} + m_Layer: 0 + m_Name: Point Light (2) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &8679978060537002286 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8679978060537002285} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Version: 3 + m_UsePipelineSettings: 1 + m_AdditionalLightsShadowResolutionTier: 2 + m_LightLayerMask: 1 + m_RenderingLayers: 1 + m_CustomShadowLayers: 0 + m_ShadowLayerMask: 1 + m_ShadowRenderingLayers: 1 + m_LightCookieSize: {x: 1, y: 1} + m_LightCookieOffset: {x: 0, y: 0} + m_SoftShadowQuality: 0 +--- !u!1 &8823705289361188576 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4801559507434063172} + - component: {fileID: 7365760829012495416} + - component: {fileID: 8823705289361188577} + m_Layer: 0 + m_Name: Point Light (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &8823705289361188577 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8823705289361188576} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Version: 3 + m_UsePipelineSettings: 1 + m_AdditionalLightsShadowResolutionTier: 2 + m_LightLayerMask: 1 + m_RenderingLayers: 1 + m_CustomShadowLayers: 0 + m_ShadowLayerMask: 1 + m_ShadowRenderingLayers: 1 + m_LightCookieSize: {x: 1, y: 1} + m_LightCookieOffset: {x: 0, y: 0} + m_SoftShadowQuality: 0 +--- !u!1 &8928246947585449534 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4559612831519568058} + - component: {fileID: 3710372955477937279} + - component: {fileID: 8617595329683034408} + - component: {fileID: 1371860413889496614} + m_Layer: 0 + m_Name: Cube (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 2147483647 + m_IsActive: 1 +--- !u!65 &8942702416144025576 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 374602141648391824} + 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 &9059298711009972520 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7151793788623955431} + 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_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, 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: 2 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!4 &9092851139533727843 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6969514674424780300} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1.1648293, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 6634170014767251332} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!23 &9181637969281536300 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7945227134465128003} + 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_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, 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: 2 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 933834004} + - {fileID: 6634170014767251332} + - {fileID: 5756054324564951361} + - {fileID: 770229557} + - {fileID: 2088962500} diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows.unity.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows.unity.meta new file mode 100644 index 00000000000..1d4dcbec505 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 911c47a2fe05f9846b9eca70cf7757ee +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows-Default.CellData.bytes b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows-Default.CellData.bytes new file mode 100644 index 00000000000..f90b958e137 Binary files /dev/null and b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows-Default.CellData.bytes differ diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows-Default.CellData.bytes.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows-Default.CellData.bytes.meta new file mode 100644 index 00000000000..5a5c26a8187 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows-Default.CellData.bytes.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: d32898ed01596e245aba76ef1f07014d +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows-Default.CellOptionalData.bytes b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows-Default.CellOptionalData.bytes new file mode 100644 index 00000000000..ae0ba103e84 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows-Default.CellOptionalData.bytes @@ -0,0 +1 @@ +������������������������������������������~���}����������������������������������������������~���~���}���~���������������������������������������������������~���~���~���~����������������������~���~���~������������������������������������������������~���~��������������������������������������~���~���~�����������������������~����~�������������������������������~�~�����{���}���~����������������������������������������~���~���~���}����������������������������������������������~���~������~���~���}�����������������������������������������������~���~���~�����������������������������������~���~���~���~���~���������~���~���~���~���~���~���~���~�����������������}���}���~���~���~���~���~������������������������~���~���}��}������������������������������������������~���~���~���}���}���}����������������������������������������������~���~���~���~���~�������������������~��}�����}��}���~���~���~������}�{��~���}���}���~���~���}���~��}�~}~�����~���~���~���~����������������������~���~���~��}�~}~�}��~���~��������������������������������������~���~���~�����������������������~���}�}~�}~�~~�~~��������������������������������������������}���������������������������������������������~���~��}�����������������������������������������������~���~���~���~���~����������������������}���}���}�����������������������������������������������~���~���~����������������������������������~���}���}���}���}���}���~�����������~��~��~�������������������������������~�~�����}���~����������������������������������������}���~���~��~}~���������������������������������������������~���~�����}~��~���}����������������������������������������������~���~���~���~���~���������������������������}���~��}~��~���~���~���~���~���~���~���~���~���~�����������������}���~���~���~���~���~������������������������}���}��}}{��~���~���~�������������������������������������}���}���}��}}|��~���~���~�����������������������������������������~���}���~���~���~������~�������������~��}�����~��~~|�~}�~�~��}�����}��~���~��}��}�}��~���~���~���~���~����������������������}���}���}���}��}~�~~~��~���~���~����������������������������������~���}���}���}���}���}���~�����������~��~�}��~|��}��~�~}�����������������������������������������������������������������������~���~�����������������������������������������~���~���~���~���������������������������������}���}~��������~�����������������{��z����������������������������~��}��~���~���������������������������������������~�������������~���~���~���~�����������~��~����������������~��������������������������~��}��~���~������������������������������������}���������|��������|���|���}����������}���}���������~��vx�����}����~���~������}~��~���~���~���~���������������������������������}���}~����~����yw~�yw~�~����̀�̀����~~�~~�}}�}}�}}�}}�}}��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������́��̀��̀��̀�̀���~~�~~�~~�~~�}}~�~~̀������������̀��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂�́�́�̀��̀���������~~�~~~�~~͂�́�̀��̀�̀���~~�}}�}}�}}�||}�||͂�́�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂��͂�́��́��́��̀��̀���������̓��͂�͂�͂��͂��́��̀����������~̓�̓�͂��͂��͂��́��̀��~~�~~��~���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������́����~~�~~�~~�}}�}}�}}�||�|||�||��w������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������́�̀��̀�����~~�~~�~~�}}~�}}}�}}~̀������������̀��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂�͂�́�̀�̀�̀�������~~~�~~~�~~~͂�́�����������͂��͂�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂��͂��́��́��́��̀��̀����������̓��̓�͂�͂��͂��́��̀�����~~����~̓��̓��̓�͂��͂��������̀�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������́�����}}�}}�||�||�{{�{{�||��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̀�̀��̀�����~~�}}�}}�}}�||�||̀������������́��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂��́�́�̀�̀�����~~~�~~~�~~~�~~}�}}}͂�́�����������̓�͂�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̓�͂��͂��́��́��̀��̀�������~�}̓��̓�͂��͂��͂��̀�}̀�������~~��~~�̀�~̈́�̓��̓��̓�̓����~���~~��}�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̀������������̀������������́��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂�́�̀��̀�̀���~~�}}�}}�}}�||}�||͂�́�����������͂��́�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̓��͂�͂�͂��͂��́��̀����������~̓�̓�͂��͂��͂��́��̀��~~�~~��~�̈́�̈́��̓��͂�͂����|�|�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͊�}��xtx�xx�}�~}~�z~x�y~y�y�v�xw�}�~}~�}�|~w�{~x�z~{�{�u�yv�w�w�vy�vy�vz�vy�u}zu��u|�}�}~�}~�~~�~~�}~w�}v�|v�{v�{v�~�~����|�t�|�t�|�u�{�v�{�v�z�x�z�{�|�v�|�v�y�yz�~w���}}}�bvj�V{Y�P�Q�}}|�~}~�yx�y~z�x�v�ww�L[�uy�uy�uz�vy�vy�u{yu��~}}�}~|�}}~�{~w�zv�xx�z�u�z�v�x�w�w�y�w�y�v�z�u�|�w�{�w�{�v�{�u�{~t���~}|�~~{�~~{�~~{�~~{�~���}}~��}u�|u�|u�{�u�{�u~~�y{�z�y�}�t�|�u�|�v�{�w�{�w�y�y�{�{�y�z�y�z�z�|�|�yz��{~{�xx�wx�vx�G�^�vy�vy�t|�t|y=���|~{�{~{�yw�xx�x�v�w�w�v�x�u�z�u�z�u�z�u�|�v�y�v�y�t�~~t��}t���}~y�|~z�z~y�{w�yv�ww�z�u�y�v�y�w�x�x�x�x�w�y�v�}�x�w�x�w�z�w�v�}�~~y�}~y�}~x�|~x�|~x�~~�~~|��}��}u�|�t�{�u�{�u�{�u�~��~�~�z�z�y�{��}�t�}�u�|�v�|�w�|�w�|�z�|�{�{�w�{�w�y�{�{�{~{���xtx�xx�ww�vy�vy�u�y�t�}�B�q�B�q�t�|}t���u�z�z~x�y~y�y�v�xw�y�v�x�w�w�w�v�y�v�y�u�z�u�|�u�~�u�~t�}t���t�}�|~w�{~x�z~{�{�u�yv�w�w�vy�vy�vz�vy�u}zu��u|�z�u�z�v�y�w�y�x�y�x�y�z�x�|�y�v�y�v�w�{w�w���}~w�}v�|v�{v�{v�~�~����|�t�|�t�|�u�{�v�{�v�z�x�z�{�|�v�|�v�y�yz�~w���|�u�}�u�|�v�{�x�{�x�|�z�z�|�}�w�}�w�y�{�}�|z���axa�xx�}�}�y~x�y~z�z~w�x~x��}��}~�~~~�{~y�|~z�|}|�{~v�zv�xw�xx�xx�y~x�vy�vy�vy�u}}u��u~�}��~|��}��~�~}�}~w�}~x�}~x�}~x�}~x���z{�z{��}t�|u�}�u�}�u�}�u�|�v�|�w�{�v�{�v�y�y�y�}x���{}{�V{Y�N|b�N|b�Uz`�Uz`�u~�u~�}�y~y�yx�y~y�yw�xw�wx�wx�vy�vz�vz�vz�u|�t~�t{�}}|�|~{�{~{�{~w�z~y�xx�z�u�{v�yw�x�w�x�w�x�w�x�x�x�x�x�x�v�{�u�|u��~~|�~~�~~�~~}�~~}��}�~�}w�}~w�}~w�|v�|v�{z�{z�||�}}�|u�}�u�{�u�|�v�|�v�|�v�z�w�z�x�z�x�z�z�z�zz�~�}�wx�x~x�wy�wy�vx�wx�u{�u{�u{|>���~}}�}}}�|~z�wx�y�v�x�w�xw�xw�xw�xw�v�x�v�y�v�y�u�{t�t��{~x�z~y��}��|~x�zw�y~x�zu�{u�z�u�y�v�y�v�y�v�x�v�x�x�x�x�x�w�v�|~v���~~y�}~z�~~{�~~{�~~{�~y}�~�}v�}v�|v�{�v�{�v���|�y�|�y�|�z�|�|��|u�|�u�}�u�|�v�|�v�|�v�{�v�{�v�{�v�z�z�z�{z��axa�xx�wx�yv�ww�vy�vy�v�y�t�|�D�k�D�k�t�|t�~�u�|�y~x�y~z�z~w�x~x�|v�y�u�x�v�yv�yv�w�w�v�z�u�}�u�}t��u�}�t�~�{~y�|~z�|}|�{~v�zv�xw�xx�xx�y~x�vy�vy�vy�u}}u��u~�z�u�{�u�z�u�x�y�x�y�y�w�x�x�y�w�y�w�w�{w�w���}~w�}~x�}~x�}~x�}~x���z{�z{��}t�|u�}�u�}�u�}�u�|�v�|�w�{�v�{�v�y�y�y�}x���}�t�|�u�|�u�}�u�}�u�{�w�{�x�|�w�|�w�z�|�|�|z���}~�{~w�|~x�|~x�{~y�xx�xx�xx�xy�vy�vy�u}�u}}t���~����yw~�yw~�~��}u�}|�}|�������~y�~~x�}~w�|u�|u�}v�|�u�z�v�z�v�y�x�y�{y���N|b�N|b�Uz`�Uz`�u~�u~�y~x�y~x�y~x�vy�wy�uz�uz�u|�t~�t{�}}|�{~w�{~v�{~w�{~w�yw�yv�x�w�x�w�u�{�u�}�u�~�}}{��}��z~w�~v�����~~z�}|�~~z�~}z�~}z�~�~~}�~|�~|�}}~~�~~w�}~v�|u�|u�|u�{u�|�u�{�v�{�v�z�y�y�{y�~�yw�x~x�xw�xw�vx�wx�vy�vy�u{�H`�yv�xw�xw�xw�xv�v�y�v�x�v�x�v�y�t�|�t�~�|~y�}}{�|~z�zv�|u�{u�zu�zu�zu�y�v�x�x�x�x�w�y�w�|~v���}~x�}~x�~����~�~�~��~}z�~~x�~~x�|~x�|~x�~~y�~y�}z�}z�}�{�}~���~~v�|u�}u�{�u�{�u�}�t�|�u�z�w�z�w�{�x�y�}z��xw�yv�ww�ww�ww�wx�u�z�t�}�t�|~t���|v�zw�zv�yv�yv�w�x�v�x�v�z�v�z�u�}�v�zu��{~w�|~x�|~x�{~y�xx�xx�xx�xy�vy�vy�u}�u}}t��|u�{u�{u�z�u�z�u�x�v�y�w�x�y�x�y�x�zx�~w���}u�}|�}|�������~y�~~x�}~w�|u�|u�}v�|�u�z�v�z�v�y�x�y�{y���t�|u�}�t�|�t�|�t�}�t�|�v�}�x�}�x{�|�|�z{��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������́������������̀������������̀��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂��́�����������͂�́������������́��́�����~�~�}��~~�~~�~~�}}|�||}�}||��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̈́�̈́��̓��͂�͂����|�|���̓�̓�͂��́��́�����~�~���͂��́��́��̀��̀��������́��́�����~����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������u�����������}}������������~���ss�ss���ww�ww�{{��{{��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������́������������̀������������̀����x�}~�}~�~~�}}~�~}}�~}}�}}|�||�}||��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂�́��~���������͂�́������������́��̀�����~���~���~���~����~~~�~~~�}}~��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̈́��̓��̓�͂�͂��������̀��͂��͂��͂��́��́�����������̀�́��́��̀��̀��̀��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~��������������������������~�u�}~��}~��~~�~~�||}�||}�||�llt���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̀������������̀������������̀�������}���}���}��}~~�~~�~~�|}~�}}}�}}}��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂��́������������́��̀�������������̀��̀��̀������������~����̀�~~~�~~��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̈́�̓�̓�͂��͂���������~~���͂��͂��́��̀��̀������������̀���́��̀��̀��̀��̀��������̀��̀���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~~�~~�~~�||}�uv�uv�}}}�|}}�}}}��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̀������������̀������������̀���������~���~���~�~~�}~~�}~~�}}}�}~~�}}}��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂�́������������́��́�����~�~�}��~~�~~�~~�}}|�||}�}||̀��̀�������������~�̀̀�~�~~~�~~~��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̓�̓�͂��́��́�����~�~���͂��́��́��̀��̀��������́��́�����~́��̀��̀��������������̀��̀�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂��������������������������������������������}}��}}��}}��}|��}|��~|��~|��~|��~|��~|��|��|���~���~������������������������������������||�{|�||�|{�|{�}{��}{��~{��~{��~{��{��{���~���~���~�����������������������~��y}~�x|~�x|~�y{�y{�{{�}|�~��~����������������������������������������������{|�|{��|{��|z��|z��|z��}z��}z��}z��~y��y��y������������������������������������z|~�z{~�z{�zz�zz�{z�{y��|y��|y��~x��~x��x�~�~~�}~�{~�{~�~~�~��������w|~�w{~�w{~�xz~�xz~�zz~�|z~�}y��}y��}~����~~��~������~����~��~����~���z{�zz��{y��{y��{y��{x��|x��}x��}x��~w��~w��w�~~�}}�~}�~}��~}��~}��}��~��~��~��~��~�x{~�yz�yz�yy�yy�zx�zx��|w��|w��}w��~w��w�{~~�{}~�z}~�z|�z|�||�}������~v|~�v{~�w{~�xz~�xz~�zz~�{z~�}z~�}z~�|~�|~}}}��}}��}}��}|��}|��~|��~|��~|��~|��~|��|��|�yy�yy�zx��zx��zx��{w��|w��}w��}w��}v��~v��v�||�{|�||�|{�|{�}{��}{��~{��~{��~{��{��{�xz~�xz~�xy�xx�xx�yx�zw�{v�{v�}v�~v�vy}~�x|~�x|~�y{�y{�{{�}|�~��~���v{~�v{~�w{~�xz~�xz~�zz~�|z~�}z~�}z~�{~�{��|��������������������������������������������|}�}|�}}��}|��}|��}|��}{��~{��~{��~{��|��{���~���~���~���������������������������������{}~�{|~�{|�{{�{{�|{�}|��~|��~|��~|��|�|���~���~���~���~���~���������~�x~~�w}~�x}~�y|~�y|~�z{~�}{��}~�}~{����~��������������������������������������������{|�{{�{{��|z��|z��|z��}y��}y��}y��~y��~y��y��~��~�����~��������������������y|~�y{~�y{~�yz�yz�zz�{y�|y��|y��}x��y�y�~~�~~�|~~�|~�|~�~~��}��~~�~~|����~v}~�v|~�w|~�x|~�x|~�z{~�}{~��|~~�|~~��~�~~�~~�~��~��~��~��~��~��~��~����~�yz�zz�zy��{y��{y��{x��|x��|w��|w��}w��~w��w�}~~�}~~�}}�~}�~}�~}�}��~��~��~��~��x{~�y{~�xz~�yz�yz�yy�zx�{w�{w�}w�~w�wz~~�z~~�y}~�z}~�z}~�||�~|��}~�}~}~�����~v}~�v|~�w|~�x{~�x{~�z{~�|{~�|�|�~�~��~~|}�}|�}}��}|��}|��}|��}{��~{��~{��~{��|��{�yz�yy�yy�zx��zx��zw��{v��|v��|v��}v��~v��u�{}~�{|~�{|�{{�{{�|{�}|��~|��~|��~|��|�|�w{~�wz~�wz~�xy~�xy~�yy~�yx~�{w�{w�}w�~w�wx~~�w}~�x}~�y|~�y|~�z{~�}{��}~�}~{����~u}}�v|~�w|~�x|~�x|~�z{~�|{~�{~�{~�|~{|�������������������������������������������|}�||�||�||��||��}{��}{��~{��~{��~{��{��{���~���~���~���~���~�������������������~��}���z}~�z|~�z|~�z{~�z{~�||�}|�~}��~}��~}��}�~}��}��}���~���~���~������}�{x~~�w~~�w~~�x}~�x}~�z}~�}}~��~�~z�����~������������������������������������������z|�{{�zz�{z�{z�{z��|y��}y��}y��~y��~x��x�~��~�~~�}~�}~������������������~�x|~�x|~�x{~�y{~�y{~�zz~�zz�{y�{y�}y��y�~z~}�}~�|~�{~~�{~~�}~~��~~��~�~|~�}~{�~v~~�v~~�w~~�x}~�x}~�z}~�|}~�}~���}�~�~�~~�~~�~~��~~��~~��~~��~��~��~��~��~��~�y{�yz�yy�zy�zy�zx��{x��|w��|w��}w��~w��w�|}~�{}~�{}~�|}�|}�~}�}�~��~�����~w{~�x{~�wz~�xz~�xz~�yz~�yy~�{x~�{x~�}x~�x~y~z~�y~~�x~~�y~~�y~~�{~~�~}~��~�~z}�~|��}u~}�v~~�w~~�x}~�x}~�z}~�|}~�}~�}~��}���}��}|}�||�||�||��||��}{��}{��~{��~{��~{��{��{�yz�yy�xx�yx�yx�zw�zw��|v��|v��}v��~v��v�z}~�z|~�z|~�z{~�z{~�||�}|�~}��~}��~}��}�~}v{~�w{~�wz~�xz~�xz~�yy~�yy~�{y~�{y~�|y~�~z~�z~x~~�w~~�w~~�x}~�x}~�z}~�}}~��~�~z�����~u~}�v~}�w~~�x}~�x}~�z}~�|}~�~}~�~}~�}~�|�{��~���~������������������������������������||�{|�||�|{�|{�}{��}{��~{��~{��~{��{��{���~���~���~�����������������������~��y}~�x|~�x|~�y{�y{�{{�}|�~��~����}�}~�}~�~~�~~x~~w~~w~x~x~z~}�~���������~�����������������������������������z|~�z{~�z{�zz�zz�{z�{y��|y��|y��~x��~x��x�~�~~�}~�{~�{~�~~�~��������w|~�w{~�w{~�xz~�xz~�zz~�|z~�}y��}y��}~��~~~}~~|~z~~z~~|~�~������}��~v}~v~v~x~x~z�~}~�����~��~���~�~~�}}�~}�~}��~}��~}��}��~��~��~��~��~�x{~�yz�yz�yy�yy�zx�zx��|w��|w��}w��~w��w�{~~�{}~�z}~�z|�z|�||�}������~v|~�v{~�w{~�xz~�xz~�zz~�{z~�}z~�}z~�|~�|~}z~~y~~x~y~y~{~~~~�������}��~�u}v~v�~x~x~z~|~�~~�~~��|��|�|||�{|�||�|{�|{�}{��}{��~{��~{��~{��{��{�xz~�xz~�xy�xx�xx�yx�zw�{v�{v�}v�~v�vy}~�x|~�x|~�y{�y{�{{�}|�~��~���v{~�v{~�w{~�xz~�xz~�zz~�|z~�}z~�}z~�{~�{��|x~~w~~w~x~x~z~}�~���������~u}v}w�~x�~x�~z~|~�~~~~}~��|~��|~~��������������������������������������������}}�}}��}}��}|��}|��~|��~|��~|��~|��~|��|��|���~���~���~��������������������������������|}~�{}~�|}�||�||�||�}|��}{��}{��~{��{��{���~���}���}���}���}���}���~�����������~��~x~~�x}~�x~~�y~~�y~~�z~~�}~~������������������������������������������������{|�||��|{��|{��|{��|z��}z��}z��}z��~y��~y��y���~���~�����������������������������������z|~�z|~�z{~�z{�z{�zz�{y��|y��|y��}x��~x��x�~~�{~~�{~�y~�y~�~~�~��������v}~�w}~�w}~�x}~�x}~�y}~�z}~�|y��|y��}~���������������~��~�������z{�zz�zz��{z��{z��{y��|x��}x��}x��}x��~w��w�~~~�}~~�~~�~~�~~�~~�~��~��~��~��~��~�x|~�y{~�x{~�yz~�yz~�yy�zx�{w��{w��}w��~w��w�y~~�{~~�x~~�z~~�z~~�|~~�~~������~v}~�w}~�x}~�x}~�x}~�z}~�y|~�|{~�|{~�|~}~}}}�}}��}}��}|��}|��~|��~|��~|��~|��~|��|��|�yz�yy�yy��zx��zx��zw��{w��|w��|w��}v��~v��v�|}~�{}~�|}�||�||�||�}|��}{��}{��~{��{��{�x{~�w{~�wz~�xy~�xy~�xx�yw�{w�{w�}v�~v�vx~~�x}~�x~~�y~~�y~~�z~~�}~~������v}~�w}~�w}~�x|~�x|~�y}~�z{~�||~�||~�~{�{|�������������������������������������������}}�}}�}}��}|��}|��}|��}|��~|��~|��~|��|��|���~���~���~���~���~��������������������������{}~�{}~�{}~�{|~�{|~�||�}|�}|��}|��~|��|�|��}���~��}~��~���~���~�w~~�v~~�x~�y~~y~~{~~��~~�~~~~�����������������������������������������������{|�{{�{{��|{��|{��|z��|z��}y��}y��~y��~y��y���~��~��~�~�~���������������������y}~�x|~�y|~�y|~�y|~�z{�zz�|y��|y��}x��y�y�|~�{~�yzz~��~��z���v~~�v~~w~~y~~�y~~�|~��}~�}~~��~�~�������~��~����������~�y{�z{�zz�zy��zy��{y��{x��|w��|w��}w��~w��w�~~~�}~~�}~~�~~~�~~~�~}�~�~��~��~��~��x|~�y|~�x{~�x{~�x{~�xz~�yy�{w�{w�}w�~w�wy~~�y~�w~~{~�{~�|~��~��|�����v~~�w~~�x~~�y~~y~~{~~�|}�||�||�~��}}�}}�}}��}|��}|��}|��}|��~|��~|��~|��|��|�y{�xy�yy�yx��yx��zw��{w��|v��|v��}v��~v��u�{}~�{}~�{}~�{|~�{|~�||�}|�}|��}|��~|��|�|�w|~�w|~�w{~�wz~�wz~�xz~�xy~�zw~�zw~�|w�}w�ww~~�v~~�x~�y~~y~~{~~��~~�~~~~����v~~�w~~�x~~�y~~�y~~�z}~�{|~�}|~�}|~�~}~�{�~|���~���������������������������������������|}�|}�|}�||�||�}|��}|��~{��~{��~{��{��{���~���}���~���~���~������~�������������~��}���{~~�z~~�z}~�z}~�z}~�|}~�|}�}}��}}��~}��}�~}��~��~~|�~}�~�~��}�w~v~w~y~~y~~}������|���~�����������������������������������������������z|~�{|�z{�{{�{{�{z��|y��}y��}y��~y��~x��x�~��~�~�~~�~~�~�����������������~�x}~�x}~�x}~�y}~�y}~�y|~�z{~�{z�{z�}y��y�~z|~�{~y~yy}���~��y���v~v~x~y~y~|~�~��~~�~��~~��~~�~~��~~��~��~��~��~��~��~��~�y{~�y{~�yz�zy�zy�zy�{x��|w��|w��}w��~w��w�{~~�{~~�|~~�|~~�|~~�~~~�~~��������~w}~�x}~�w|~�x|~�x|~�x|~�xz~�zy~�zy~�}x~�x~y~y~x~w~zz|���}�}�~�~v~~�v~x~�y~�y~�{~�|~�}~�}~��}��}��}�|}�|}�|}�||�||�}|��}|��~{��~{��~{��{��{�y{�xz�xy�yx�yx�yx�zw�{v��{v��|v��~v��v�{~~�z~~�z}~�z}~�z}~�|}~�|}�}}��}}��~}��}�~}w|~�w|~�w|~�w|~�w|~�w{~�xz~�zy~�zy~�|y~�~z~z~w~v~w~y~~y~~}������|���~�����v~�w~~�x~y~~�y~~�z~�{~~�|~~�|~~�~}�|�{��~���~���~��������������������������������|}~�{}~�|}�||�||�||�}|��}{��}{��~{��{��{���~���}���}���}���}���}���~�����������~��~x~~�x}~�x~~�y~~�y~~�z~~�}~~�������}��~|��}��~�~}w~~v~w~y~y~}~�~��~��~��~��~��~��~���~�����������������������������������z|~�z|~�z{~�z{�z{�zz�{y��|y��|y��}x��~x��x�~~�{~~�{~�y~�y~�~~�~��������v}~�w}~�w}~�x}~�x}~�y}~�z}~�|y��|y��}~��|~}z~yyy}�����~�z�~�~�~v~~v~~w�~~y~y~|~~��~���~��~�~��~�~~~�}~~�~~�~~�~~�~~�~��~��~��~��~��~�x|~�y{~�x{~�yz~�yz~�yy�zx�{w��{w��}w��~w��w�y~~�{~~�x~~�z~~�z~~�|~~�~~������~v}~�w}~�x}~�x}~�x}~�z}~�y|~�|{~�|{~�|~}~}y~~x~~w~~yy|������|����v~x�~x�~z~z~{~�|~~�|}�|}�{���{��{�|}~�{}~�|}�||�||�||�}|��}{��}{��~{��{��{�x{~�w{~�wz~�xy~�xy~�xx�yw�{w�{w�}v�~v�vx~~�x}~�x~~�y~~�y~~�z~~�}~~������v}~�w}~�w}~�x|~�x|~�y}~�z{~�||~�||~�~{�{|w~~v~w~y~y~}~�~��~��~��~��~��~v�~~w�~~x�~~y�~y�~{~{~~�}~~�}~~�}|�~{��{~����������������������������������~{��||��||��~z��~z��|y��|y��}x��|w��y�~��~���~���~���~����������������������}|��~z��{~~�w{~�w{~�z|~�~y������zx��}w��x������������}���}~��{z��|}�yz�yz�}x���w�{x�}x�}v�}~y�}~{~~�}~�~~��~~��~��������������~��~|��}�z|�~~�~y��~x��}{��}{��}w��}v��x��~�~}����~���~���~�������������}}����|�~{z��{x��}w��w{~�w{~�y|~�}x��zy�zy�|w��|w��w��~|��~}���~~��~~��}��{��y�~xy�~xu�~yu�~{|�zz��zx��}z��|v��u�~�v�{�v�{z�~y�}x���{}~�����������}|��}|��}|��~{��z�{{�~}x��}x��}x��x��}x��{v��{v��|w��~{��w�z~}�|~~�{��{������}~�{{��{{��{z��~|��y�{w��|w��yy��yy��~v��}w��v�~v�~yw�}w��u��z|�}}��~z��~z��~y��v�~y�y�w�y�wt�}|y�~}y�yx�yx��|t��yy�yy�|u��|{��v�v�|u��}u��v~{��||��||��~z��~z��|y��|y��}x��|w��y�~vz~�|w��}{��}{��}{��yx��}z��}z��v�~~u��v��}|��~z��{~~�w{~�w{~�z|~�~y������zx��}w��x�{x��|x��u��u��uz~�xx�u�~u�~zw�}v��u�{z��|}�yz�yz�}x���w�{x�}x�}v�}~y�}~{yv��yw��zu��zu��zu��yz�{w��t�t�{u��}v�t���~���������������������������������������~|}~�}{��~z��~z��{{��zy��y�y�|x��~x�|���������������~���~���~���~�����������~|z��|y��|y��x��x��y}~�~x��~x��~x��{{�|x��x���~��������������z{�x|~�{w��{x��{x��zx��}|���w�|�w�|~}��x~~���}~�������������~��~}��~}������}�}~~�x{~�w{~�~x��~x��yz��}x��|{��|{��{v��~z��x�~~|��}~}���~�}��}��}��|~~�|~~�~~�||���|w��{x��|x��~w��~w��}w�~w��w�w�yx�{w��w����~�|~~�~|��������~~��~{��{�~{�~~~��|�~xz�{y��{t��zv��zv��|v���u�}�t�|�t�|v������~{����}|��~~��~~��~{��~z��{�~x{~�}|��wy�wy�zz�~w��~z��~y��t�|{���}�}{��{~}�{~}�~z�|��z}~�z}~�}}�|y��w��y{�{y��|v��|v��}v��}v��}z��}z��xx�{x~�u�||�}�{y���z���z��}}�~x���x�y�x�y~~�z�~wx�xx��yv��zv��zv��zy�t�}x��}x��zv��}u��u�|}~�}{��~z��~z��{{��zy��y�y�|x��~x�|��|}�}w��{|�yw��yw��xx�~v��~y��~y��}x��}t��x��|z��|y��|y��x��x��y}~�~x��~x��~x��{{�|x��x�xz�v}}�{u��{z��{z��|u��v{~�u�u�}w��{w��t�~z{�x|~�{w��{x��{x��zx��}|���w�|�w�|~}��x~wx�yv��xw�wx~�wx~�zw�xw�zx~�zx~�zu�|x�~x~���~���~�������������������������������y}~�}z��}{��{}~�{}~�}~�{z��{z��{w��}x��w�~�����}���������|��������|���|���}���������y~}�����|z��|z��~x��}y�~x�~x�x}~�zx�w�~�}���}���������~��vx�����}��y{�yz�zy��x{~�x{~�}v��}z���v�|�v�|x|�}|��z�~~~����}��}����������~}��~}��~}��}����v|~�}|��}y��}y��vy~�yy��x�}x�}{v��~y��v�����}��~��~���~�}�~|�}�|�}�~�~�}~�}�~zw��~~�}{��}v��}v��}w��}x�~w�}w�}x{~�yy�u�}}�}~�}|���}���}��}|�����y�|�y�|}|�~|��{�~x{�xy�yv�yw��yw��yw��u�~z{��~~��y�~�}~~���������||�����||��||��~{��}��y�|w��}v��w{~�~w��~w��{w��~w��xw~�xw~�{x��}w��t�~~�{~}�}z��}z��}�~z�~�|�}�|�}y~~�{{�z�zw��zv��yy�|u��|u��}u��{|��|x��|x��x{~�|y��t�z}~�{{��{{��}x��}x��z{��{���x�|�x�|{{��}|��}�~w�~|wx�zu��zu��zu��yx�zy�zx�zx�x|�{|�~yy}~�}z��}{��{}~�{}~�}~�{z��{z��{w��}x��w�~zz��|v��xz�xz�}z��}y��xx�xx�}v��~u��t�y~}�����|z��|z��~x��}y�~x�~x�x}~�zx�w�~zw�zy��|v��|v��|v��zw��{v��{v��zw��}t��uy{�yz�zy��x{~�x{~�}v��}z���v�|�v�|x|�}|��z�wx�xx~�yv�xw�xw�{x�wz~�y{~y{~yw�}z~�~w���~���~���~���~����������������������}|��~z��{~~�w{~�w{~�z|~�~y������zx��}w��x������������}���}~��{z��|}�yz�yz�}x���w�{x�}x�}v�}~y�}~{��~����yw~�yw~�~�y|~�x{~�xw�zu��zu��zx�{w��{}~{}~{~��||��{��~�~}����~���~���~�������������}}����|�~{z��{x��}w��w{~�w{~�y|~�}x��zy�zy�|w��|w��w��~|��~}���~~��~~��}��{��y�~xy�~xu�~yu�~{|�zz��zx��}z��|v��u�~�v�{�v�{z�~y�}x��|}�||��}}�||��||��}|��}{��}~}}~}~��}}��x�~vz~�wy�vz~�xw�xw�{u�|w�x|~x|~y|�{|�zz~}�|~~�{��{������}~�{{��{{��{z��~|��y�{w��|w��yy��yy��~v��}w��v�~v�~yw�}w��u��z|�}}��~z��~z��~y��v�~y�y�w�y�wt�}|y�~}y�yx�yx��|t��yy�yy�|u��|{��v�v�|u��}u��v{{�y|~�z{�{y��{y��~y��{y�{{{{{|�{z��x�xv�vz~�vy~�xw�xw�yw�zy~w}~�w}~�xz~�|y��}|��~z��{~~�w{~�w{~�z|~�~y������zx��}w��x�{x��|x��u��u��uz~�xx�u�~u�~zw�}v��u�{z��|}�yz�yz�}x���w�{x�}x�}v�}~y�}~{yv��yw��zu��zu��zu��yz�{w��t�t�{u��}v�t�y|~�x{~�xw�zu��zu��zx�{w��{}~{}~{~��||��{�vz~�vz~�vy~�xz~�xz~�zz~zz~�x}~x}~x�~~{~y~���͂�́��́��́��̀��̀���������͂��́�́�́��́��̀�̀������̓��͂�͂�͂��͂��́��̀����������~͂��͂��͂��́��́��̀��̀�������~�~̓�̓�͂��͂��͂��́��̀��~~�~~��~�͂��́�̀���~��~��~��~�~~~�~~~�|�z�}}~��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂�͂��́��́��́��̀�̀��̀��̀������͂��́�́��̀�̀�̀��������~�~�~̓��̓��͂��͂��͂��́��̀��̀��̀������͂��͂�́�~̀��̀��̀��������~�~~~�~̓��̓��͂��̀��̀���~��~~��~~�����~~~́��̀�����~}�~}�}~~�~}�}~~�}~~�}�z�}}~��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂��͂��́�́��́��̀��̀��̀��̀�����́�́�̀�̀�̀���~��~�~�~~~�~~�~~~̓�͂��͂��́�́�́��̀��̀��̀������~́�́�̀�̀��̀���~�~�~~~�~~~�~~~�~~~�~~~̓�͂��́��̀̀����~~�~~��|�}}~̀�����~}�}~��}~��}~}�}}��||~�||~�}}~�}}}�~~|��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂��́�́�́��́��̀�̀������̀��̀�̀���������~~�~~�~~~�~~~�~~~͂��͂��͂��́��́��̀��̀�������~�~́�̀�̀��}�}�~~�~~�}}~�}}~�}}}�}}~�}}}͂��́�̀���~��~��~��~�~~~�~~~�|�z�}}~�~��~}�}}~�}}~�|}��|}�||}�||}�||}�}}|�}}|��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂��͂��́��́��́��̀��̀����������͂��͂��́�́�́�̀��̀��������~�̓��̓�͂�͂��͂��́��̀�����~~����~͂��͂��́�́�~́�~̀��̀������~�~̓��̓��̓�͂��͂��������̀��͂��́��̀�}�}�~|��}|�~|~�~|~��~~~�~~~��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂��͂��͂��́�́�̀��̀��̀��̀������͂��́��́��̀�̀�̀���������~��~̓��̓��͂��́��́��̀�̀����������͂�́�́�̀�~̀�~̀�~���~�~�~~�~~}�~̈́��̓��͂��̀�̀��~��~�~�~���}}~́��̀��~}�~}~�~}~�}}~�||}�||}�||}���~~}��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂�͂��́�́��́��́�̀��̀��̀�����́�́��̀��̀��̀������~���~~�~~�~~}̓��̓��͂��́��́��́�̀���������~�~́�́��̀����~��~�~�~~�~~�~~�}}}�}}{�~~~̓��͂��́��̀̀�}��~}�~}�~}��~�~~~̀���~~~�}}~�}}~�|}��|~}�|}�|}�}}}�~~}�~~|��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂��͂��́�́�́�̀��̀��������~�́��̀�~̀���������~~~�~~�~~�~~�~~|�}}~͂��͂��́�́�~́�~̀��̀������~�~̀��̀����~�����~}�}~��}}}�}}}�|}�|||�|||͂��́��̀�}�}�~|��}|�~|~�~|~��~~~�~~~��~~�}~~�|}~�|}~�|~�|}�|||�|||�}|}�}}|�}}{��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̓�͂��͂��́��́��̀��̀�������~�}͂��͂�́��́��́��̀��̀�������~�~̓��̓�͂��͂��͂��̀�}̀�������~~��~~�̀�~͂��͂�́��̀��̀��̀�̀�����~̀�~̈́�̓��̓��̓�̓����~���~~��}�͂��́��̀~��}��}��~|~�~}��~|}�~|}��~�~~��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̓��̓�͂��́��́��́��̀��̀��̀������͂�͂��́��́�́�̀��������~��~̓�̓��͂��́��́��̀��̀���������̀�~́�́��̀��̀�~̀�~����~�~�~�~~�~~}�}̈́��̓��̓��́́�}��~��~�~̀����~|́��̀��~~�~|�~|�}|~�|}}����}�~}��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂��͂��͂�́�́�́��̀��̀��̀������́�́�~̀��̀�̀��~�~�~~|�~~|�~~�~~~�~~}̓��͂�͂��́��́��̀��̀��������~̀�~́�̀�~�����~��~��}�~~��}}�}}�}}�}}~�}}}̓��͂��́��̀~̀~�}��~}��~}�~}�~��~~�~}~̀��~��~~}�}}}�}}}�|}~�|~�|}~�|}~�~~}�~|�~|��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂��͂�́��́��́��̀��̀�������~�~̀��̀�~��������~�~~~�~~~�}~}�}}~�}}|͂��͂�́��̀��̀��̀�̀�����~̀�~̀�̀�����~~�~~�}~~�}}�||~�||~�||~�||}�|||͂��́��̀~��}��}��~|~�~}��~|}�~|}��~�~~��~~~�}}}�}~}�}~}�|}~�|}�|}}�|}}�|}}�}~{�~~{��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̓��͂�͂�͂��͂��́��̀����������~͂��͂��͂��́��́��̀��̀�������~�~̓�̓�͂��͂��͂��́��̀��~~�~~��~�͂��́�̀���~��~��~��~�~~~�~~~�|�z�}}~̈́�̈́��̓��͂�͂����|�|���͂��́��̀~�}}�}}�~|�}|~�}}�}}�~�~�}��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̓��̓��͂��͂��͂��́��̀��̀��̀������͂��͂�́�~̀��̀��̀��������~�~~~�~̓��̓��͂��̀��̀���~��~~��~~�����~~~́��̀�����~}�~}�}~~�~}�}~~�}~~�}�z�}}~̈́��̈́��̓��̀�̀��}��~}��~~��~~���̀�|z|́��̀��}��}|�}|�}|}�|}}�}~�}~��~�}�|��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̓�͂��͂��́�́�́��̀��̀��̀������~́�́�̀�̀��̀���~�~�~~~�~~~�~~~�~~~�~~~̓�͂��́��̀̀����~~�~~��|�}}~̀�����~}�}~��}~��}~}�}}��||~�||~�}}~�}}}�~~|̓��͂��́���~��~��~|��~|��}}�}}���}~�}~̀}���~}�}}~�}}~�|~}�|~}�|}~�|}~�}~}�~|�{��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂��͂��͂��́��́��̀��̀�������~�~́�̀�̀��}�}�~~�~~�}}~�}}~�}}}�}}~�}}}͂��́�̀���~��~��~��~�~~~�~~~�|�z�}}~�~��~}�}}~�}}~�|}��|}�||}�||}�||}�}}|�}}|͂��́��̀~�}}�}}�~|�}|~�}}�}}�~�~�}���~~~�}}�|}�|}�|}~�|}}�{|}�{|}�|}|�}~{�}}{��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̓}�}~�}~�~~�~~x~~w~~w~x~x~z~}�~���������~�}~w�}v�|v�{v�{v�~�~���y�~yx�~yy�yy�zy�z|�{�}�������|~~�|~~�~�|�t�|�t�|�u�{�v�{�v�z�x�z�{�|�v�|�v�y�yz�~w��z�vz��vz��x{��z{��z}��|�������������������~~~}~~|~z~~z~~|~�~������}��~v}~v~v~x~x~z�~}~�����~��~���~�~~x~~x|�x{�z{�z~�|���}�������z}{yy~�w�~zw�~zx�~zy�{y�{{�|~�~��~���~������~~�u~��u~��v}��x}��x~��|���������������������y�vz��wz��x{��z{��z}��|�������������������z~~y~~x~y~y~{~~~~�������}��~�u}v~v�~x~x~z~|~�~~�~~��|��|�|{�~xz�xz�yz�zz�z}�{��}�������{~}{~�v�~zw�~zx�~{y�~{y�~{{�|}�~�~~�~~�~��~��~|��u|��v|��w|��y|��y}��|�������������������y�wy�xz��y{��{{��{}��|��~����������������x~~w~~w~x~x~z~}�~���������~u}v}w�~x�~x�~z~|~�~~~~}~��|~��|~~y�~yx�~yy�yy�zy�z|�{�}�������|~~�|~~�~v�~{w�~{x�~{y�~|y�~|{�~}}�~~�~�~�~��~�~z�vz��vz��x{��z{��z}��|�������������������x�xy�yy�y{�{{�{|�}~�~������������~}|�~~{�~~{�~~{�~~{�~���}}~�x�~|w�~|w�~|x�~}x�~}z�~}}�~~�������������}u�|u�|u�{�u�{�u~~�y{�z�yy�wy�xy�yz�zz�z|�|��~��������~���~��~�}�t�|�u�|�v�{�w�{�w�y�y�{�{�y�z�y�z�z�|�|�yz�{��u{��v{��x|��z|��z}��|����������������������~~|~~{|~|{�~|{�~|}�}��~������y�~{~�����v�~}v�~|w�~}x�~}x�~}z�~}}�~~��~��~�~�~�v~�v}�w{�z{�z~�|����������~�{�~�x�xx�xy�yz�{z�{|�|�~��������~���~��~�t~��u~��v~��x~��x��{�������������������z��vz��w{��x|��z|��z}��|~��~�������������������z�~|y�~|x�~|y�~|y�~|{�~}~�~~����~�~��~���~�u�~}v�~}w�~}x�~}x�~}z�~~}�~~~�~~�~|��{|~{�w{�wz�x{�y{�y}��|���~��������~��~��~w�~yw�yx�zy�{y�{|�|~�~���������}��u}��u|��w}��x}��x~��{����������������������y��wz��xz��y|��{|��{}��|~��~����������������x�~|w�~|w�~|x�~}x�~}z�~}}�~~������������u�}}v�~}w�~~x�~~x�~~z�~|�~�~��~�~�}~�~~y�wy�xy�yz�zz�z|�|��~��������~���~��~w�~yw�~zx�~{z�|z�||�}~�~����~��~�{��u{��v{��x|��z|��z}��|����������������������y�xy��yz��y{��{{��{}��|~��~�������������������~~y�}~y�}~x�|~x�|~x�~~�~~|��}�x�~zx�~zx�~{y�~{y�~{{�|~�}������y�~{}������}u�|�t�{�u�{�u�{�u�~��~�~�z�z�y�{�z�vy�wy�x{��z{��z}��|���������������~���~��}�t�}�u�|�v�|�w�|�w�|�z�|�{�{�w�{�w�y�{�{�{~{��|��u|��v|��w}��z}��z~��|��~��������������������~~y}~y|�~z{�{{�{~�|��}������{��w{���v�~{v�~{w�~{x�~|x�~|z�~|}�~~{{~���~�u~��u|��v|��x|��x~��|��������������|�~��x�wy�xy�yz�zz�z|��|�������������~���~��u��v~��w��y��y��{��~������������������{��v{��w{��y|��z|��z}��|��~����������������{�~zz�~zy�~zz�{z�{|�{�}������y�x}���v�~{v�~{w�~|x�~|x�~|z�~}}�~~�~�~~��~~��~|�v{��vz��w{��y{��y}��|��������������~���x�xx�yy�zz�{z�{|�|~�~���������������}��u}��v}��w}��y}��y~��{����������������������z��wz��x{��y|��{|��{}��|~��~������������������x�~zx�~zx�~{y�~{y�~{{�|~�}������y�~{}�����u�~|v�~|w�~|x�~}x�~}{�~}}�~~�~�~�~�~�~z�vy�wy�x{��z{��z}��|���������������~���~�w�~yx�yy�zz�{z�{|�|~�~��������|��u|��v|��w}��z}��z~��|��~��������������������z��wz��x{��z|��{|��{}��|~��~�����������������}~w�}v�|v�{v�{v�~�~���y�~yx�~yy�yy�zy�z|�{�}�������|~~�|~~�~�|�t�|�t�|�u�{�v�{�v�z�x�z�{�|�v�|�v�y�yz�~w��z�vz��vz��x{��z{��z}��|��������������������|�u�}�u�|�v�{�x�{�x�|�z�z�|�}�w�}�w�y�{�}�|z��|��v|��v}��x}��y}��y~��|~��}������������������~~x~~x|�x{�z{�z~�|���}�������z}{yy~�w�~zw�~zx�~zy�{y�{{�|~�~��~���~������~~�u~��u~��v}��x}��x~��|���������������������y�vz��wz��x{��z{��z}��|��������������������u�u��x��y��y��{��}�����������������{��v|��w|��x}��z}��z~��}~��~������������������{�~xz�xz�yz�zz�z}�{��}�������{~}{~�v�~zw�~zx�~{y�~{y�~{{�|}�~�~~�~~�~��~��~|��u|��v|��w|��y|��y}��|�������������������y�wy�xz��y{��{{��{}��|��~����������������}��u~��v}��w~��y~��y~��{��}��������������{��w{��x{��y}��{}��{}��|~��~����������������y�~yx�~yy�yy�zy�z|�{�}�������|~~�|~~�~v�~{w�~{x�~{y�~|y�~|{�~}}�~~�~�~�~��~�~z�vz��vz��x{��z{��z}��|�������������������x�xy�yy�y{�{{�{|�}~�~�����������|��v|��v}��x}��y}��y~��|~��}������������������z��x{��x{��z|��{|��{}��|~��~�����������������}��~|��}��~�~}w~~v~w~y~y~}~�~��~��~��~��~��~�}~w�}~x�}~x�}~x�}~x���z{�z{�w�~|w�~|w�~}y�~}y�~}|�~~��~��~���~��|~�|~�~�}t�|u�}�u�}�u�}�u�|�v�|�w�{�v�{�v�y�y�y�}x��x�xx�xy�yz�{z�{}��}��������������|~}z~yyy}�����~�z�~�~�~v~~v~~w�~~y~y~|~~��~���~��~�~��~�{�~|z�~|x�}x~x~}��������z~}yy~�v�~|w�~|w�~}y�~~y�~~|�~~��~��~���~�����~|�v|��v{��v{��x{��x~��|����������������~��~��x�xx�yy�zz�|z�||�}�������������y~~x~~w~~yy|������|����v~x�~x�~z~z~{~�|~~�|}�|}�{���{��{�y�~{w�~|w�~}y�~~y�~~|�~����~���~��{~~~|~�~v�~|w�~|x�~}z�~}z�~}|�~}}�~}}�~}}�~}~�~��~��~z�wz�wz��x{��z{��z}��}�����������������w�yx�zy�{{�|{�|}�}~�~��������w~~v~w~y~y~}~�~��~��~��~��~��~v�~~w�~~x�~~y�~y�~{~{~~�}~~�}~~�}|�~{��{~w�~|w�~|w�~}y�~}y�~}|�~~��~��~���~��|~�|~�~v�~|w�~|x�~}z�~}z�~}{�~}|�~~}�~~}�~~~�~~��~�~x�xx�xy�yz�{z�{}��}��������������x�yx�zy�z{�{{�{|�|~�}~�~~�~����~~|�~~�~~�~~}�~~}��}�~w�~}v�~~w�~~y�~~y�~~|�~��~��~��~���~���}w�}~w�}~w�|v�|v�{z�{z�||�}}w�~zw�~{w�~|y�~}y�~}|�~~��~��~���~���~��~�~�|u�}�u�{�u�|�v�|�v�|�v�z�w�z�x�z�x�z�z�z�zz�~y�wz��wz��y{��z{��z}��|��~����������������|~}z~~y~yy}���}�~~|�~�v�~~v�~~w�~~y�~~y�~~|�~��~��~��~}�~~�{�~y{�~yy�~{x�}x�}}�~����������~�z�~~�w�~zw�~{w�~|y�~}y�~}|�~~�~��~���~���~���}�~}��u}��u|��v}��x}��x~��|������������������~x�xy��xz��z{��{{��{}��}~��~��������x~~w�~~w~~yy|����~�|�~�~v�~}w�~}x�~~z�~z�~|�~|~�|~~�|~~�~{��y~{y�~zx�~zw�~{y�~}y�~}|�~~��~��~���~���~�~�~�~w�~{w�~{x�~|z�~}z�~}|�~}~�}�~�~�~���{��v{��v{��w|��y|��y}��|������������������x�xy�yz�z{�{{�{|��|~�~�~�~���w�~}v�~~w�~~y�~~y�~~|�~��~��~��~���~��v�~}w�~~x�~~z�~~z�~~z�~{�~|~�|~�~}~�~|~�}~~w�~zw�~{w�~|y�~}y�~}|�~~��~��~���~���~��~�~w�~{x�~{y�~|z�~|z�~||�~}}�~}~�~~�~~�~�~�y�wz��wz��y{��z{��z}��|��~����������������x�yy�zz�z{�{{�{|�|}�}~�~~�~����~~y�}~z�~~{�~~{�~~{�~y}�~w�~|w�~}w�~~y�~~y�~~|�~~��~������x�~z|�~�~�}v�}v�|v�{�v�{�v���|�y�|�y�|�z�|�|�x�xw�yx�zz�|z�||�}���������~���~��~�|u�|�u�}�u�|�v�|�v�|�v�{�v�{�v�{�v�z�z�z�{z�z��vz��w{��x|��z|��z}��|~��~���������������{~|{~~y~y~y~}���y��vy�{v�~}v�~}w�~}y�~~y�~~|�~~��~{{~��~|�w{�xy�xy�zy�z}�~������������|�}�w�~zw�zx�{z�|z�||�~���������~���~��~~��u}��v~��w~��y~��y~��{���������������y��wz��x{��y{��{{��{}��|~��~�����������~y�~|w�~}w�~~y�~y�~|�������x�x|�~~�v�~}w�~}x�~}z�~~z�~~|�~~|�~~|�~|�~~��~~~y�xx�xx�yy�{y�{}�}�����������~�~�~�w�~zw�~{y�{z�|z�||�}~�~�~�~������|��v{��v|��w}��y}��y~��|��~�������������y�xz��y{��y{��z{��z}��|~��~��~��~������w�~|w�~}w�~~y�~~y�~~|�~~��~������x�~z|�~�~v�~|w�~}x�~}z�~~z�~~{�~~|�~~}�~}�~�~��~~�~x�xw�yx�zz�|z�||�}���������~���~��~w�~zx�~{y�~{z�|z�||�|}�}~�}~�}�~��z��vz��w{��x|��z|��z}��|~��~���������������y�xy�y{��z{��{{��{|��|~��}��~��~��~�����}~w�}~x�}~x�}~x�}~x���z{�z{�w�~|w�~|w�~}y�~}y�~}|�~~��~��~���~��|~�|~�~�}t�|u�}�u�}�u�}�u�|�v�|�w�{�v�{�v�y�y�y�}x��x�xx�xy�yz�{z�{}��}���������������}�t�|�u�|�u�}�u�}�u�{�w�{�x�|�w�|�w�z�|�|�|z��{��v{��w|��x}��z}��z}��|~��}����������{�~|z�~|x�}x~x~}��������z~}yy~�v�~|w�~|w�~}y�~~y�~~|�~~��~��~���~�����~|�v|��v{��v{��x{��x~��|����������������~��~��x�xx�yy�zz�|z�||�}�������������~��v}��u~��x~��y~��y~��{��}�������������z��w{��x{��y|��z|��z}��|~��~~��~~��~������y�~{w�~|w�~}y�~~y�~~|�~����~���~��{~~~|~�~v�~|w�~|x�~}z�~}z�~}|�~}}�~}}�~}}�~}~�~��~��~z�wz�wz��x{��z{��z}��}�����������������w�yx�zy�{{�|{�|}�}~�~��������|��v|��v|��x}��y}��y~��{��}��~��~��������~z��wz��x{��y|��z|��z}��|~��}~��}~��}������w�~|w�~|w�~}y�~}y�~}|�~~��~��~���~��|~�|~�~v�~|w�~|x�~}z�~}z�~}{�~}|�~~}�~~}�~~~�~~��~�~x�xx�xy�yz�{z�{}��}��������������x�yx�zy�z{�{{�{|�|~�}~�~~�~���{��v{��w|��x}��z}��z}��|~��}����������z��xz��yz��y|��z|��z|��|}��}~��}~��}��~������~����yw~�yw~�~�y|~�x{~�xw�zu��zu��zx�{w��{}~{}~{~��||��{��}u�}|�}|������w}u~}�w~}�v~}�v~}�u|}�v|}�x{}�x{}�|}~~~~�~y�~~x�}~w�|u�|u�}v�|�u�z�v�z�v�y�x�y�{y��y�~yx�~xx�~xy�~xy�~xy�~wy�wz�xz�xz��y}��|��|}�||��}}�||��||��}|��}{��}~}}~}~��}}��x�~vz~�wy�vz~�xw�xw�{u�|w�x|~x|~y|�{|�z{~}�|}�{~}�y}~�y}~�{}~�{}~�{{~�{{~�|{�~}}~v~}�t}}�u~}�v~}�v~}�u|}�v|}�w|}�w|}�~~~~~~w~w~w~v~v�w}��u�w�w}��x~��{��x�~zu�}{v�~yx�~yx�~yw�~yw�~yy�yy�yz�{|�}��{{�y|~�z{�{y��{y��~y��{y�{{{{{|�{z��x�xv�vz~�vy~�xw�xw�yw�zy~w}~�w}~�xz~�|y��z~}�x~}�x~}�w|~�w|~�x|~�x|}�x{~�x{~�}~�~~~t}}�u}u~}�u}}�u}}�v|}�v|}�v}}�v}}�y|}�{}}~~}�~x|�~x|�~w{�~w{�~w|�w{�w{��x{��x|��y}��|��~w�}zv�~yv�~zw�~xw�~xw�~zw�~yx�{x�{z�{|�}�y|~�x{~�xw�zu��zu��zx�{w��{}~{}~{~��||��{�vz~�vz~�vy~�xz~�xz~�zz~zz~�x}~x}~x�~~{~y~w}u~}�w~}�v~}�v~}�u|}�v|}�x{}�x{}�|}~~~~u}t~}�t}}�u|}�u|}�u}}�w|}�w}}�w}}�y~}{~~~}y�~yx�~xx�~xy�~xy�~xy�~wy�wz�xz�xz��y}��|��v�~zv�~yv�~zv�~zv�~zw�~yw�~{x�~{x�~{z�~|}�~~�~�}}{��}��z~w�~v����y|~�w{~�x{~�zw�zw�yy�|y~�u}�u}y~�z{�x��~~z�}|�~~z�~}z�~}z�~�~~}�~|�~|�}}~~|}}z}}w}w�}}w�}}v�}~w�}}x�~{x�~{y�~||�~��~~w�}~v�|u�|u�|u�{u�|�u�{�v�{�v�z�y�y�{y�~y�~x|�~vz�~wy�~wy�~wz�vz��w{��x{��x{��y~��|��~|}�|}�{z~�|y��|y��}y��y�~�y�z�y�z}��|~�|�v{~�vz~�vz~�xx�xx�yx�|w��v~}�v~}z|�y|}}{}}}}|z�~~z�~~|~}}~|}~{}~{}~{}~z�}}x}~v}~u�}~u�}~v�}~u�}~v�~|v�~|y�~}|�~~~�~~v~v~�uuu~�u~��u~��v~��v~��x~��|��z�~wy�~wy�~wx�wx�wy�wx�xy�xy�x{��{}��|��y|~�y{�yw�yw�|w��}w���w�|�w�|x��{|�z��v{~�vy~�vy~�xw~�xw~�xw~�{~~{y�~}y�~}y�~~zy~�~{~y}}~}}x}x}~x}~y�}}y�}}y�~|y�~|z�~{}�}�v}~u�}~u}u�}~u�}~u}~w�}}w�}}w�}}y�}~{�}~�~}�~w~v{�~w{�v{�v|�u|��v|��v|��v}��y~��|��v�~xv�~zw�~xx�~wx�~ww�xx�xz�zz�zz�{~��}��y|~�w{~�x{~�zw�zw�yy�|y~�u}�u}y~�z{�x�u|}�u{~�vz~�vy~�vy~�zy~�yz~�x~~|x~~|x~~{�~~y~|}}z}}w}w�}}w�}}v�}~w�}}x�~{x�~{y�~||�~�u}u�}}t~}�u�}~u�}~u�}}v�}~w�}~w�}~y�}|�}��}y�~x|�~vz�~wy�~wy�~wz�vz��w{��x{��x{��y~��|��~v�~yu�~zw�~xv�~yv�~yw�~yy�yy�{y�{{�|~�~��}~x�}~x�~����~�~�~�x}}�w{~�w|~�v{~�v{~�wy~�zw��w~~�w~~x�{|��}{�~}z�~~x�~~x�|~x�|~x�~~y�~y�}z�}z�}�{�}~��x�}}v�}{x�}{y�~zy�~zy�~yw�~zy�~zy�~zz�{}�}��~~v�|u�}u�{�u�{�u�}�t�|�u�z�w�z�w�{�x�y�}z�}�u}�~wz�vz�uz�u|��v{��v|��x|��x}��z}��|��{}~�z|~�|~~�{}~�{}~�|y�}w���x�{�x�{y�yw�{}�v|}�v}}�u{~�vz~�vz~�wx~�~x~z��y~z~~~y}�~y}�~z~�~x~�~x~�~y�~x~�x~�x}��z}��|��x�}|w�}|v�}{v�}{v�}{v�~{v�~{y�~zy�~zz�{|�}�~�ut�~v�t�t�~�u�}�v�w�w~��x�{}�~z�~vy�vy�vy�vy�vz��v{��xz��xz��x}��z}��|��x~}�y|~�x|~�x{~�x{~�zy~�zx��w|�w|w�y{�}~|u}}�t|}�u|}�u|~�u|~�wy~�{z~~}|}|x�~~y�~z~z�}z|�~z{�~zz�}zz�}zz�~y{�~y{�x{�x|��z}��|��u�}{w�~{v�~|v�}{v�}{u�~{v�~{w�~{w�~{y�~||�~~�~}�~v}�u~�t~��t~��t}��u}��v}��w}��w~��x~��|���y�vx�~wy�vx�wx�wy�wy�yz��yz��y|��{}��}��x}}�w{~�w|~�v{~�v{~�wy~�zw��w~~�w~~x�{|��}{uz~�v|~�vz~�u{}�u{}�wz~�{{~z~~z~~x�~y}~�|~x�}}v�}{x�}{y�~zy�~zy�~yw�~zy�~zy�~zz�{}�}�u�}|u�}|t�}|u�}|u�}|u�}|v�}|w�~|w�~|y�~}}�~~�~}�u}�~wz�vz�uz�u|��v{��v|��x|��x}��z}��|��x�~wy�~ww�~xw�ww�ww�yy�y{��{{��{{�|}�~��}u�}|�}|������w}u~}�w~}�v~}�v~}�u|}�v|}�x{}�x{}�|}~~~~�~y�~~x�}~w�|u�|u�}v�|�u�z�v�z�v�y�x�y�{y��y�~yx�~xx�~xy�~xy�~xy�~wy�wz�xz�xz��y}��|���t�|u�}�t�|�t�|�t�}�t�|�v�}�x�}�x{�|�|�z{�|�u|�t{�u{��u{��u{��v{��v|��x|��x}��z��~��~{~}�|}�{~}�y}~�y}~�{}~�{}~�{{~�{{~�|{�~}}~v~}�t}}�u~}�v~}�v~}�u|}�v|}�w|}�w|}�~~~~~~w~w~w~v~v�w}��u�w�w}��x~��{��x�~zu�}{v�~yx�~yx�~yw�~yw�~yy�yy�yz�{|�}���u�~t�}�t��t��t�~�t�}�v�~�x�~�x~�z�{��~z�v{�uz�uy�vy�v{��vz��w{��x{��x|��y}��|��~z~}�x~}�x~}�w|~�w|~�x|~�x|}�x{~�x{~�}~�~~~t}}�u}u~}�u}}�u}}�v|}�v|}�v}}�v}}�y|}�{}}~~}�~x|�~x|�~w{�~w{�~w|�w{�w{��x{��x|��y}��|��~w�}zv�~yv�~zw�~xw�~xw�~zw�~yx�{x�{z�{|�}�u�t~��t~��t~��t|��u}��w~��w~��w~��z~��|��z�vy�vx�wx�wx�wy�wy�x{��y{��y|��{~��}��~w}u~}�w~}�v~}�v~}�u|}�v|}�x{}�x{}�|}~~~~u}t~}�t}}�u|}�u|}�u}}�w|}�w}}�w}}�y~}{~~~}y�~yx�~xx�~xy�~xy�~xy�~wy�wz�xz�xz��y}��|��v�~zv�~yv�~zv�~zv�~zw�~yw�~{x�~{x�~{z�~|}�~~�~|�u|�t{�u{��u{��u{��v{��v|��x|��x}��z��~��~x�ww�~xw�xx�xx�xx�xy�z{��{{��{{��{}��}����̈́��̓��͂�͂����|�|���͂��́��̀~�}}�}}�~|�}|~�}}�}}�~�~�}̓�̓�͂��́��́�����~�~���͂��́���~��~}��~}��}|��}|�||}�||}�~~~�~~~�}}}͂��́��́��̀��̀��������́��́�����~́��̀�����~~��~~��~}��}}��~~��~~��~~~�~�}��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̈́��̈́��̓��̀�̀��}��~}��~~��~~���̀�|z|́��̀��}��}|�}|�}|}�|}}�}~�}~��~�}�|̓��̓��͂��̀�̀��~}��~}��~~��~~�̓�̀�~�}}́��̀�~}��}|��}|��}{�|{~�||}�||}�~��|||͂��́��́��̀�̀�����������́��́�̀̀�����~~��~}��~}��}}��}}�}}~�}}~�~}}�~~|�~~|��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̓��͂��́���~��~��~|��~|��}}�}}���}~�}~̀}���~}�}}~�}}~�|~}�|~}�|}~�|}~�}~}�~|�{̓��͂��́��}��}��~|��}|��}}�}}���}}̀��~��~}��}|�}|�||}�|}}�|}|�|}|�}}{�}}{�~~z͂��́��̀���~��~��~}��~~��~~��~~��̀�~̀��~��~}��}}��}}��}}~�}}�}}}�}}}�}}}�~~|�~~|��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂��́��̀~�}}�}}�~|�}|~�}}�}}�~�~�}���~~~�}}�|}�|}�|}~�|}}�{|}�{|}�|}|�}~{�}}{͂��́���~��~}��~}��}|��}|�||}�||}�~~~�~~~�}}}�~��~~��}}��}}~�}}~�|}~�|}|�|||�|||�||{�}}{�}}ź��̀�����~~��~~��~}��}}��~~��~~��~~~�~�}���~~��~~��}}�}}�|}�}}}�}}}�}}}�}}|�}}{�}}{��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̈́��̓��̓�͂�͂��������̀��͂��́��̀~��~}~�~}~�}|�}|~�~||�~||��~~~�}͂��͂��͂��́��́�����������̀�́��̀���~��~}��~}��}|��}|��}}�}}�~~~�~~}�}}}́��́��̀��̀��̀�����������������́��̀�����~��~��~~��~~��~~�~~�~�~�~��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̈́��̓��̓��̀�̀��}��~}��~�~�����~}~́��̀~�}�}|~�}|~�}{~�|{}�||{�||{���}̀�|̓��͂��͂���~��~��~}��}}��~~��~~�́�̀�~�}}~́��̀��}��}|��}|��}|��||�||�||�}}}�}}|�}}{́��́��̀��̀��̀������̀��̀��̀��̀�̀�̀�����~��~~��~~��~}��~}�~~�~~�~~~�~~}�~}��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̓�͂��́���}�}�~|~�~|~�~}~�~}~�~~��~}�~}}̀��~~�~~�}}}�}}}�||}�|~~�|}��|}��}}|�}~|�{͂��͂��̀��}��}��}|��}|��}}��}}���~�}}~̀��~��~~��}}�}}�||~�||~�|}|�|}|�}~|�~~{�~~{́��́��̀�������~��~~�������̀�̀�~̀����~~��~~��~~��}}�}}�}}}�}}}�~~}�~~}�~~|��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂��́��̀~��~}~�~}~�}|�}|~�~||�~||��~~~�}�~}�~~��}}~�||~�||~�|}|�{}}�||�||�|||�}}{�}}ź��̀���~��~}��~}��}|��}|��}}�}}�~~~�~~}�}}}���~~��}}~�}}�}}�||}�|}|�|}|�|}|�}}{�}}{�}}ź��̀�����~��~��~~��~~��~~�~~�~�~�~���~~��~~��}}�}}�}}~�}}~�}}}�}}}�}}|�}}|�~}|��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̈́�̓�̓�͂��͂���������~~���͂��́��̀~��~}��~}��}|�}|}�}||�}||�}�~~~�~}~͂��͂��́��̀��̀������������̀���́��̀���~��~}��~}��}|��}|��}}�}}�~~~�~~}�~~}́��̀��̀��̀��̀��������̀��̀������̀��̀���������~~��~~��~�~��~�~��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̈́��̓��͂��̀�̀��}�~}�~~�~~́���~�}}́��̀��}~�}|~�}|~�}{}�|{{���~~~��~}|͂��͂��́�������~}��~}��~~��~~�́�̀�~�}}~̀�����~��}}��}}��}|�}|�}}~�}}~�}}}�~~|�~~|́��̀��̀��̀��̀������������̀��̀�́�̀�������~~��~~��~~��~~�~~�~~�~~~�~~~�}��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̓��͂��́��}��}��~|�~|�~}}�~}}̀��~}�~}̀��~��~}�}}��}}��||}�|}|�|}|�|}|�}}|�}}}�~z͂��́��̀���~��~��~}��}}��~~��~~���~�~~~���~��~}��}}��}}��}|��|}~�}}~�}}~�}}|�~~{�~~{́��̀��̀�����������������̀�̀����~��~��~~��~~��~~��}}~�}~~�}~~�~~}�~~}�~~}��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂��́��̀~��~}��~}��}|�}|}�}||�}||�}�~~~�~}~�}�~~�}}~�|}~�|}~�|||�{}{�{|�{|�||}�}}{�}}ź��̀���~��~}��~}��}|��}|��}}�}}�~~~�~~}�~~}�~��~~��}}��}}~�}}~�}}~�|}}�}}}�}}}�}}|�}}{�}}{̀��̀���������~~��~~��~�~��~�~���~��~~��~~��~~��}~~�}}~�}}}�}}}�}~}�~}|�~~|��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̓�̓�͂��́��́�����~�~���͂��́���~��~}��~}��}|��}|�||}�||}�~~~�~~~�}}}͂��́��́��̀��̀��������́��́�����~́��̀�����~~��~~��~}��}}��~~��~~��~~~�~�}́��̀��̀��������������̀��̀�����̀��̀������������������~���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̓��̓��͂��̀�̀��~}��~}��~~��~~�̓�̀�~�}}́��̀�~}��}|��}|��}{�|{~�||}�||}�~��|||͂��́��́��̀�̀�����������́��́�̀̀�����~~��~}��~}��}}��}}�}}~�}}~�~}}�~~|�~~|́��̀��̀��̀��̀��������������̀�̀�̀�̀�������~~��~~��~~��~~�~~�~~�~�~�~��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̓��͂��́��}��}��~|��}|��}}�}}���}}̀��~��~}��}|�}|�||}�|}}�|}|�|}|�}}{�}}{�~~z͂��́��̀���~��~��~}��~~��~~��~~��̀�~̀��~��~}��}}��}}��}}~�}}�}}}�}}}�}}}�~~|�~~|́��̀��̀����������������̀�̀�̀��������~~�~~�~~��~~~�~~~�~~~�~~}�~~}�~~}��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂��́���~��~}��~}��}|��}|�||}�||}�~~~�~~~�}}}�~��~~��}}��}}~�}}~�|}~�|}|�|||�|||�||{�}}{�}}ź��̀�����~~��~~��~}��}}��~~��~~��~~~�~�}���~~��~~��}}�}}�|}�}}}�}}}�}}}�}}|�}}{�}}{̀��̀������������������~������~~��~~�~~�~~~�}}~�~~}�~~}�~~}�~~}�~~}�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������}��}}��|{��{{��{z��zy�xx�xx�xx�xx�ww�wu�~zD�xc��~��}|��{|��z|��zz��yz��xy��wy��wy�vy�vx�vv�~yv�~yt�}~t�}~��~��}}��{|��z|��z|��x{��w{��v{��vz��uz�uz�u�~�~{�|z�{z�{x�zw�yw�~xw�~xv�~yw�~xw�~xE�xfv�~yv�}}��~��}~��{}��z}��z}��w|��v|��u|��u|��u|�u|�u��~��~}��||��y|��y{��wz�vz�vz�vz�~wz�~w{�~w~����|��z|��zv�~zz�}{z�~{z�~{x�}|y�}|z�}|~�~~�~{�|{�{{�{z�{x�yw�xw�xw�~xw�~xv�~xt�~{=�ty��~��~|��|{��{{��{z��yy��xx�wx�wx�wx�wx�wu�~{u�}{C�wbC�un��~��}}��||��z|��z{��xz��wy�vy�vy�vy�vy�vu�~zv�~zv�~yE�xmv}�u}~��~��}~��{}��y}��y|��w|��v|��u|��u|��u{�u{�u����~��~~��}|��y|��yz�wz�vz�~wz�~wz�~x{�~y{�}z�}�{x~}x~}w�~x{�~|z}~����|�}w�~zw�~zw�~zw�~zw�~zw�~zv�~yv�~yv�~yt�}}>�ty���}�}|�|y�zy�zy�zw�yw�~xw�~xw�~xw�~xw�~wu�~zt�}|>�uwu~}���~��}}��|{��z{��zy��xy�wx�wx�wx�wx�~wx�~wt�}|u�}|w�}|C�wyv}}�v}}���~��}}��{}��y}��y|��w{��v{�u{�u{�u{�vz�~v�������}��|y��wy��wx�~w|�|y�~zy�~zz�}zy�}z{�}{�~~vvz~z~y~~�y~~�{}�u�~zD�xc=�t{v�~yv�~yt�}~t�}~=�t{u|}��~�~{�|z�{z�{x�zw�yw�~xw�~xv�~yw�~xw�~xE�xfv�~yv�}}Cyw�v}~�w~}���~��~}��||��y|��y{��wz�vz�vz�vz�~wz�~w{�~w~����|��z|��zv�~zz�}{z�~{z�~{x�}|y�}|z�}|�z~~z~~z~�{}z}��}��}}��|{��{{��{z��zy�xx�xx�xx�xx�ww�wu�~zD�xc��~��}|��{|��z|��zz��yz��xy��wy��wy�vy�vy�vv�~yv�~xt�}~t�}}��~��}}��{|��z|��z|��x{��w{��v{��vz��uz�uz�u�~�~{�|z�{z�{x�zw�yw�~xw�~xv�~xw�~xw�~xF�ydw�~wx�~y��~��}~��{}��z}��z}��w|��v|��u|��u|��u|��u|�u��~��~}��||��y|��y{��wz�vz�vz�vz�~w{�~w{�~w~��~��|��z|��zw�~zz�~zz�~yz�~yz�~yz�~x{�~y~�~~�~{�|{�{{�{z�{x�yw�xw�xw�~xw�~xv�~xt�~{<�t}��~��~|��|{��{{��{z��yy��xx�wx�wx�wx�wx�wu�~{u�~z=�tuC�uk��~��}}��||��z|��z{��xz��wy�vy�vy�vy�vy�vu�~zw�~yw�~yG�ydv�~|w�~{��~��}~��{}��y}��y|��w|��v|��u|��u|��u{�u{�u����~��~~��}|��y|��yz�wz�vz�~wz�~wz�~x{�~x{�~y�}~�|~�~~~y�~yy�~yy�~xz�~y{�~{����|�}w�~zw�~zw�~zw�~zw�~zw�~zv�~yv�~yv�~yt�}}=�tz���}�}|�|y�zy�zy�zw�yw�~xw�~xw�~xw�~xw�~wu�~zu�~{>�uwu}~��~��}}��|{��z{��zy��xy�wx�wx�wx�wx�~wx�~wt�}|u�}|w�~z@�vtv}w�}|��~��}}��{}��y}��y|��w{��v{�u{�u{�u{�vz�~v�������}��|y��wy��wx�w|�|y�~yy�~yz�~zy�~y{�~z}���yy}�~~y�~{y�~{y}}z}}{}}u�~zD�xc={t�v�~yv�~xt�}~t�}}=ut�u~}��~�~{�|z�{z�{x�zw�yw�~xw�~xv�~xw�~xw�~xF�ydw�~wx�~yBww�v~}�w�}}��~��~}��||��y|��y{��wz�vz�vz�vz�~w{�~w{�~w~��~��|��z|��zw�~zz�~zz�~yz�~yz�~yz�~x{�~yy~y~y}�z}{}y��xy��vx�vx�v|��|~��||�t|�tv�~xw�~y}��x}��x|��w|��w{��u|��t|��t|��t}��t|�uz�u��~��w{��v{��u{��uz�u{�~v~vz�~x��~���y�yy�vy�vx�vz��zw�yw�xw�x{��zy��xy��xx�xw�wB�wc~��}|��{|��x{��v{��vz��vv�}{��~|��{}��x}��v}��v}��t}��t|�u|�u{�~v��~z�z{��uz�uz�u}��|y�~yy�~yw�}z��~�}��u}�ux�~z{�~wv�~xv�~yw�w~��}|��{z��yy��wy��wx�ww�xz��wx�vw�w����}��z}��v|��u|��uy��u~��tz�uz�u|�~w����w��or�}oo�|uo�|uq�{tz��ux�}|y��v}�u~z�y�v}�~w{�}z{�}z{�~y>�uot�}~v�~xw�~y��~��w{��v{��u{��uz�u{�~v~vz�~x��~���y�yy�vy�vx�v~}��������|~}�|~}�v~}�{�}|}}�}}�}}�}}�}}�~~~��~~��~~��̀�̀�������������������������~~���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~~�~~}�~~�~~�~~�~~���̀�́�́������������́������������̀����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~~�~~~�~~���̀�̀�̀�́��́��͂��||�||�}}�}}�}}�~~�~~�̀�̀�́�́�͂�����������́�́�͂��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̀��̀��́��́��́��͂��͂���~��������̀��́��͂�͂�͂��̓��̓�������~~�~~̀�͂�}̓��̓��̓��̓�̈́����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������||�||�}}}�}}�}}�}}~�~~���̀�̀�������������������������~~���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������}}~�}}�}}�}}~�}}~�~~~���̀�́�́������������~~́�����������̀�͋�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~~~�~~~�~~�~~��~~���̀�̀�̀�́�́�͂�����������́�͂������������~͂�́�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~�����̀��̀��́�́�͂��͂��͂���~�}������̀�~́�͂��͂��̓�̓��̈́���~~́��������͂�͂�͂��̈́��̓����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������||�{{�||�}}�}}�}}�}}�}}�}}�~~�̀�������������������������}~���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������||�||�||�}}�}}�~~�~~��̀��́�́�������������~̀������������́�́����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������}}}�}}}�~~~�~~�~~�̀��̀�̀�́�́�͂����������̀�́��̓�������������͂�͂����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������}�������̀��́��́��́��͂�͂�͂��̀�~�~~��~~�����́��̀��̓�̓�̓��̓��̈́���̀~~�������͂��͂��̓��̓�̈́���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~~���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������́������������̀�����������̀�́�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������||�||�}}�}}�}}�~~�~~�̀�̀�́�́�͂�����������́�́�͂�����������͂�̓����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~��������̀��́��͂�͂�͂��̓��̓�������~~�~~̀�͂�}̓��̓��̓��̓�̈́�����~�~��̓��̓��̓��̈́��̈́����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������=�t{>qu�=�t{u|}�H\z�v{~�PR~�xy�Cyw�v}~�w~}�vx~�w{~�x|~��u||v�|t��ww�ww�ww�wx�wx�x{�xy�z{��z~~z~~z~�{}z}�zz�zz���{|�{|�{}�|}~�{}~�w��x��~z��|{��|{��}z��}{��|z��|z��}}��||��}}��Agv�@iv�WP��<�t~t~}�G[y�Gix�yu��t}zu��zu��xv�S[}�yy�Fay�v}~�x}~�I^z�wz~�x|~�~t���w�y|w��}v��}v��{v��yx�zx��zx��{w��{z��zz���~�z~~�z~~�z~~�z~}�{~~�|y��|y�zz�zz�{z��{z��{|�{}~�{}~�z�~|��~z��}z��}z��~{��|z��}{��}{��|{��||��||��Bdw�RP��t~^F�zu�zu�SN�Clw�u~}�wy�}t��{u��t��yw��|t��WX��\R��`V��Hfz�v}~�x|~�UU��yz�yz�~w���u�}|w��|w��|w��|v��yy�yy�{x��|z��{{���}wwz}~�z}~�z}~�{~~�{~~��}z��}|��}{��}{����||��||��{|�z{�}}�~{���x�~{��}z��}z��}{��}}��}|��}|��~}��}}��}}��>qu��u�z{u��w=��w=��yv��zu��_N��H\z�v{~�PR~�xy��t�}�t�~{w��yx��yx��yv��{x��yy�yy�yy��[]��zx��vx~�w{~�x|~��u||v�|t��ww�ww�ww�wx�wx�x{�xy�z{�w��|w��|v��|x��|x��|y��{y��{w��{w��{x��|{��|{���zz�zz���{|�{|�{}�|}~�{}~�w��x��~z��|{��|{��}z��}{��|z��|z��}}��||��}}��z��|��~{��}z��}z��~}��}|��}|��}|��}|��~}��}}��={t�>ou�=ut�u~}�Afv�v{~�PR~�xy�Bww�v~}�w�}}vx~�w{~�x|~��u~|u�{u��xw�xw�ww�vz~�wx�wx�zx��yy��zz��y~y~y}�z}{}�{{�{{���z{�z{�z|�|}~�{}~�x��y��}z��|{��|{��}{��~|��|{��|{��||��}}��}~��Agv�@iv��u~zv�yv�vy~�<�t~u}}�OV}�Iex��t{�t}~t�yv�yv�xw�xv�VY��yy��Dcx�v}~�x~}�NX}�xz�y{�u�u�|v��{v��{v��{v��yx�zw��zw��{x��{y��{{���~}{�~}�~�y}~�y}~�y~}�z~}�{~}�~}�}|�||�||�{{��{{��{|��{}�|}�z�~~z��~z��|z��|z��~|��}|��}{��}{��}|��||��||��Dbx�RP�txv�xv�]G~�yu�yu�xw�SN�Clw�u|}�xy�t�{u��}u��w=��w=��yw��zv��wx�wx�WX��\R��^Y��Hdz�v|~�x}~�[T��yz�y{�~v��v��}w��|w��|w��}x��|w��{y��{y��|z��|z��|{���~ww~~�~�z|�z|�y}~�z}~�{~~��~~��}|��}}��}}����}|��}|��||��{|�|}�z�y��~z��}z��}z��~{��~|��~|��~|��~}��}|��}}��>ou��u�||t��{u��x=��x=��{u��yv��xy�xy�zv��xz�Rb|�Afv�v{~�PR~�xy��t�~t�|v��yx��yx��zv��|v��{w��{w��zx��][��zx��vx~�w{~�x|~��u~|u�{u��xw�xw�ww�vz~�wx�wx�zx��yy��zz��w��}w��}w��|x��|x��|y��|y��}z��}z��|y��|z��|z���{{�{{���z{�z{�z|�|}~�{}~�x��y��}z��|{��|{��}{��~|��|{��|{��||��}}��}~��z��{��~{��}z��}z��~}��~~��~|��~|��}{��~}��~}��>�uot�}~u{~�}t�}t�yw�xw�xw�wx�vz~�vx�vx�x|~�v{~�x}}�~}��������|~}�|~}�v~}�{�}|����x~}�x~}�z}~�{|~�y��~y��}y��|z��|z��z{�|}�z|~�z|~�y{�{}~�y}~��u~zv�yv�vy~�But��t{|u�~t�wx�wx�xw�ww�WP��w{~��u�~~u��|v��zv��zv��yw��xx�xy�xy�z|�y|~�y|~�|��x|�|}{�y}~�~~�~~�}�~yz~}�x}}�~~~�~}�}~�}~�}�}~�w}}�w}}�{~}�~}�y}}�y�~~z��}z��|y��|y��||��z{�{|�{|�y|�{}~�{}~�}t��xv�xv�K[{�wx�wx�xw��t�~}u��{u��w=��w=��zv��xx�wx�wx�]N��u|~�x}}�~v��}v��}w��{y��{y��zw��zy��z{�z{�{|�z|~�x{~��~�}�}�{���}~��|}~�|}~�z|~�u�}~~��~���}}��|�|�|~�|~~�{}~�{}~�}~~�{~}�z�z��~z��|z��|z��}|��|{��}}�}}�{{�~~�|}�~t��|t��{u��y<��y<��{u��xw�xy�xy�xw�xz�Rb|�u{~�u�~t��}u��}t��}t��zw��{x��{x��{x��yy��yz�}t�}t�yw�xw�xw�wx�vz~�vx�vx�x|~�v{~�x}}�w��}w��}x��|x��|x��{y��|z��{{��{{��zy��xy�y|~�����x~}�x~}�z}~�{|~�y��~y��}y��|z��|z��z{�|}�z|~�z|~�y{�{}~�y}~�{�z��~z��}{��}{��}{��}|��}}��}}��}|��}}�{}��������������������������~������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̀�́������������́̀������������}}̀��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������͂�̓�����������́�͂��}||�|||�}}~�~~~�~~~�~~~�����́��̀��́��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~�~��̓��̓��̓��̈́��̈́�����~~�~~��͂��͂��͂��̓��̓��~�̀́��́����̀��̀��̀��́��́��͂���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̀������������̀��{{�{{�||���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̀�́������������~͉���}||�|||�||�}}�}}��}~~���͆�~̀�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������́�́�͂����������̓�́�͂��}}~�~}�~~�~~~�~~~�~~̀��̀�̀����̀��́������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~��~�������̓��̓��̓��̈́��̓����̀̀�̀�����̀��̀��͂��͂��̓�����̀��̀��̀��̀��̀��̀��́��́��́����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~�������������||��|||��~~�~~��op��}}�}}��zz��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~~́������������̀��}}}�}}}�|}~�nn�nn�~�}~�������̈́�~́�̓�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~~́�͂������������́��́���~~�~~~�}~������~�́��́�����̀��́�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̀����������͂��͂��̓��̓��̈́��̀́̀��̀������́��́��͂��́��͂����������̀�́�̀��̀��́��́��́����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~�������������}}}�||�~~~�onn�onn�~~�~~�������~~����}��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������́̀������������}}̀���}}}�}}}�~}̀}̀}�~~̀~̀�̀�̀��͈�̀��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������́�͂��}||�|||�}}~�~~~�~~~�~~~�����́��̀��́���~~~�~�~~����̀��������́��́��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~~�~~��͂��͂��͂��̓��̓��~�̀́��́����̀��̀��̀��́��́��͂�����������̀�́��̀��̀��́��́��͂�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~��}~��{}��z}��z}��w|��v|��u|��u|��u|�u|�u|�|�}�|�{�|�y�|�y�|�w�|�v�|�u�|�u�}�u�}�u�}u��~��~}��||��y|��y{��wz�vz�vz�vz�~wz�~w{�~w{�{�~�{�|�{�y�{�y�{�w�|v�|v�|v�}w�}~w�}~x~����|��z|��zv�~zz�}{z�~{z�~{x�}|y�}|z�}|��z�z�~~|�~~~�~~}�~~}�~~~�~~}�~~|����}��{~��y~��y~��w~��v}��u}��u~��t~��t}�uy��y�}�y�{�z�y�z�y�z�x�z�w�{�v�{�v�{�u�|u�|u����~~��|~��y~��y}��w}��v}�v}�v}�v}�~w}�~wx��y�~�x�|�y�y�y�y�y�x�zw�{w�{w�{~w�|~x�|~x���{��{~}�~~�~~�~~�~}�~|�~|��~~�y�{�y�{�}~|�}~~�}~~�}~~�~~~�}~}�}~}�~�}�{�y�y�w�v�u�u~�t�ttw��w�}�w�|�x�z�x�z�x�x�y�w�y�v�y�v�z�v�zv�{v~�~�~~�{~�y~�y~�w�~�v�~v�~v�~v�~~w�~~ww��w�~�w�|�w�z�w�z�xy�yx�zx�zx�{x�{~x�|~w�~�{�{~|�~~�~~~�~~~�~~}�~~}�~~}}|�{�{~}�{~}�}~}�}~|�}~|�}~|�}~|�}~}�}~}|�|�}�|�{�|�y�|�y�|�w�|�v�|�u�|�u�}�u�}�u�}uv��v�}�v�{�w�{�w�{�w�y�x�x�x�w�x�w�y�v�zv�zv{�{�~�{�|�{�y�{�y�{�w�|v�|v�|v�}w�}~w�}~xv�v}�v}�w{�w{�wz�xy�yy�yy�z~x�z~y�{~y��z�z�~~|�~~~�~~}�~~}�~~~�~~}�~~|�|�|~~�{~~�{~~�{~~�|~}�|~}�}~~�}~~�}~|�}~|�}~}��~��}~��{}��y}��y|��w|��v|��u|��u|��u{�u{�u{�|�}�|�{�{�y�{�y�|�w�|�v�|�u�|�u�}�u�}u�~u����~��~~��}|��y|��yz�wz�vz�~wz�~wz�~x{�~y{�}z|�|��|�|�|�y�|�y�|w�|w�|~x�|~x�}~x�}~y�~~y�}�{x~}x~}w�~x{�~|z}~��~�}�y�}{z~~z~~��~�~�~�~~�~~~�~~~����}~��{~��y~��y~��w}��v}��u}��u~��u}�u~�uy��y�}�y�{�y�y�y�y�z�x�z�v�z�v�z�v�{v�|v�|v����~��}~��y~��y}�x~~x~x~x~~x~�~x~~yy��y�~�y�|�y�y�y�y�zx�{x�{~y�{~y�|~y�|~z�}~y��~�~�w��zzz~������~�~~�~~�~�~~}��~�~�~~�~~�~~~�~~~�~~~~�~�}~�{�y�y~�w~�u�u�u�~�uuuw��w�}�w�{�w�z�w�z�x�x�y�w�y�v�y�v�zv�{v�{v��~�|~�y~�y~w�}w�~~x�~~x�~~x�~~x�~~yw�w~�w}�x{�x{�yy�z~y�{~y�{~y�{~z�|~y�|~z���~�}�{���xzz��~��~�~�~�~~~�~~�~~~�~~�}~~�}~~�}|�~~}�~~�~~�~~~�~~}�~~~{�|�}�|�{�{�y�{�y�|�w�|�v�|�u�|�u�}�u�}u�~uu��u�~�v�|�v�{�v�{�w�y�w�x�x�w�x�w�yw�zw�zw|�|��|�|�|�y�|�y�|w�|w�|~x�|~x�}~x�}~y�~~yw�w~�w}�x|�x|�x~{�z~z�{~z�{~z�{~z�{~z�|~{��~�}�y�}{z~~z~~��~�~�~�~~�~~~�~~~||�{~�|~~�|~~�|~|�}~}�}~}�}~}�~~}�~~|�~~~��~��}}��{}��y}��y|��w{��v{�u{�u{�u{�vz�~v{�{�}�{�{�{�y�{�y�{�w�|�v�|�u�|�u�|v�}v�~~v�������}��|y��wy��wx�~w|�|y�~zy�~zz�}zy�}z{�}{}~���}�}�}�y�}�y�}x�}~z�}~{�}~{�}~{�}~{�~~{�~~vvz~z~y~~�y~~�{}��~���~��}z~z~~�}�~�~�~�~��~��~����}~��{~��y~��y~��w}��u}��u}��u}�u~�u~vx��y�}�x�|�y�y�y�y�y�x�z�w�zv�zv�{v�|v�|v������}~��z~��z~�z~{�~{�~{�~{~~{}~{zy���y�}�zz�zz�{~y�|~{�|~{�|~{�}~{�}~|�}~|�~�~��}ww~�����~�~�~��}�~{~~{~~~~�~��~�~�~�~~�~~�~�}~�{~�y~�y~�w�~�v�~�u�~�uu�~u�~vw��w�}�w�|�w�z�w�z�x�x�yw�zw�zw�zw�{w�{~w���}�y�y�~y�~~z�~~{�~~{�~~{�~~{�~~|y~x~�x}�y|�y|�{~{�|~{�|~{�|~{�|~|�|~|�}~{��}��}��|{{~�����~�~�~~�}|�~~�~}�~}�~~~�~}�~~�~~�~~�~�~~{�{�}�{�{�{�y�{�y�{�w�|�v�|�u�|�u�|v�}v�~~vv��v�~�v�|�v�{�v�{�wy�xx�yx�yx�yx�z~x�{~x}~���}�}�}�y�}�y�}x�}~z�}~{�}~{�}~{�}~{�~~{�z~�z~~�y~~�z~}�z~}�z~|�{~|�|~|�|~|�|~{�|~{�|~|�~���~��}z~z~~�}�~�~�~�~��~��~{�|~�|~�}~~�}~~�~~~�~~~�~~}�~~}�~�~�~~~��~��~}��||��y|��y{��wz�vz�vz�vz�~wz�~w{�~w{�{�~�{�|�{�y�{�y�{�w�|v�|v�|v�}w�}~w�}~x~����|��z|��zv�~zz�}{z�~{z�~{x�}|y�}|z�}|��z�z�~~|�~~~�~~}�~~}�~~~�~~}�~~|�z~~z~~z~�{}z}��~��~��||�~~|�~~~~�~�~��~��~��~�~����~~��|~��y~��y}��w}��v}�v}�v}�v}�~w}�~wx��y�~�x�|�y�y�y�y�y�x�zw�{w�{w�{~w�|~x�|~x���{��{~}�~~�~~�~~�~}�~|�~|��~~�y�{�y�{�}~|�}~~�}~~�}~~�~~~�}~}�}~}��~��~�~{{~����~��~��~�~��~��~�~�z~�z��~��~�~�~��~���~���~�~�~�~~�{~�y~�y~�w�~�v�~v�~v�~v�~~w�~~ww��w�~�w�|�w�z�w�z�xy�yx�zx�zx�{x�{~x�|~w�~�{�{~|�~~�~~~�~~~�~~}�~~}�~~}}|�{�{~}�{~}�}~}�}~|�}~|�}~|�}~|�}~}�}~}��~���~~�~~|~~|~~~����~�~�~��||�|}�~}�~}�~~�~~��~��~�~~�~�~{�{�~�{�|�{�y�{�y�{�w�|v�|v�|v�}w�}~w�}~xv�v}�v}�w{�w{�wz�xy�yy�yy�z~x�z~y�{~y��z�z�~~|�~~~�~~}�~~}�~~~�~~}�~~|�|�|~~�{~~�{~~�{~~�|~}�|~}�}~~�}~~�}~|�}~|�}~}��~��~��||�~~|�~~~~�~�~��~��~��~�~�|~~�|~�}~}�~~~�~~~�~�~~��~��~��~��~�~��~��}~��{}��z}��z}��w|��v|��u|��u|��u|��u|�u|�|�}�|�{�|�y�|�y�|�w�|�v�|�u�|�u�}�u�}�u�}u��~��~}��||��y|��y{��wz�vz�vz�vz�~w{�~w{�~w{�{�~�{�|�{�y�{�y�{�w�|v�|v�|v�}w�}~w�}~x~��~��|��z|��zw�~zz�~zz�~yz�~yz�~yz�~x{�~y��z�z�~~|�~~}�}~|�}~|�}~}�}~|�~~{����}��{~��y~��y~��w~��v}��u}��u~��t~��t}�uy��y�}�y�|�z�z�z�z�z�x�z�w�{�v�{�v�{�u�|u�|u����~~��|~��y~��y~��w}��v}�v}�v}�v}�~w}�~wx��y�~�x�|�y�y�y�y�y�x�zw�{w�{w�{~w�{~x�|~x���{��{�~}�~~�}�}�~{�~{�~z��~~�y�{�y�{�|~|�}~}�|~}�|~}�}~}�}~|�}~|�~�~�{�y�y�w�v~�u~�u~�u�ttw��w�}�w�|�x�z�x�z�x�x�y�w�y�v�y�v�z�v�z�v�{v~�~�~~�{~�y~�y~�w�~�v�~v�~v�~v�~~v�~~ww��w�~�w�|�w�z�w�z�xy�yx�zx�zx�zw�{~x�|~w�~�{�{~|�~~}�~~}�~~}�~~{�~~{�~~{}~|��{�{~}�{~}�|~}�}~|�}~|�}~|�|~|�|~}�}~||�|�}�|�{�|�y�|�y�|�w�|�v�|�u�|�u�}�u�}�u�}uv��v�}�v�|�w�{�w�{�w�y�w�x�x�w�x�w�y�v�zv�zv{�{�~�{�|�{�y�{�y�{�w�|v�|v�|v�}w�}~w�}~xv�v~�v}�w{�w{�wz�xy�yy�yy�zx�z~y�z~y��z�z�~~|�~~}�}~|�}~|�}~}�}~|�~~{|�|~~�{~~�{~~�{~~�|~}�|~}�|~}�|~}�|~|�|~|�|~|��~��}~��{}��y}��y|��w|��v|��u|��u|��u{�u{�u|�|�}�|�{�{�y�{�y�|�w�|�v�|�u�|�u�}�u�}u�~u����~��~~��}|��y|��yz�wz�vz�~wz�~wz�~x{�~x{�~y|�|��|�|�|�y�|�y�|w�|w�|~x�|~x�}~x�}~y�}~y�}~�|~�~~~y�~yy�~yy�~xz�~y{�~{���~�y�~�{z~~�z~~��~~�~~}�~~}�~~}�~~}�~~}�~~}����}~��{~��y~��y~��w}��v}��u}��u~��u}�u~�uy��y�}�y�{�y�y�y�y�z�x�z�v�z�v�z�v�{v�|v�|v����~��}~��y~��y}�x~~xxx~~x~�~x~~xy��y�~�y�|�y�y�y�y�zx�{x�{~y�{~y�|~y�|~y�|~y��~�y��{{{~�}�~�}�}�~}�~|�~|�~�~~}��~~�}~~�~~~�~~~�~~}�~~}�~~}~�~�}~�{�y�y~�w~�v�u�u�~�uuuw��w�}�w�{�w�z�w�z�x�x�y�w�y�v�y�v�zv�{v�{v��~�|~�y~�y~w�}w�~~x�~~x�~~x�~~x�~~xw�w~�w}�w{�w{�yy�z~y�{~y�{~y�{~z�|~y�{~y���|�|���yz~z~�~}�~}�~}�~}�~~}�~~}�~}~~~~�}~~�}~~�}|�}~}�}~~�}~~�~~~�}~}�~~~|�|�}�|�{�{�y�{�y�|�w�|�v�|�u�|�u�}�u�}u�~uu��u�~�v�|�v�{�v�{�w�y�w�x�x�w�x�w�yw�zw�zw|�|��|�|�|�y�|�y�|w�|w�|~x�|~x�}~x�}~y�}~yw�w~�w}�x|�x|�x~{�z~z�z~z�z~z�{~z�{~z�|~{���~�y�~�{z~~�z~~��~~�~~}�~~}�~~}�~~}�~~}�~~}~|�}�{�|~~�|~~�|~|�}~~�}~}�}~}�}~}�~~|�}~~��~��}}��{}��y}��y|��w{��v{�u{�u{�u{�vz�~v{�{�}�{�{�{�y�{�y�{�w�|�v�|�u�|�u�|v�}v�~v�������}��|y��wy��wx�w|�|y�~yy�~yz�~zy�~y{�~z}~���}�}�}�y�}�y�}x�}~z�}~{�}~{�}~z�}~z�~~z}���yy}�~~y�~{y�~{y}}z}}{}}�������|{~{~�~~}�~~~�~~�~~�~�~�~~����}~��{~��y~��y~��w}��v}��u}��u}�u~�u~�ux��y�}�x�|�y�y�y�y�y�x�z�w�zv�zv�{v�|v�|v������}~��z~��z~�z~{�~{�~{�~z~~z~~zzy���y�}�zz�zz�{~y�|~z�|~{�|~{�|~{�}~{�}~{������{}}~}�~�~�~�~~�~~�~~~���~�~{~~{~~�}~}�~~�~~�~~�~~~�~~~�~~�~�}~�{~�y~�y~�w�~�v�~�u�~�uu�~u�~vw��w�}�w�|�w�z�w�z�x�x�y�w�zw�zw�zw�{w�{~w���}�y�y�~y�~~z�~~{�~~{�~~z�~~z�~~{y~x~�x}�y|�y|�z~{�{~{�|~{�|~{�|~{�|~|�}~{~�~��~���y~~�~}�~~�~~�~~�~�~~�~}}�~}�~~�~}�~}�~~~�~~}�~~�~~�~~~�~~�~~{�{�}�{�{�{�y�{�y�{�w�|�v�|�u�|�u�|v�}v�~vv��v�~�v�|�v�{�v�{�wy�xx�yx�yx�yx�z~x�{~w}~���}�}�}�y�}�y�}x�}~z�}~{�}~{�}~z�}~z�~~zz~�z~~�y~~�z~}�z~}�z~|�{~|�|~|�|~|�|~{�|~{�|~{�������|{~{~�~~}�~~~�~~�~~�~�~�~~{|~�|~�|~�|~�~~~�~~~�~~}�~~}�~�~�~~~��~��~}��||��y|��y{��wz�vz�vz�vz�~w{�~w{�~w{�{�~�{�|�{�y�{�y�{�w�|v�|v�|v�}w�}~w�}~x~��~��|��z|��zw�~zz�~zz�~yz�~yz�~yz�~x{�~y��z�z�~~|�~~}�}~|�}~|�}~}�}~|�~~{y~y~y}�z}{}~��~��~~�|}�~~}�~~�~�~�~�~�~�~�~�����~~��|~��y~��y~��w}��v}�v}�v}�v}�~w}�~wx��y�~�x�|�y�y�y�y�y�x�zw�{w�{w�{~w�{~x�|~x���{��{�~}�~~�}�}�~{�~{�~z��~~�y�{�y�{�|~|�}~}�|~}�|~}�}~}�}~|�}~|~�~��}�}}~��~�~�~��~��~~�~�~�~�z~�z��~�~�~�~��~���~��~�~�~�~~�{~�y~�y~�w�~�v�~v�~v�~v�~~v�~~ww��w�~�w�|�w�z�w�z�xy�yx�zx�zx�zw�{~x�|~w�~�{�{~|�~~}�~~}�~~}�~~{�~~{�~~{}~|��{�{~}�{~}�|~}�}~|�}~|�}~|�|~|�|~}�}~|���~}~�}}��~��~�~�~�~�~�{�~{�{�}�~}�~}�~~�~~��~��~�~�~�~{�{�~�{�|�{�y�{�y�{�w�|v�|v�|v�}w�}~w�}~xv�v~�v}�w{�w{�wz�xy�yy�yy�zx�z~y�z~y��z�z�~~|�~~}�}~|�}~|�}~}�}~|�~~{|�|~~�{~~�{~~�{~~�|~}�|~}�|~}�|~}�|~|�|~|�|~|~��~��~~�|}�~~}�~~�~�~�~�~�~�~�~��{~|~�}}�}~~�}~~�~�~~��~��~��~��~�~}��x}��x|��w|��w{��u|��t|��t|��t}��t|�uz�uy�~�z�}�x�yz��z��z��z�u�|�t�|�t�z�z�{~v��~��w{��v{��u{��uz�u{�~v~vz�~xx��w�z�|�u�y�}�y�}�|v�y�{�y�y�y�y�{v�~~x��~���y�yy�vy�vx�v{��}���~�w��w��x��x�y�x�{�x�{~�u�x�y�z�v}���{��y�|�v�|�v~��u~��t�~�t�~�t}�t�vx��w�}�x�y�x�~�x�~�y�|�y�|�y�z�y�z�y�z�{~w�z�w|�~��z�u}��t}��t~~�z~v|�~v|�~vz�~w�}�ww���u�|�wyw��w���y�{�w�{�x�y�x�y�{�w�x�y|���~���~��}���}��}�~�|�x}�~v�}�tx����~���}�w��w���x���x�{�w�x�y�v�{w{�~��z�|�y�{�v�{�v�t�}�t~�uw��w�|�v�z�v�y�v�y�w�}�|�v�x�{�x�{�x�z�w�z�y�wy��z�y�|�v�z�u�z�u�~t�|�z�}�v�}�v�{�x~x�~xu���u�|�wz�x�}�x�}�w�}�{~v�v�|�v�|�|~y�|~y�x�wy���}���}��{���{���z��y�~~�t~�t�|vv�t�}�v�y�v�~�v�~�v���w�}�u�{�u�{�u�{�w�w�yvy�~�z�}�x�yz��z��z��z�u�|�t�|�t�z�z�{~vv��w�~�u�{�u�y�u�y�vy�w�|�yv�yv�x�y�y~x�x�wx��w�z�|�u�y�}�y�}�|v�y�{�y�y�y�y�{v�~~xu��t�|�w�y�w�}�w�}�v��y�v�u�z�u�z�|~z�w�x�w�y{��}���~�w��w��x��x�y�x�{�x�{~�u�x�y�z�vt��t�}�u�z�w�y�w�y�x�y�u�}�xw�xw�vx�yx�wx��~|��{}��x}��v}��v}��t}��t|�u|�u{�~v|���y�|z�~�z�y�z�y�{�u�{�u�|u�|u�z�w��~z�z{��uz�uz�u}��|y�~yy�~yw�}zx��w�z�zx�y�}�y�}�y�~�x�|�y�z�y�z�x�|�z�v�~}{��~�}��u}�ux�~z{�~w�x~�|~�y�y}v��}v��~u���w�y�x�w�x�w�x�w�y�v�yw}�~�{�}�w~��|~��|~�u�~�t|�u|�~vx�~�v�{�v�z�y�}�y�}�x�}�y�{�y�z�y�z�|u�|u�y�x��{�x�}�u�}�~�}�~}�}{�~x�~~y�~~y�}�t��t{�}{w���w�z�yx�y�~�y�~�x�~�x�|�~}~�~}~�y�y�w�x|�~�}�|�}�y|��|��~{���}�v}�v}�v�|�u�}�uv��~�x�y�}�v�y�w�v�z�v�z�v�y�w�w�x�v{�~�y�{�{�w�|�v�|�v�}�t�~�t�|t�|t�|�w�~~ut��v�|�v�zw�w��w�~�w�}�w�{�w�{�y�y�w�{�x�xw���x�y�{�y�|�{�|�{�|�z�{�z�~~y�~~y�~�w�{�v�{�vu��u�{�y~{�x�~�x�~�v��v��v�|�v�|�v�z�w�y�w�wz�~�}�~�y�x}y��}y���y�}}�v�z�x�z�x�{�u�z�u�z�uu��z|�x{�x�w�x�w�u�}�u�}�v�x�v�x�z~y�xv�wx|���y�|z�~�z�y�z�y�{�u�{�u�|u�|u�z�wx���w�}�w�y�v�x�v�x�w�}�y�x�xx�xx�{v�z~w�|~wx��w�z�zx�y�}�y�}�y�~�x�|�y�z�y�z�x�|�z�v�~}{�t�~�u�}�w�z�v�}�v�}�w�y�u�}�yx�yx�y�w�|~z�v�y�x~�|~�y�y}v��}v��~u���w�y�x�w�x�w�x�w�y�v�yw~x~��u�~�w~}�w~�w~�wy�wy�|v�|v�vx�zw����}��z}��v|��u|��uy��u~��tz�uz�u|�~ww�~~�|�y�x�{�u�{�u�y�v�z�|�{�x�{�x�}~y�z�v����w��or�}oo�|uo�|uq�{tz��ux�}|y��v}�uw�~�{y�}~z�y���y���x�~�u�y�{�y�{�y�w�y�w�{�u~z�y�v}�~w{�}z{�}z{�~yz��{�}�~�{u��{u���zw�x�y�v�x�v�x�w�w�w�w�}~z���{�v~�y~�y�u~t}�u}�uz�~v~�~w�tv��u�|�w�x�wx�wx�x�}�y�}�{�x�{�x�y�x�}w�y�w}�~�}y��~z�}�~�}�~}�}�~~�y~�y�~yu��yy~y~��w���w���v�~�z{�}}|�}}|�x�x�v�x{�~�{�|�~�w}x��}x���~vz}���~~x�~~x�|�v�~~u�|�ty���~~t��~t���w{�wz�v�x�v�x�yy�x�w�yvy��{�{�{�w�{�{�{�{|�}�|�y~�u~�u�}~vt��v�|�w�z�{�x�{�x�w�|�{u�}�u�}�u�w�|�x�y�w�yz��{y�~~z�~}|�~}|z���z�y�z�|�z�|�{�w�{�xt��x�|�y�x�w�~�w�~�y�y�v�~�~}|�~}|�v�z�{u�w�w}�~�|�}�{�z~w��~w���|w�z�{�z�w�z�w�z�u�|v�{u~y�z}�}|�|�|�|~��w{�y~{�y~{�xw�xw�z~{w�~~�|�y�x�{�u�{�u�y�v�z�|�{�x�{�x�}~y�z�vt��u�}�x�|�v{�v{�xx�y�w�w{�w{�y�w�w�w�v�zw�~�{y�}~z�y���y���x�~�u�y�{�y�{�y�w�y�w�{�uu�t�|�u�z�w�|�w�|�w�w�x�x�|~|�|~|�y�w�v�y�u�zz��{�}�~�{u��{u���zw�x�y�v�x�v�x�w�w�w�w�}~z~w��v}�y~}�{~|�{~|�v}�y~}�x~}�x~}�wy�w~y�xx��~��w{��v{��u{��uz�u{�~v~vz�~xx��w�z�|�u�y�}�y�}�|v�y�{�y�y�y�y�{v�~~x��~���y�yy�vy�vx�v{��}���~�w��w��x��x�y�x�{�x�{~�u�x�y�z�v~}��������|~}�|~}�v~}�{�}|{��|�|�}}�{~�{~�x~�v|�yw�yw�zx�{~w�|~x|�~��z�u}��t}��t~~�z~v|�~v|�~vz�~w�}�ww���u�|�wyw��w���y�{�w�{�x�y�x�y�{�w�x�y|���~���~��}���}��}�~�|�x}�~v�}�tx����~���}�w��w���x���x�{�w�x�y�v�{wx�~�y�x�~�{�~~�~~�{�~�{�v�}~}�}~}�|�u�}x�~~{z�z|�|}�{~�{~�v}�u{�wx�wx�wy�{~z�|~wy��z�y�|�v�z�u�z�u�~t�|�z�}�v�}�v�{�x~x�~xu���u�|�wz�x�}�x�}�w�}�{~v�v�|�v�|�|~y�|~y�x�wy���}���}��{���{���z��y�~~�t~�t�|vv�t�}�v�y�v�~�v�~�v���w�}�u�{�u�{�u�{�w�w�yvx��y�x�}�{�~��~��x�|�y�{�x�x�x�x�y�v�|v�{v��z~�{|�|~��|~��|~�w}�xy�xy�xx�y~x�z~yx��w�z�|�u�y�}�y�}�|v�y�{�y�y�y�y�{v�~~xu��t�|�w�y�w�}�w�}�v��y�v�u�z�u�z�|~z�w�x�w�y{��}���~�w��w��x��x�y�x�{�x�{~�u�x�y�z�vt��t�}�u�z�w�y�w�y�x�y�u�}�xw�xw�vx�yx�wx{��|�|�}}�{~�{~�x~�v|�yw�yw�zx�{~w�|~xy~�|~~�|~}�}~�}~�|~~�z~}�z~{�z~{�w~{�z~z�z~y����̀��̀��́��́��́��͂��͂�������̀�̀��́��́��́�͂��͂��~��������̀��́��͂�͂�͂��̓��̓��~�~��̀�̀�̀��́�́�́�͂�̓��̓��������~~�~~̀�͂�}̓��̓��̓��̓�̈́��}}~�{�}�~~~�~~~�~���̀��́�͂�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̀��̀��̀��́��́��́��͂��͂��͂��~�~���̀�̀�̀�̀�́�͂��͂�����̀��̀��̀��́��͂��͂��͂��̓�̓���~�~�~�~�~̀�̀�́�́�́��͂�͂��~~~�~���~~��~~���̀�̀�͂��̓��̈́���}}~�~�|�~~~�~~~�~�~~}�~~�~~��̀��̀�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̀��̀��̀�́��́�́�́��͂�͂���~~~�~~~�~~~�~�~�~̀��̀�̀�́�́�́���~�~��̀��̀��̀��́��͂��͂��͂��̓��̓���~~~�~~}�~~}�~~~�~~~�~̀��̀�~̀�~́��́��͂��}}~�{��~~�~~���~����́�͂��̓��~~|�}}}�}}~�||~�||~�}}}�~~�}�}�}�̀���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̀�̀��́��́��́�͂��͂��~~~�~~~�~~~�~~~�~~~�~�~����̀�́��́��~�~��̀�̀�̀��́�́�́�͂�̓��̓���}}}�}}}�}}~�}}~�}}~�~~}���~�~̀��̀�̀��}}~�{�}�~~~�~~~�~���̀��́�͂���}}|�}}}�||}�||~�||~�}}�}}}�}}��}}��~�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~�����̀��̀��́�́�͂��͂��͂�����̀��̀��̀��́��́��́��͂�͂�͂���~�}������̀�~́�͂��͂��̓�̓��̈́��~�~���̀�́�́�́�͂�~̓��̓����~~́��������͂�͂�͂��̈́��̓��~~~̀̀�||~�||~�|}~�}~�~~�~~��̀��́��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̀��̀��̀��́��́�́�͂��͂��̓��~�~�~��̀�̀�́�́�́��͂��͂���������̀��́��͂��͂��̓��̓��̈́���~�~~}�~~��̀�̀�́��́��́��͂�͂��}}~�~̀���~~�~~�~~�~~�������͂��̓��̓��~~}̀�~���||��|}��}~~�}~~�~̀�̀�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̀��̀��̀��́��́��́��͂�͂��̓���~~}�~~~�~~~�~�~�̀�~̀�̀�́�́�~͂��~�~������̀��́�͂��͂��͂��̓��̈́���~~~�}}}�}}|�~~~�~~~�~�~̀�~̀�~́�~́�́��~~~�~̀�}}�}}�}~�}~��~��~�̀��́��̓���~~|�~~}�}}~�}}�}}�~~}�}}}�}}~�}}~�~~�����~�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̀��̀��̀��́��́��́��͂�͂�͂���}}~�}}~�~~~�~~~�~~~�~~~���̀��́��́���~�~���̀�́�́�́�͂�~̓��̓���|||�||}�}|~�}}~�}}~�~~�}����̀��̀��́�~�~~~̀̀�||~�||~�|}~�}~�~~�~~��̀��́���}}{�}}|�}}|�||}�||}�~}~�~}�~~��~~��~~�~�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������}�������̀��́��́��́��͂�͂�͂���~��̀��̀��̀��́�́��́��͂�͂��̓��̀�~�~~��~~�����́��̀��̓�̓�̓��̓��̈́��̀�~�~����̀�́��́�́�͂�͂��̓���̀~~�������͂��͂��̓��̓�̈́��~~�~~��|}~�|}~�}}��|}��}~~�}~~��̀�́��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̀��̀��̀��́��͂��͂��͂��̓��̓���~�}��~�~̀̀�́��́��́�͂��͂��̀�~�������̀��̀�́��́��̓�̈́�̈́���}�~~~�~~~�~�~̀�~̀�́��́��́�́�͂��~|̀~̀~��~�~�~��~�������͂��̓��̓���~}�~��||}�||}�||~�||�|}~�|}~�}~��́�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̀��̀��̀��́��͂��͂��͂��̓�̓��~~}�~~}�~~~���̀��̀��̀��́�~́�͂�~̀�~�~������̀�́�́��́��͂��̓��̈́��}}}�}}~�}}�}}~�}}~��~̀��̀��̀�~̀��́��~}~�~~���}~�}~�}��}��~��~�̀��́��͂���~|�|�}}}�~}�~}�}}��~~~�}~�}~�~~��̀����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~��̀��̀��̀��́�́��́��͂�͂��̓���}}|�}}}�}}~�~~}�~~}�~~���̀��̀�́�~̀�~�~����̀�́��́�́�͂�͂��̓���|||�||}�||}�||~�||~�}}�~~����̀��̀�~̀�~�~~�~~��|}~�|}~�}}��|}��}~~�}~~��̀�́���~~{�}}|�}}|�}|~�}|~�}}|�}}}�~~}�~~}�~~~�~~~�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~��������̀��́��͂�͂�͂��̓��̓��~�~��̀�̀�̀��́�́�́�͂�̓��̓��������~~�~~̀�͂�}̓��̓��̓��̓�̈́��}}~�{�}�~~~�~~~�~���̀��́�͂������~�~��̓��̓��̓��̈́��̈́��}�~��~}~�~}~�}}~�}}~�~~��~~����̀��́��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̀��̀��̀��́��͂��͂��͂��̓�̓���~�~�~�~�~̀�̀�́�́�́��͂�͂��~~~�~���~~��~~���̀�̀�͂��̓��̈́���}}~�~�|�~~~�~~~�~�~~}�~~�~~��̀��̀���|z|̀~̀��~~��~~��~��}�������͂��̓��̓���|�}̀�~�}�}�}|}�}}}�}}�}}�~~��̀�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~�~��̀��̀��̀��́��͂��͂��͂��̓��̓���~~~�~~}�~~}�~~~�~~~�~̀��̀�~̀�~́��́��͂��}}~�{��~~�~~���~����́�͂��̓��~~|�}}}�}}~�||~�||~�}}}�~~�}�}�}�̀���}~�}~���~~��~~��}�}~��~�~̀��́��͂���{�~~|�~~}�~}}�~}}�~}�~~}�~}�~}���̀�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~�~��̀�̀�̀��́�́�́�͂�̓��̓���}}}�}}}�}}~�}}~�}}~�~~}���~�~̀��̀�̀��}}~�{�}�~~~�~~~�~���̀��́�͂���}}|�}}}�||}�||~�||~�}}�}}}�}}��}}��~����}�~��~}~�~}~�}}~�}}~�~~��~~����̀��́���}}{�}}{�}}|�}|~�}|~�}}�~}�}}�}}�~~|�̀������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������z~~z~~z~�{}z}��~��~��||�~~|�~~~~�~�~��~��~��~�~�zz�zz���{|�{|�{}�|}~�{}~��~|~}{~�{�~~{�~~~�~��~���~���~���~���~���~�w��x��~z��|{��|{��}z��}{��|z��|z��}}��||��}}������~�}~�~~�~���������������������~��~�~{{~����~��~��~�~��~��~�~�z~�z��~��~�~�~��~���~���~��z~|{z~�z~z~~����������~�����~��|�~~|�~~~�~��~���~���~���~���~���~��������}��|}��{}��{~��~���������������������������~�~~�~~�~����������������������~���~~�~~|~~|~~~����~�~�~��||�|}�~}�~}�~~�~~��~��~�~~�~�~��{~||~�z�~~z�~~~������~���~���~���~���~��~~�~��~���~���~���~���~���~���~���~���~���~����}�}}��}}��}~����������������������������������������������������~��~��||�~~|�~~~~�~�~��~��~��~�~�|~~�|~�}~}�~~~�~~~�~�~~��~��~��~��~�~�~|~}{~�{�~~{�~~~�~��~���~���~���~���~���~��~�~��~���~���~���~���~���~���~���~���~���~�����~�}~�~~�~�������������������������������������������������������~�z~~�z~~�z~~�z~}�{~~�������~�|z�~z�~~������~���~���~���~���~�|y��|y�zz�zz�{z��{z��{|�{}~�{}~��~�~{�~~|�~~|�~~~�~��~���~���~���~���~���~�z�~|��~z��}z��}z��~{��|z��}{��}{��|{��||��||�����������~��~����������������������������������~���~�{{~������~��~��~���~�z~�~��~���~���~���~���~���~����~�{�~}z�~z�~~������������~���~������~�~�}�~~|�~~|�~~�~��~���~���~���~���~���~�����~��}~��|~��|��~����������������������������~�~����������������������������������~���~���~{{~����������~���~�|~z��{}�~~}�~~}��~~��~��~���~���~���~���~���~��~{�~~z�~}z�~}~�~�����~���~���~���~���~��������������~���~���~���~���~���~��������~��}~��}~��}��������������������������������������������������������������~�|z�~z�~~������~���~���~���~���~��~~~~�~~~�~�~�~~��~��~���~���~���~���~��~�~{�~~|�~~|�~~~�~��~���~���~���~���~���~���~�����������~���~���~���~���~���~���~����������~��~������������������������������������������������������������������}wwz}~�z}~�z}~�{~~�{~~������z�~~z�~~~�~��~���~���~���~���~���~��}z��}|��}{��}{����||��||��{|�z{�}}���~��~}�~~}�}}�}�������������������~{���x�~{��}z��}z��}{��}}��}|��}|��~}��}}��}}�����������������������������������������������zz~������~���~���~�{�~~{�~~~�~��~���~���~���~���~���~������|�}z�|z�|~�~��������������������~��~~�~~}�~}�~������������������~���������~��}~��}������������������������������������������������������������������������z�z�~�����������~���~���~���~~~��~��~��~��~���~���~���~���~���~���~�����~�|�~|�}|�}~�~����������������������~����������������������~���~������������~��~�����������������������������������������������������������������������������z�~~z�~~~�~��~���~���~���~���~���~��~�~���~��~���~���~���~���~���~���~���~���~���~��~}�~~}�}}�}��������������������������������������������~���~���~����������������������������������������������������������������������������������������zz�zz���{|�{|�{}�|}~�{}~��~|~}{~�{�~~{�~~~�~��~���~���~���~���~���~�w��x��~z��|{��|{��}z��}{��|z��|z��}}��||��}}������~�}~�~~�~�������������������z��|��~{��}z��}z��~}��}|��}|��}|��}|��~}��}}�����������������������������������������������z~|{z~�z~z~~����������~�����~��|�~~|�~~~�~��~���~���~���~���~���~��������}��|}��{}��{~��~���������������������������~�~~�~~�~��������������������������~��{���������������������������������������������������������������������������������{~||~�z�~~z�~~~������~���~���~���~���~��~~�~��~���~���~���~���~���~���~���~���~���~����}�}}��}}��}~�������������������������������������������������������������~��~����������������������������������������������������������������������������~|~}{~�{�~~{�~~~�~��~���~���~���~���~���~��~�~��~���~���~���~���~���~���~���~���~���~�����~�}~�~~�~�������������������������������������������������������������������������������������������������������������������������������������������������y~y~y}�z}{}~��~��~~�|}�~~}�~~�~�~�~�~�~�~�~��{{�{{���z{�z{�z|�|}~�{}~��~|~}{~�{�~~{�~~�������~���~���~���~���~�x��y��}z��|{��|{��}{��~|��|{��|{��||��}}��}~���~�~~�~~�~~�~������������������������~�~��}�}}~��~�~�~��~��~~�~�~�~�z~�z��~�~�~�~��~���~��~��z~|{{~�z�~z�~~����������~��~��~��|�~~|�~~���~���~���~���~���~���~�������}��|}��{}��{~��~�������������������������~�}�~~�~~�~�����������������������~}~�}}��~��~�~�~�~�~�{�~{�{�}�~}�~}�~~�~~��~��~�~�~�~�~�|~||~�z�~z�~~�������������~���~���~��~~�~~��~��~���~���~���~���~���~���~���~���~���}�}}��}}��}~���������������������������~������������������������~��~��~~�|}�~~}�~~�~�~�~�~�~�~�~��{~|~�}}�}~~�}~~�~�~~��~��~��~��~�~�~|~}{~�{�~~{�~~�������~���~���~���~���~��~~�~��~��~���~���~���~���~���~���~���~���~��~�~~�~~�~~�~��������������������������������������������������������~}{�~}�~�y}~�y}~�y~}�z~}�{~}����|�z{�~{�~��~���~���~���~���~���~���~�~}�}|�||�||�{{��{{��{|��{}�|}��~~�~|�~~|�~~|�~~������������������~�z�~~z��~z��|z��|z��~|��}|��}{��}{��}|��||��||������~��~~��~~��~������������������������������~�~�~~~��������~��~��~�~�}���}�y��~���~���~���~���~���~���~����~{�~~z�~z�~~�������������������~~�~|�~~}�~~}�~~�~��������������~���~���~��~��|~��}~��}����������������������������~�~�������������������������������~��~��~~~~�����~���~���~���~���~���~�{~y��z}�~~}�~~}��~��~��~���~���~���~���~��~��~|�~~z�~}z�~}~������������������~��~�~�����������~���������~���~���~�����~��}~��}~��}������������������������������������������������������������|�z{�~{�~��~���~���~���~���~���~���~��}~~}~�}~~�~~�~~��~��~��~���~���~���~���~��~~�~|�~~|�~~|�~~������������������~���~����������~���~���~���~���~���~���~�����~��~~��~~��~�������������������������������������������������������������~ww~~�~�z|�z|�y}~�z}~�{~~��~��~z�~~z�~~��������~���~���~���~���~��~~��}|��}}��}}����}|��}|��||��{|�|}��~~�~}�~}}�}}�}�������������������z�y��~z��}z��}z��~{��~|��~|��~|��~}��}|��}}��������~~��~~��~��������������������������������zz~����������~��~��~{�~~{�~~�~���~���~���~���~���~���~�����|�}z�|z�|~��������������������~~�~~}�~~}�~}�~����������������������������}��}���������������������������~��~��~��������������������������������~����z�z��������������~���~���~�~}~~~~��~��~��~���~���~���~���~���~���~����~|�~}|�}|�}~���������������������~������������������������������~~��~�������������������������������������������������������������������������~��~z�~~z�~~��������~���~���~���~���~�~�~~�~��~��~��~��~���~���~���~���~���~���~��~~�~}�~}}�}}�}�������������������������������������������~������~�������~~��~~��~����������������������������������������������������������������������{{�{{���z{�z{�z|�|}~�{}~��~|~}{~�{�~~{�~~�������~���~���~���~���~�x��y��}z��|{��|{��}{��~|��|{��|{��||��}}��}~���~�~~�~~�~~�~������������������������z��{��~{��}z��}z��~}��~~��~|��~|��}{��~}��~}�����������������������������������������z~|{{~�z�~z�~~����������~��~��~��|�~~|�~~���~���~���~���~���~���~�������}��|}��{}��{~��~�������������������������~�}�~~�~~�~������������������������~��|�����������������������������������������������������������������������~�|~||~�z�~z�~~�������������~���~���~��~~�~~��~��~���~���~���~���~���~���~���~���~���}�}}��}}��}~���������������������������~��������������������������~�������~��~���������������������������������������������������������������������~|~}{~�{�~~{�~~�������~���~���~���~���~��~~�~��~��~���~���~���~���~���~���~���~���~��~�~~�~~�~~�~����������������������������������������������������������������������������������������������������������������������������������������~}��������|~}�|~}�v~}�{�}|{��|�|�}}�{~�{~�x~�v|�yw�yw�zx�{~w�|~x����x~}�x~}�z}~�{|~�~~�~�}~~�|}}�|}}�|}}�|}|�}}}�}}}�}}}�~}}�~}y��~y��}y��|z��|z��z{�|}�z|~�z|~�y{�{}~�y}~����������������������~���~���~���~���~���~�x�~�y�x�~�{�~~�~~�{�~�{�v�}~}�}~}�|�u�}x�~~{z�z|�|}�{~�{~�v}�u{�wx�wx�wy�{~z�|~w}~�}�|~�{~{�{~{�|~}�|~|�~~|�~~|�~}|�~��}�~��~�|}}�|}}�}}}�|}}�}}}�}}}�}}|�}}~�~}~��������������������~�~�~�~�~���~�����������������~���~���~���~���~���~���~�x��y�x�}�{�~��~��x�|�y�{�x�x�x�x�y�v�|v�{v��z~�{|�|~��|~��|~�w}�xy�xy�xx�y~x�z~y~~�~�}~�{~|�{~|�|}}�}}|�}~}�}~}�~}~�}�~}}~~�~}�|~~�}}~�}}~�}}~�|}}�}}}�}}}�}}|�}}}�~}}��~���������������������~���~���~���~���~���~����������~���~���~���~���~���~���~���~���}�{��|�|�}}�{~�{~�x~�v|�yw�yw�zx�{~w�|~xy~�|~~�|~}�}~�}~�|~~�z~}�z~{�z~{�w~{�z~z�z~y~~�~�}~~�|}}�|}}�|}}�|}|�}}}�}}}�}}}�~}}�~}~}�}~�}}~�|}~�|}~�~~�}}~�~}~�~}~�}}}�}}~�~}~���������������������~���~���~���~���~���~��~��~���~���~���~���~���~���~���~���~���~���}�|��x|�|}{�y}~�~~�~~�}�~yz~}�x}}�x��{|�}~||v�|v��w���x}�w{�w{�{~x�|~x�|~y~~~�~}�}~�}~�}�}~�w}}�w}}�{~}�~}�y}}�������~���~���~���}���}���}���}���}��}�}�y�~~z��}z��|y��|y��||��z{�{|�{|�y|�{}~�{}~���~���������������������������������~���~�|��~�y�|}x��}x��~y���z�z�{x�{x�}~v�}u�~~vy�}|����v~�w{�y~z�y~z�x~y�{~y�{~y�����~��~��~��~��}��}��}��}~}}�~�~��~���~���~���~���}���}���}���}���}��}�}��������������������������|~~���������������������������������~���~���~�z���}z�|{|x��|x���w�}�w�z�zv�zv�{~w�{~y�|~x~{~�|~~�~}�����w~}�x~~�y~{�y~{�z~z�{~y�|~z����������~���~���~��}��}��}��}~�}�}��~��~���}���}���}���}��}���}���}���}���}��}�����������������������������������~���~���~���������������������~���������~���~���~�x��{|�}~||v�|v��w���x}�w{�w{�{~x�|~x�|~y~y~�{~}��~��~�~�z~~�{~�y~z�y~z�z~z�{~z�{~{������~���~���~���}���}���}���}���}��}�}���}��}��}��}���}���}���}���}���}���}��}�~}~��~���������������������������������~���~�������������������~���~���~���~���~���~��~�}�}�{���}~��|}~�|}~�z|~�u�}~{���{w~�{w~��xz�x~z�{~{�{~{�|~z�}}z�}}{~��~���}}��|�|�|~�|~~�{}~�{}~�}~~�{~}����������������~���~���~���~���}���}���}�z�z��~z��|z��|z��}|��|{��}}�}}�{{�~~�|}��������������������������������������~���~�}����|x��|x���w�{�zx�}~w�}~w�~~x�}~}�~~xz~~�{x~�{x~��x~|�y~z�{~z�{~z�|~z�|}|�|}|�������������������~���~���~��}��}�}����������~���~���~���~���}���}���}���}���}�}�~~������������~~��~~�~~�~~���~�~~����������������������������������������~�~|��~�{w�{w��xy�xy�|~y�|~y�|~z�|~y�~}{z~��~~��~��|~��|~��z~~�z~|�{~{�{~{�}~~�|~z�}}|�����������������~���~���}���}���~���~���}��~��~���~���~���~���~���~���}���}���}���}���}������������������������������������������~���������������������������������~���~���~�{���{w~�{w~��xz�x~z�{~{�{~{�|~z�}}z�}}{|~�}~~��~��~~��~~��{~��z~}�z~{�z~{�|}|�{}|�|}}���������������~���~���~���~���}���}���}��~��~���~���~���~���~���}���}���}���}���}���}��������������������������������������~���~���������������������������������~���~�����x~}�x~}�z}~�{|~�~~�~�}~~�|}}�|}}�|}}�|}|�}}}�}}}�}}}�~}}�~}y��~y��}y��|z��|z��z{�|}�z|~�z|~�y{�{}~�y}~����������������������~���~���~���~���~���~�{�z��~z��}{��}{��}{��}|��}}��}}��}|��}}�{}���~�����������������������������������������}~�}�|~�{~{�{~{�|~}�|~|�~~|�~~|�~}|�~��}�~��~�|}}�|}}�}}}�|}}�}}}�}}}�}}|�}}~�~}~��������������������~�~�~�~�~���~�����������������~���~���~���~���~���~���~���~~}��������������~~��~~��~~��������~���������������������������������������~~�~�}~�{~|�{~|�|}}�}}|�}~}�}~}�~}~�}�~}}~~�~}�|~~�}}~�}}~�}}~�|}}�}}}�}}}�}}|�}}}�~}}��~���������������������~���~���~���~���~���~����������~���~���~���~���~���~���~���~���}������������������������������������������~���~��������������������������������������~~�~�}~~�|}}�|}}�|}}�|}|�}}}�}}}�}}}�~}}�~}~}�}~�}}~�|}~�|}~�~~�}}~�~}~�~}~�}}}�}}~�~}~���������������������~���~���~���~���~���~��~��~���~���~���~���~���~���~���~���~���~���}���~�����������������������������������������������������������������������������~�������~�~��̓��̓��̓��̈́��̈́��}�~��~}~�~}~�}}~�}}~�~~��~~����̀��́������~~�~~��͂��͂��͂��̓��̓��}}}�~~~�~~~�}|}�}|}�||~�||��}}��}}��~�̀��́���~�̀́��́����̀��̀��̀��́��́��͂���}�}�~~~�~~�~~�}}��}}��~~��~~���̀��́�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������|z|̀~̀��~~��~~��~��}�������͂��̓��̓���|�}̀�~�}�}�}|}�}}}�}}�}}�~~��̀���}}̀�̓��~~�~~�}}�}~����͂��̓��̓���|||�~�~�||}�||}�{|~�||}�|}~�|}~�}~���̀��̀́�́���������������́��͂��͂���~~|�~~}�~~}�}}~�}}~�}}�}}��}}��}}��~~���̀�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������}~�}~���~~��~~��}�}~��~�~̀��́��͂���{�~~|�~~}�~}}�~}}�~}�~~}�~}�~}���̀���}}�~��}}~�}}~�|}�|}��~~��~~����́��͂���~~z�}}{�}}{�}}|�}}|�}}}�||~�}}�}}�}~��~~����~̀~̀�~~��~~��~~��~~��~��~�̀��́��͂���~~|�~~|�~}}�}}~�}}~�}}~�}}�}}��}}��~~��~������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������}�~��~}~�~}~�}}~�}}~�~~��~~����̀��́���}}{�}}{�}}|�}|~�}|~�}}�~}�}}�}}�~~|�̀���}}}�~~~�~~~�}|}�}|}�||~�||��}}��}}��~�̀��́���}}z�}}z�|||�|||�|||�}|}�}}~�}}~�}}~�}}�~~~���}�}�~~~�~~�~~�}}��}}��~~��~~���̀��́���}}{�}}{�}}|�}}}�}}}�}}}�}}~�}}�}}�~~�~~�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~��~�������̓��̓��̓��̈́��̓���}�~~���||}�||}�|}~�|}~�}~}�}~}�~�̀��́����̀̀�̀�����̀��̀��͂��͂��̓���}}}�~~}�~~~�}}�}}�||��||��}}��}}��~�̀��́�����̀��̀��̀��̀��̀��̀��́��́��́���~�~�~�~~�~~�~~��~~��~~��~~���̀��̀�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~}~���~��~�~�}��}�������́��̓��̓��̀�|̀�~̀�~���{{|�{|}�|}�|}�}~~�~�̀���}}~̀�~́��~~��~~��}}��}}��~��~�́��̓��̓���}}{�}}}�}}}�||~�||~�||�||��|}��|}��}~���̀��̀�́�́��̀��̀������̀��̀��̀��͂��͂���~}�~~}�~~~�~~�~~�~}�}}��~~��~~��~~���̀�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~}}�~�|��}~�}~�|~�|~~�~��~�̀��́��͂���{�~~|�}}~�~}�~}�~}|�}}|�}}~�}}~�}~��~�����}}~�~~��}}��}}��||��|}��}~��}~����́��͂���~~{�~~{�~}|�}}}�}}}�}}}�||�}}��}}��}~��~����̀�~̀�̀������~~�������̀��́��́���~~|�~~|�~~}�}}}�}}}�~}~�}}�}~��}~��~~��~������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������}�~~���||}�||}�|}~�|}~�}~}�}~}�~�̀��́���}}z�}}{�}}|�||~�||~�}}}�}|~�}}~�}}~�}}�~~���}}}�~~}�~~~�}}�}}�||��||��}}��}}��~�̀��́���}}z�}}z�}}{�}}|�}}|�}|}�}}~�}}�}}�~~�~~����~�~�~�~~�~~�~~��~~��~~��~~���̀��̀���~}|�}}|�~~|�}}}�}}}�}}}�}}~�~~�~~�~~��~������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̀����������͂��͂��̓��̓��̈́��~}~�~}��|||�|||�||~�|}}�}~��}~��~�̀��́���̀́̀��̀������́��́��͂��́��͂��~~}�~}�~~~�}}�}}�|}��|}��}}��}}��~�̀��́�����������̀�́�̀��̀��́��́��́���~�~�~���~~��~�������̀��̀�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������}}̀��~~�~~�}~~�}~�����́��̓��̓���~}|���|||�|||�{{|�{|~�|}��|}��}~��̀���}}~̀�~́���~~��~~��}}��}~�����́��͂��̓���~~|�~~|�}}}�}}~�}}~�||�||��|}��|}��~~���̀��́�̀�̀��̀��̀��̀��̀��̀��̀��̀��́��́���}�~}�~~�~~�~~�~~�~~��~~��~~�����̀�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~}�~}��}}}�}}}�|}�|~�~��~�̀��́��͂���~z�}}|�}}~�}}}�}}}�}}}�||}�|}�|}�}~��~����~~~�~��~~��~~��}}��}}��~~��~~�̀��́��͂���~~{�~~{�~}|�}}}�}}}�}|~�|}�}}��}}��}~��~���̀�̀�̀�������������̀��̀��͂���~~}�~~}�~~}�~~~�~~~�~~~�~~�~~��~~��~~���̀�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~}~�~}��|||�|||�||~�|}}�}~��}~��~�̀��́���}}z�}}{�||}�|||�|||�}|{�}|{�}}~�}}~�}~�~~~�~�~~}�~}�~~~�}}�}}�|}��|}��}}��}}��~�̀��́���}}{�}}{�}}|�}}|�}}|�}}}�}}~�}}�}}�}}�~~����~�~�~���~~��~�������̀��̀���~~|�~~|�~~}�~}}�~}}�~}~�~~�}}��}}��~~�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~~�~~��͂��͂��͂��̓��̓��}}}�~~~�~~~�}|}�}|}�||~�||��}}��}}��~�̀��́���~�̀́��́����̀��̀��̀��́��́��͂���}�}�~~~�~~�~~�}}��}}��~~��~~���̀��́�����������̀�́��̀��̀��́��́��͂����~�����������̀�̀��̀�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������}}̀�̓��~~�~~�}}�}~����͂��̓��̓���|||�~�~�||}�||}�{|~�||}�|}~�|}~�}~���̀��̀́�́���������������́��͂��͂���~~|�~~}�~~}�}}~�}}~�}}�}}��}}��}}��~~���̀��̀�̀�̀�̀��̀��̀��̀��̀��̀��́��́��́���~�~�~~�~�~�~~��~~��~~��~~�����̀�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������}}�~��}}~�}}~�|}�|}��~~��~~����́��͂���~~z�}}{�}}{�}}|�}}|�}}}�||~�}}�}}�}~��~~����~̀~̀�~~��~~��~~��~~��~��~�̀��́��͂���~~|�~~|�~}}�}}~�}}~�}}~�}}�}}��}}��~~��~���̀�̀�̀���������̀�̀�̀��̀��́���~~}�~~}�~~~�~~~�~~~�~~�~~�~~��~~�����̀�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������}}}�~~~�~~~�}|}�}|}�||~�||��}}��}}��~�̀��́���}}z�}}z�|||�|||�|||�}|}�}}~�}}~�}}~�}}�~~~���}�}�~~~�~~�~~�}}��}}��~~��~~���̀��́���}}{�}}{�}}|�}}}�}}}�}}}�}}~�}}�}}�~~�~~�����~�����������̀�̀��̀���~~}�~~}�~~}�~~~�~~~�~~~�~~�~~�~~�~~�~������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������ \ No newline at end of file diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows-Default.CellOptionalData.bytes.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows-Default.CellOptionalData.bytes.meta new file mode 100644 index 00000000000..751b257890e --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows-Default.CellOptionalData.bytes.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 1844b4090ac596a41ab4801d67dcfa77 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows-Default.CellProbeOcclusionData.bytes b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows-Default.CellProbeOcclusionData.bytes new file mode 100644 index 00000000000..e503779142d Binary files /dev/null and b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows-Default.CellProbeOcclusionData.bytes differ diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows-Default.CellProbeOcclusionData.bytes.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows-Default.CellProbeOcclusionData.bytes.meta new file mode 100644 index 00000000000..07ff973c9cd --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows-Default.CellProbeOcclusionData.bytes.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 49269760095946145b0059c3d2fe7a76 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows.CellBricksData.bytes b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows.CellBricksData.bytes new file mode 100644 index 00000000000..17327a506da Binary files /dev/null and b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows.CellBricksData.bytes differ diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows.CellBricksData.bytes.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows.CellBricksData.bytes.meta new file mode 100644 index 00000000000..e2458da9a1b --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows.CellBricksData.bytes.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 31225e8b95b15a54c9f44a97ba40def8 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows.CellSharedData.bytes b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows.CellSharedData.bytes new file mode 100644 index 00000000000..e91e0a6a7c4 Binary files /dev/null and b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows.CellSharedData.bytes differ diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows.CellSharedData.bytes.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows.CellSharedData.bytes.meta new file mode 100644 index 00000000000..4e2cbd3426f --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows.CellSharedData.bytes.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 3f309c31ff8c031428b789b6a783dd98 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows.CellSupportData.bytes b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows.CellSupportData.bytes new file mode 100644 index 00000000000..ad5b796cb8e Binary files /dev/null and b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows.CellSupportData.bytes differ diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows.CellSupportData.bytes.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows.CellSupportData.bytes.meta new file mode 100644 index 00000000000..676d6cde83b --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows.CellSupportData.bytes.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 36b94dd10a035fd489b4ebf2710c593a +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows.asset b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows.asset new file mode 100644 index 00000000000..b2243543d88 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows.asset @@ -0,0 +1,365 @@ +%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: 4881f9a2c4d568047b316028d20a8dca, type: 3} + m_Name: 231_APV_Subtractive_NoRealtimeShadows + m_EditorClassIdentifier: Unity.RenderPipelines.Core.Runtime::UnityEngine.Rendering.ProbeVolumeBakingSet + singleSceneMode: 0 + dialogNoProbeVolumeInSetShown: 0 + settings: + m_Version: 1 + dilationSettings: + enableDilation: 0 + dilationDistance: 1 + dilationValidityThreshold: 0.25 + dilationIterations: 1 + squaredDistWeighting: 1 + virtualOffsetSettings: + useVirtualOffset: 1 + validityThreshold: 0.25 + outOfGeoOffset: 0.01 + searchMultiplier: 0.2 + rayOriginBias: -0.001 + collisionMask: + serializedVersion: 2 + m_Bits: 4294967291 + m_SceneGUIDs: + - 911c47a2fe05f9846b9eca70cf7757ee + obsoleteScenesToNotBake: [] + m_LightingScenarios: + - Default + cellDescs: + m_Keys: 0000000004000000020000000600000001000000050000000300000007000000 + m_Values: + - position: {x: -1, y: -1, z: -1} + index: 0 + probeCount: 576 + minSubdiv: 0 + indexChunkCount: 1 + shChunkCount: 1 + bricksCount: 9 + indirectionEntryInfo: + - positionInBricks: {x: -27, y: -27, z: -27} + minSubdiv: 0 + minBrickPos: {x: 24, y: 26, z: 24} + maxBrickPosPlusOne: {x: 28, y: 28, z: 28} + hasMinMax: 1 + hasOnlyBiggerBricks: 0 + - position: {x: -1, y: -1, z: 0} + index: 4 + probeCount: 576 + minSubdiv: 0 + indexChunkCount: 1 + shChunkCount: 1 + bricksCount: 9 + indirectionEntryInfo: + - positionInBricks: {x: -27, y: -27, z: 0} + minSubdiv: 0 + minBrickPos: {x: 24, y: 26, z: 0} + maxBrickPosPlusOne: {x: 28, y: 28, z: 4} + hasMinMax: 1 + hasOnlyBiggerBricks: 0 + - position: {x: -1, y: 0, z: -1} + index: 2 + probeCount: 1152 + minSubdiv: 0 + indexChunkCount: 1 + shChunkCount: 1 + bricksCount: 18 + indirectionEntryInfo: + - positionInBricks: {x: -27, y: 0, z: -27} + minSubdiv: 0 + minBrickPos: {x: 24, y: 0, z: 24} + maxBrickPosPlusOne: {x: 28, y: 3, z: 28} + hasMinMax: 1 + hasOnlyBiggerBricks: 0 + - position: {x: -1, y: 0, z: 0} + index: 6 + probeCount: 1152 + minSubdiv: 0 + indexChunkCount: 1 + shChunkCount: 1 + bricksCount: 18 + indirectionEntryInfo: + - positionInBricks: {x: -27, y: 0, z: 0} + minSubdiv: 0 + minBrickPos: {x: 24, y: 0, z: 0} + maxBrickPosPlusOne: {x: 28, y: 3, z: 4} + hasMinMax: 1 + hasOnlyBiggerBricks: 0 + - position: {x: 0, y: -1, z: -1} + index: 1 + probeCount: 576 + minSubdiv: 0 + indexChunkCount: 1 + shChunkCount: 1 + bricksCount: 9 + indirectionEntryInfo: + - positionInBricks: {x: 0, y: -27, z: -27} + minSubdiv: 0 + minBrickPos: {x: 0, y: 26, z: 24} + maxBrickPosPlusOne: {x: 4, y: 28, z: 28} + hasMinMax: 1 + hasOnlyBiggerBricks: 0 + - position: {x: 0, y: -1, z: 0} + index: 5 + probeCount: 576 + minSubdiv: 0 + indexChunkCount: 1 + shChunkCount: 1 + bricksCount: 9 + indirectionEntryInfo: + - positionInBricks: {x: 0, y: -27, z: 0} + minSubdiv: 0 + minBrickPos: {x: 0, y: 26, z: 0} + maxBrickPosPlusOne: {x: 4, y: 28, z: 4} + hasMinMax: 1 + hasOnlyBiggerBricks: 0 + - position: {x: 0, y: 0, z: -1} + index: 3 + probeCount: 1152 + minSubdiv: 0 + indexChunkCount: 1 + shChunkCount: 1 + bricksCount: 18 + indirectionEntryInfo: + - positionInBricks: {x: 0, y: 0, z: -27} + minSubdiv: 0 + minBrickPos: {x: 0, y: 0, z: 24} + maxBrickPosPlusOne: {x: 4, y: 3, z: 28} + hasMinMax: 1 + hasOnlyBiggerBricks: 0 + - position: {x: 0, y: 0, z: 0} + index: 7 + probeCount: 1152 + minSubdiv: 0 + indexChunkCount: 1 + shChunkCount: 1 + bricksCount: 18 + indirectionEntryInfo: + - positionInBricks: {x: 0, y: 0, z: 0} + minSubdiv: 0 + minBrickPos: {x: 0, y: 0, z: 0} + maxBrickPosPlusOne: {x: 4, y: 3, z: 4} + hasMinMax: 1 + hasOnlyBiggerBricks: 0 + m_SerializedPerSceneCellList: + - sceneGUID: 911c47a2fe05f9846b9eca70cf7757ee + cellList: 0000000004000000020000000600000001000000050000000300000007000000 + cellSharedDataAsset: + m_AssetGUID: 3f309c31ff8c031428b789b6a783dd98 + m_StreamableAssetPath: APVStreamingAssets\1c5559cc330dfeb40b862cf3d9fa6974\3f309c31ff8c031428b789b6a783dd98.bytes + m_ElementSize: 8192 + m_StreamableCellDescs: + m_Keys: 0000000004000000020000000600000001000000050000000300000007000000 + m_Values: + - offset: 0 + elementCount: 1 + - offset: 8192 + elementCount: 1 + - offset: 16384 + elementCount: 1 + - offset: 24576 + elementCount: 1 + - offset: 32768 + elementCount: 1 + - offset: 40960 + elementCount: 1 + - offset: 49152 + elementCount: 1 + - offset: 57344 + elementCount: 1 + m_Asset: {fileID: 4900000, guid: 3f309c31ff8c031428b789b6a783dd98, type: 3} + scenarios: + m_Keys: + - Default + m_Values: + - sceneHash: 596961047 + cellDataAsset: + m_AssetGUID: d32898ed01596e245aba76ef1f07014d + m_StreamableAssetPath: APVStreamingAssets\1c5559cc330dfeb40b862cf3d9fa6974\d32898ed01596e245aba76ef1f07014d.bytes + m_ElementSize: 131072 + m_StreamableCellDescs: + m_Keys: 0000000004000000020000000600000001000000050000000300000007000000 + m_Values: + - offset: 0 + elementCount: 1 + - offset: 131072 + elementCount: 1 + - offset: 262144 + elementCount: 1 + - offset: 393216 + elementCount: 1 + - offset: 524288 + elementCount: 1 + - offset: 655360 + elementCount: 1 + - offset: 786432 + elementCount: 1 + - offset: 917504 + elementCount: 1 + m_Asset: {fileID: 4900000, guid: d32898ed01596e245aba76ef1f07014d, type: 3} + cellOptionalDataAsset: + m_AssetGUID: 1844b4090ac596a41ab4801d67dcfa77 + m_StreamableAssetPath: APVStreamingAssets\1c5559cc330dfeb40b862cf3d9fa6974\1844b4090ac596a41ab4801d67dcfa77.bytes + m_ElementSize: 131072 + m_StreamableCellDescs: + m_Keys: 0000000004000000020000000600000001000000050000000300000007000000 + m_Values: + - offset: 0 + elementCount: 1 + - offset: 131072 + elementCount: 1 + - offset: 262144 + elementCount: 1 + - offset: 393216 + elementCount: 1 + - offset: 524288 + elementCount: 1 + - offset: 655360 + elementCount: 1 + - offset: 786432 + elementCount: 1 + - offset: 917504 + elementCount: 1 + m_Asset: {fileID: 4900000, guid: 1844b4090ac596a41ab4801d67dcfa77, type: 3} + cellProbeOcclusionDataAsset: + m_AssetGUID: 49269760095946145b0059c3d2fe7a76 + m_StreamableAssetPath: APVStreamingAssets\1c5559cc330dfeb40b862cf3d9fa6974\49269760095946145b0059c3d2fe7a76.bytes + m_ElementSize: 32768 + m_StreamableCellDescs: + m_Keys: 0000000004000000020000000600000001000000050000000300000007000000 + m_Values: + - offset: 0 + elementCount: 1 + - offset: 32768 + elementCount: 1 + - offset: 65536 + elementCount: 1 + - offset: 98304 + elementCount: 1 + - offset: 131072 + elementCount: 1 + - offset: 163840 + elementCount: 1 + - offset: 196608 + elementCount: 1 + - offset: 229376 + elementCount: 1 + m_Asset: {fileID: 4900000, guid: 49269760095946145b0059c3d2fe7a76, type: 3} + cellBricksDataAsset: + m_AssetGUID: 31225e8b95b15a54c9f44a97ba40def8 + m_StreamableAssetPath: APVStreamingAssets\1c5559cc330dfeb40b862cf3d9fa6974\31225e8b95b15a54c9f44a97ba40def8.bytes + m_ElementSize: 16 + m_StreamableCellDescs: + m_Keys: 0000000004000000020000000600000001000000050000000300000007000000 + m_Values: + - offset: 0 + elementCount: 9 + - offset: 144 + elementCount: 9 + - offset: 288 + elementCount: 18 + - offset: 576 + elementCount: 18 + - offset: 864 + elementCount: 9 + - offset: 1008 + elementCount: 9 + - offset: 1152 + elementCount: 18 + - offset: 1440 + elementCount: 18 + m_Asset: {fileID: 4900000, guid: 31225e8b95b15a54c9f44a97ba40def8, type: 3} + cellSupportDataAsset: + m_AssetGUID: 36b94dd10a035fd489b4ebf2710c593a + m_StreamableAssetPath: APVStreamingAssets\1c5559cc330dfeb40b862cf3d9fa6974\36b94dd10a035fd489b4ebf2710c593a.bytes + m_ElementSize: 262144 + m_StreamableCellDescs: + m_Keys: 0000000004000000020000000600000001000000050000000300000007000000 + m_Values: + - offset: 0 + elementCount: 1 + - offset: 262144 + elementCount: 1 + - offset: 524288 + elementCount: 1 + - offset: 786432 + elementCount: 1 + - offset: 1048576 + elementCount: 1 + - offset: 1310720 + elementCount: 1 + - offset: 1572864 + elementCount: 1 + - offset: 1835008 + elementCount: 1 + m_Asset: {fileID: 4900000, guid: 36b94dd10a035fd489b4ebf2710c593a, type: 3} + chunkSizeInBricks: 128 + maxCellPosition: {x: 0, y: 0, z: 0} + minCellPosition: {x: -1, y: -1, z: -1} + globalBounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 9, y: 9, z: 9} + bakedSimplificationLevels: 3 + bakedMinDistanceBetweenProbes: 1 + bakedProbeOcclusion: 1 + bakedSkyOcclusionValue: 0 + bakedSkyShadingDirectionValue: 0 + bakedProbeOffset: {x: 0, y: 0, z: 0} + bakedMaskCount: 1 + bakedLayerMasks: + x: 4294967295 + y: 0 + z: 0 + w: 0 + maxSHChunkCount: 1 + L0ChunkSize: 65536 + L1ChunkSize: 32768 + L2TextureChunkSize: 32768 + ProbeOcclusionChunkSize: 32768 + sharedValidityMaskChunkSize: 8192 + sharedSkyOcclusionL0L1ChunkSize: 0 + sharedSkyShadingDirectionIndicesChunkSize: 0 + sharedDataChunkSize: 8192 + supportPositionChunkSize: 98304 + supportValidityChunkSize: 32768 + supportTouchupChunkSize: 32768 + supportLayerMaskChunkSize: 0 + supportOffsetsChunkSize: 98304 + supportDataChunkSize: 262144 + lightingScenario: Default + version: 2 + freezePlacement: 0 + probeOffset: {x: 0, y: 0, z: 0} + simplificationLevels: 3 + minDistanceBetweenProbes: 1 + renderersLayerMask: + serializedVersion: 2 + m_Bits: 4294967295 + minRendererVolumeSize: 0.1 + skyOcclusion: 0 + skyOcclusionBakingSamples: 2048 + skyOcclusionBakingBounces: 2 + skyOcclusionAverageAlbedo: 0.6 + skyOcclusionBackFaceCulling: 0 + skyOcclusionShadingDirection: 0 + useRenderingLayers: 0 + renderingLayerMasks: [] + m_SceneBakeData: + m_Keys: + - 911c47a2fe05f9846b9eca70cf7757ee + m_Values: + - hasProbeVolume: 1 + bakeScene: 1 + bounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 9, y: 9, z: 9} diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows.asset.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows.asset.meta new file mode 100644 index 00000000000..9b3c622fb4a --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/231_APV_Subtractive_NoRealtimeShadows.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1c5559cc330dfeb40b862cf3d9fa6974 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/LightingData.asset b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/LightingData.asset new file mode 100644 index 00000000000..ee356e888e2 Binary files /dev/null and b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/LightingData.asset differ diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/LightingData.asset.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/LightingData.asset.meta new file mode 100644 index 00000000000..c346e2c2030 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows/LightingData.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 653b34d8b91f71b48b36cbc9437144dd +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 112000000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/ProjectSettings/EditorBuildSettings.asset b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/ProjectSettings/EditorBuildSettings.asset index 03026777848..118a58a6743 100644 --- a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/ProjectSettings/EditorBuildSettings.asset +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/ProjectSettings/EditorBuildSettings.asset @@ -155,6 +155,9 @@ EditorBuildSettings: - enabled: 1 path: Assets/Scenes/230_APV_Subtractive.unity guid: 885c03fc42bf0a548b6e415c2f70e55b + - enabled: 1 + path: Assets/Scenes/231_APV_Subtractive_NoRealtimeShadows.unity + guid: 911c47a2fe05f9846b9eca70cf7757ee - enabled: 1 path: Assets/Scenes/240_Lighting_Bicubic_Sampling.unity guid: 9c375b78be67ea4428234deee1bfc581 diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/ProjectSettings/QualitySettings.asset b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/ProjectSettings/QualitySettings.asset index 4f62cc30233..a39bd9cf072 100644 --- a/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/ProjectSettings/QualitySettings.asset +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Lighting/ProjectSettings/QualitySettings.asset @@ -6,7 +6,7 @@ QualitySettings: serializedVersion: 5 m_CurrentQuality: 0 m_QualitySettings: - - serializedVersion: 3 + - serializedVersion: 4 name: 00->DefaultURPAsset pixelLightCount: 4 shadows: 2 @@ -483,17 +483,69 @@ QualitySettings: terrainFadeLength: 5 terrainMaxTrees: 50 excludedTargetPlatforms: [] + - serializedVersion: 4 + name: 09->APV_NoRealtimeShadows + 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: 0 + softParticles: 1 + softVegetation: 1 + realtimeReflectionProbes: 1 + billboardsFaceCameraPosition: 1 + useLegacyDetailDistribution: 1 + adaptiveVsync: 0 + vSyncCount: 1 + realtimeGICPUUsage: 25 + adaptiveVsyncExtraA: 0 + adaptiveVsyncExtraB: 0 + lodBias: 2 + 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: 1e23f43b03a29614baedd721281f66c7, + 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 - Nintendo 3DS: 0 + EmbeddedLinux: 0 + LinuxHeadlessSimulation: 0 Nintendo Switch: 0 - PS4: 0 - PSP2: 0 - Server: 0 + QNX: 0 Standalone: 0 + VisionOS: 0 WebGL: 0 Windows Store Apps: 0 - XboxOne: 0 iPhone: 0 tvOS: 0