diff --git a/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeVolumeEditor.cs b/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeVolumeEditor.cs index dffbc3e31da..93fe0f073d5 100644 --- a/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeVolumeEditor.cs +++ b/Packages/com.unity.render-pipelines.core/Editor/Lighting/ProbeVolume/ProbeVolumeEditor.cs @@ -148,7 +148,7 @@ public override void OnInspectorGUI() if (ProbeVolumeLightingTab.GetLightingSettings().realtimeGI) { - EditorGUILayout.HelpBox("Adaptive Probe Volumes are not supported when using Enlighten.", MessageType.Warning, wide: true); + EditorGUILayout.HelpBox("Adaptive Probe Volumes are not supported when using Realtime Global Illumination(Enlighten).", MessageType.Warning, wide: true); drawInspector = false; } diff --git a/Packages/com.unity.render-pipelines.core/Editor/RenderGraph/RenderGraphViewer.cs b/Packages/com.unity.render-pipelines.core/Editor/RenderGraph/RenderGraphViewer.cs index d6a78d50983..bb0cfd5493d 100644 --- a/Packages/com.unity.render-pipelines.core/Editor/RenderGraph/RenderGraphViewer.cs +++ b/Packages/com.unity.render-pipelines.core/Editor/RenderGraph/RenderGraphViewer.cs @@ -1656,12 +1656,18 @@ void InitializePersistentElements() void OnGraphRegistered(RenderGraph graph) { + if (m_RegisteredGraphs.ContainsKey(graph)) + return; + m_RegisteredGraphs.Add(graph, new HashSet()); RebuildHeaderUI(); } void OnGraphUnregistered(RenderGraph graph) { + if (!m_RegisteredGraphs.ContainsKey(graph)) + return; + m_RegisteredGraphs.Remove(graph); RebuildHeaderUI(); if (m_RegisteredGraphs.Count == 0) diff --git a/Packages/com.unity.render-pipelines.core/Editor/Volume/VolumeComponentListEditor.cs b/Packages/com.unity.render-pipelines.core/Editor/Volume/VolumeComponentListEditor.cs index 36eebd1b566..69af1c4dcdc 100644 --- a/Packages/com.unity.render-pipelines.core/Editor/Volume/VolumeComponentListEditor.cs +++ b/Packages/com.unity.render-pipelines.core/Editor/Volume/VolumeComponentListEditor.cs @@ -236,11 +236,14 @@ public void OnGUI() // Even if the asset is not dirty, the list of component may have been changed by another inspector. // In this case, only the hash will tell us that we need to refresh. - if (asset.isDirty || asset.GetComponentListHashCode() != m_CurrentHashCode) + if (asset.dirtyState != VolumeProfile.DirtyState.None || asset.GetComponentListHashCode() != m_CurrentHashCode) { RefreshEditors(); VolumeManager.instance.OnVolumeProfileChanged(asset); - asset.isDirty = false; + + if ((asset.dirtyState & VolumeProfile.DirtyState.DirtyByProfileReset) != 0) + UnityEditorInternal.InternalEditorUtility.RepaintAllViews(); + asset.dirtyState = VolumeProfile.DirtyState.None; } if (m_IsDefaultVolumeProfile && VolumeManager.instance.isInitialized && m_EditorsByCategory.Count == 0) diff --git a/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeReferenceVolume.Binding.cs b/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeReferenceVolume.Binding.cs index 352f617c2bc..0340eca5044 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeReferenceVolume.Binding.cs +++ b/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeReferenceVolume.Binding.cs @@ -137,8 +137,8 @@ public bool UpdateShaderVariablesProbeVolumes(CommandBuffer cmd, ProbeVolumesOpt parameters.skyOcclusionIntensity = skyOcclusion ? probeVolumeOptions.skyOcclusionIntensityMultiplier.value : 0.0f; parameters.skyOcclusionShadingDirection = skyOcclusion && skyOcclusionShadingDirection; - parameters.regionCount = m_CurrentBakingSet.bakedMaskCount; - parameters.regionLayerMasks = supportRenderingLayers ? m_CurrentBakingSet.bakedLayerMasks : 0xFFFFFFFF; + parameters.regionCount = m_CurrentBakingSet != null ? m_CurrentBakingSet.bakedMaskCount : 0; + parameters.regionLayerMasks = (supportRenderingLayers && m_CurrentBakingSet != null) ? m_CurrentBakingSet.bakedLayerMasks : 0xFFFFFFFF; parameters.worldOffset = probeVolumeOptions.worldOffset.value; UpdateConstantBuffer(cmd, parameters); } diff --git a/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeVolume.hlsl b/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeVolume.hlsl index 97d58df8c8e..73e63fd81e9 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeVolume.hlsl +++ b/Packages/com.unity.render-pipelines.core/Runtime/Lighting/ProbeVolume/ProbeVolume.hlsl @@ -749,6 +749,7 @@ void EvaluateAPVL1L2(APVSample apvSample, float3 N, out float3 diffuseLighting) // ------------------------------------------------------------- void EvaluateAdaptiveProbeVolume(APVSample apvSample, float3 normalWS, out float3 bakeDiffuseLighting) { + bakeDiffuseLighting = float3(0.0f, 0.0f, 0.0f); if (apvSample.status != APV_SAMPLE_STATUS_INVALID) { apvSample.Decode(); diff --git a/Packages/com.unity.render-pipelines.core/Runtime/RenderGraph/IRenderGraphBuilder.cs b/Packages/com.unity.render-pipelines.core/Runtime/RenderGraph/IRenderGraphBuilder.cs index 932cfdde1b0..6103d74dd4b 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/RenderGraph/IRenderGraphBuilder.cs +++ b/Packages/com.unity.render-pipelines.core/Runtime/RenderGraph/IRenderGraphBuilder.cs @@ -228,6 +228,10 @@ void SetRenderAttachment(TextureHandle tex, int index, AccessFlags flags = Acces /// to match the index passed to SetInputAttachment for this texture. /// /// + /// + /// This API is not universally supported across all platforms. In particular, using input attachments in combination with MSAA may be unsupported on certain targets. + /// To ensure compatibility, use `RenderGraphUtils.IsFramebufferFetchSupportedOnCurrentPlatform` to verify support at runtime, as platform capabilities may vary. + /// /// Texture to use during this pass. /// Index the shader will use to access this texture. /// How this pass will access the texture. Default value is set to AccessFlag.Read. Writing is currently not supported on any platform. diff --git a/Packages/com.unity.render-pipelines.core/Runtime/RenderGraph/RenderGraphBuilders.cs b/Packages/com.unity.render-pipelines.core/Runtime/RenderGraph/RenderGraphBuilders.cs index 8d68e74d2e6..99410ecb993 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/RenderGraph/RenderGraphBuilders.cs +++ b/Packages/com.unity.render-pipelines.core/Runtime/RenderGraph/RenderGraphBuilders.cs @@ -1,6 +1,7 @@ using System; using System.Diagnostics; using UnityEngine.Experimental.Rendering; +using static UnityEngine.Rendering.RenderGraphModule.RenderGraph; namespace UnityEngine.Rendering.RenderGraphModule { @@ -399,6 +400,8 @@ public void SetRenderAttachment(TextureHandle tex, int index, AccessFlags flags, public void SetInputAttachment(TextureHandle tex, int index, AccessFlags flags, int mipLevel, int depthSlice) { + CheckFrameBufferFetchEmulationIsSupported(tex); + CheckUseFragment(tex, false); ResourceHandle result = UseResource(tex.handle, flags); // Note the version for the attachments is a bit arbitrary so we just use the latest for now @@ -513,5 +516,24 @@ void CheckResource(in ResourceHandle res, bool checkTransientReadWrite = false) } } } + + [Conditional("DEVELOPMENT_BUILD"), Conditional("UNITY_EDITOR")] + void CheckFrameBufferFetchEmulationIsSupported(in TextureHandle tex) + { + if (enableValidityChecks) + { + if (!Util.RenderGraphUtils.IsFramebufferFetchEmulationSupportedOnCurrentPlatform()) + { + throw new InvalidOperationException($"This API is not supported on the current platform: {SystemInfo.graphicsDeviceType}"); + } + + if (!Util.RenderGraphUtils.IsFramebufferFetchEmulationMSAASupportedOnCurrentPlatform()) + { + var sourceInfo = m_RenderGraph.GetRenderTargetInfo(tex); + if (sourceInfo.bindMS) + throw new InvalidOperationException($"This API is not supported with MSAA attachments on the current platform: {SystemInfo.graphicsDeviceType}"); + } + } + } } } diff --git a/Packages/com.unity.render-pipelines.core/Runtime/RenderGraph/RenderGraphUtilsBlit.cs b/Packages/com.unity.render-pipelines.core/Runtime/RenderGraph/RenderGraphUtilsBlit.cs index 922466b7b00..7eece9d0a40 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/RenderGraph/RenderGraphUtilsBlit.cs +++ b/Packages/com.unity.render-pipelines.core/Runtime/RenderGraph/RenderGraphUtilsBlit.cs @@ -17,6 +17,9 @@ public static partial class RenderGraphUtils /// Returns true if the shader features required by the copy pass is supported for MSAA, otherwise will it return false. public static bool CanAddCopyPassMSAA() { + if (!IsFramebufferFetchEmulationMSAASupportedOnCurrentPlatform()) + return false; + return Blitter.CanCopyMSAA(); } @@ -27,9 +30,53 @@ public static bool CanAddCopyPassMSAA() /// Returns true if the shader features required by the copy pass is supported for MSAA, otherwise will it return false. public static bool CanAddCopyPassMSAA(in TextureDesc sourceDesc) { + if (!IsFramebufferFetchEmulationMSAASupportedOnCurrentPlatform()) + return false; + return Blitter.CanCopyMSAA(sourceDesc); } + internal static bool IsFramebufferFetchEmulationSupportedOnCurrentPlatform() + { +#if PLATFORM_WEBGL + if (SystemInfo.graphicsDeviceType == GraphicsDeviceType.OpenGLES3) + return false; +#endif + return true; + } + + internal static bool IsFramebufferFetchEmulationMSAASupportedOnCurrentPlatform() + { + // TODO: Temporarily disable this utility pending a more efficient solution for supporting or disabling framebuffer fetch emulation on PS4/PS5. + return (SystemInfo.graphicsDeviceType != GraphicsDeviceType.PlayStation4 + && SystemInfo.graphicsDeviceType != GraphicsDeviceType.PlayStation5 && SystemInfo.graphicsDeviceType != GraphicsDeviceType.PlayStation5NGGC); + } + + /// + /// Determines whether framebuffer fetch is supported on the current platform for the given texture. + /// This includes checking both general support for framebuffer fetch emulation and specific support + /// for multisampled (MSAA) textures. + /// + /// The RenderGraph adding this pass to. + /// The texture handle to validate for framebuffer fetch compatibility. + /// + /// Returns true if framebuffer fetch is supported on the current platform for the given texture; + /// otherwise, returns false. + /// + public static bool IsFramebufferFetchSupportedOnCurrentPlatform(this RenderGraph graph, in TextureHandle tex) + { + if (!IsFramebufferFetchEmulationSupportedOnCurrentPlatform()) + return false; + + if (!IsFramebufferFetchEmulationMSAASupportedOnCurrentPlatform()) + { + var sourceInfo = graph.GetRenderTargetInfo(tex); + if (sourceInfo.msaaSamples > 1) + return sourceInfo.bindMS; + } + return true; + } + class CopyPassData { public bool isMSAA; @@ -90,7 +137,7 @@ public static void AddCopyPass( // It would have 1 if the MSAA pass is not able to be used for target and 2 otherwise. // https://docs.unity3d.com/2017.4/Documentation/Manual/SL-ShaderCompileTargets.html // https://learn.microsoft.com/en-us/windows/win32/direct3dhlsl/dx-graphics-hlsl-to-get-sample-position - if (isMSAA && !Blitter.CanCopyMSAA(sourceDesc)) + if (isMSAA && !CanAddCopyPassMSAA(sourceDesc)) throw new ArgumentException("Target does not support MSAA for AddCopyPass. Please use the blit alternative or use non MSAA textures."); using (var builder = graph.AddRasterRenderPass(passName, out var passData, file, line)) diff --git a/Packages/com.unity.render-pipelines.core/Runtime/Volume/VolumeProfile.cs b/Packages/com.unity.render-pipelines.core/Runtime/Volume/VolumeProfile.cs index 60803debd48..14ec9612a4c 100644 --- a/Packages/com.unity.render-pipelines.core/Runtime/Volume/VolumeProfile.cs +++ b/Packages/com.unity.render-pipelines.core/Runtime/Volume/VolumeProfile.cs @@ -22,8 +22,28 @@ public sealed class VolumeProfile : ScriptableObject /// A dirty check used to redraw the profile inspector when something has changed. This is /// currently only used in the editor. /// - [NonSerialized] - public bool isDirty = true; // Editor only, doesn't have any use outside of it + [Obsolete("This field was only public for editor access. #from(6000.0)")] + public bool isDirty + { + get => dirtyState != DirtyState.None; + set + { + if (value) + dirtyState |= DirtyState.Other; + else + dirtyState &= ~DirtyState.Other; + } + } + + [Flags] internal enum DirtyState + { + None = 0, + DirtyByComponentChange = 1, + DirtyByProfileReset = 2, + Other = 4 + } + + internal DirtyState dirtyState; void OnEnable() { @@ -55,9 +75,7 @@ internal void OnDisable() /// Volume Profile editor when you modify the Asset via script instead of the Inspector. /// public void Reset() - { - isDirty = true; - } + => dirtyState |= DirtyState.DirtyByProfileReset; /// /// Adds a to this Volume Profile. @@ -99,7 +117,7 @@ public VolumeComponent Add(Type type, bool overrides = false) #endif component.SetAllOverridesTo(overrides); components.Add(component); - isDirty = true; + dirtyState |= DirtyState.DirtyByComponentChange; return component; } @@ -141,7 +159,7 @@ public void Remove(Type type) if (toRemove >= 0) { components.RemoveAt(toRemove); - isDirty = true; + dirtyState |= DirtyState.DirtyByComponentChange; } } diff --git a/Packages/com.unity.render-pipelines.core/Tests/Runtime/RuntimeProfilerTests.cs b/Packages/com.unity.render-pipelines.core/Tests/Runtime/RuntimeProfilerTests.cs index 1543e270faf..3b570d01be4 100644 --- a/Packages/com.unity.render-pipelines.core/Tests/Runtime/RuntimeProfilerTests.cs +++ b/Packages/com.unity.render-pipelines.core/Tests/Runtime/RuntimeProfilerTests.cs @@ -63,6 +63,7 @@ protected IEnumerator Warmup() class RuntimeProfilerTests : RuntimeProfilerTestBase { [UnityTest] + [UnityPlatform(exclude = new RuntimePlatform[] { RuntimePlatform.WindowsPlayer })] // Unstable: https://jira.unity3d.com/browse/UUM-112472 public IEnumerator RuntimeProfilerGivesNonZeroOutput() { if ((Application.platform == RuntimePlatform.LinuxPlayer || diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Ambient-Occlusion.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Ambient-Occlusion.md index c6b4f3172e9..55dca7373d0 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Ambient-Occlusion.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Ambient-Occlusion.md @@ -1,24 +1,24 @@ -# Ambient occlusion +# Assign an ambient occlusion texture -The High Definition Render Pipeline (HDRP) uses ambient occlusion to approximate ambient light on a GameObject’s surface that has been cast by details present in the Material but not the surface geometry. Since these details don't exist on the model, you must provide an ambient occlusion Texture for HDRP to occlude indirect lighting (lighting from Lightmaps, [Light Probes](https://docs.unity3d.com/Manual/LightProbes.html) or Ambient Light Probes). HDRP also uses the ambient occlusion Texture to calculate specular occlusion. It calculates specular occlusion from the Camera's view vector and the ambient occlusion Texture to dim reflections in cavities. +To assign an [ambient occlusion texture](ambient-occlusion-introduction.md) to a GameObject, follow these steps: -To generate an ambient occlusion Texture, you can use external software like: +1. Use an external software package to create a single-channel ambient occlusion texture that maps the corners and crevices where light is occluded. Use values closer to `0` to indicate more occlusion, and values closer to `1` to indicate less occlusion. -* xNormal -* Substance Designer or Painter -* Knald +1. Create a [mask map](Mask-Map-and-Detail-Map.md#MaskMap) texture, and use the ambient occlusion texture as the green channel. -When authoring ambient occlusion Textures, be aware that a value of 0 specifies an area that's fully occluded and a value of 1 specifies an area that's fully visible. +1. Import the mask map texture into Unity. -When you create the Texture, you must apply it to a Material. To do this, you must use the green channel of a [mask map](Mask-Map-and-Detail-Map.md#MaskMap). +1. Select a material in the **Project** window, then drag the mask map texture into the **Occlusion** (⊙) property of the **Inspector** window. + +HDRP also uses the ambient occlusion texture to calculate specular occlusion, by reducing the intensity of reflections in corners. **Note**: Ambient occlusion in a Lit Shader using [deferred rendering](Forward-And-Deferred-Rendering.md) affects emission due to a technical constraint. Lit Shaders that use [forward rendering](Forward-And-Deferred-Rendering.md) don't have this constraint and don't affect emission. -## Properties +For more information about ambient occlusion texture properties in an HDRP material, refer to the material in [Materials and surfaces](materials-and-surfaces.md). -The ambient occlusion properties are located in the **Mask Map** section of the **Surface Inputs** foldout of your material's **Inspector** window. +## Additional resources -| Property | Description | -| ------------------------------- | ------------------------------------------------------------ | -| **Mask Map - Green channel** | Assign the ambient occlusion map in the green channel of the **Mask Map** Texture. HDRP uses the green channel of this map to calculate ambient occlusion. | -| **Ambient Occlusion Remapping** | Remaps the ambient occlusion map in the green channel of the **Mask Map** between the minimum and maximum values you define on the slider. These values are between 0 and 1.

• Drag the left handle to the right to make the ambient occlusion more subtle.
• Drag the right handle to the left to apply ambient occlusion to the whole Material. This is useful when the GameObject this Material is on is occluded by a dynamic GameObject.

This property only appears when you assign a Texture to the **Mask Map**. | +- [Screen space ambient occlusion (SSAO)](Override-Ambient-Occlusion.md) +- [Ray-traced ambient occlusion (RTAO)](Ray-Traced-Ambient-Occlusion.md) +- [Mask and detail maps](Mask-Map-and-Detail-Map.md#MaskMap) +- [Textures](https://docs.unity3d.com/Manual/Textures-landing.html) diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Environment-Lighting.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Environment-Lighting.md index 4fc7276e640..c81788ce915 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Environment-Lighting.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Environment-Lighting.md @@ -1,52 +1,26 @@ -# Create environment lighting +# Environment lighting -Environment lighting allows you to simulate lighting coming from the surroundings of your Scene. It is common to use environment lighting to simulate sky lighting, but you can also use it to simulate a colored ambient light, or a lighting studio. -In the High Definition Render Pipeline (HDRP), there are two parts to environment lighting: +Simulate light from the surroundings of your scene, for example the sky or a lighting studio, in the High Definition Render Pipeline (HDRP). -* The visual environment, controlled by the [Visual Environment Volume override](visual-environment-volume-override-reference.md). This controls the skybox that you can see through the Camera and represents the visual side of the environment lighting. With the[ built-in render pipeline](https://docs.unity3d.com/Manual/SL-RenderPipeline.html), you customize visual environment lighting settings on a per-Scene basis. In contrast, HDRP's Visual Environment uses the [Volume](understand-volumes.md) framework to smoothly interpolate between different sets of environment lighting settings for your sky (and fog) within the same Scene. -* The lighting environment, controlled by the **Environment (HDRP)** section of the Lighting window. HDRP uses the lighting environment to calculate indirect ambient lighting for your Scene. It does not use the Volume framework as HDRP's indirect ambient lighting currently only supports one source of environment lighting. +HDRP does the following to create environment lighting: -Essentially, you use the visual environment to control how the sky looks in your Scene and use the lighting environment to control how the sky contributes to indirect ambient lighting. +1. Renders a background, for example an HDRI sky texture or a gradient. For more information, refer to [Sky](sky.md). -For information about the [Lighting window](https://docs.unity3d.com/Manual/lighting-window.html) **Environment (HDRP)** properties, refer to +2. Uses the sky to calculate how the GameObjects in your scene receive [indirect ambient light](https://docs.unity3d.com/Manual/lighting-ambient-light.html). To control the light, use the [**Environment (HDRP)** tab of the Lighting window](reference-lighting-environment.md). -## Visual Environment -The Visual Environment is a Volume override that tells HDRP what type of [sky](HDRP-Features.md#sky) you want to see through Cameras that the Volume affects. For information on how to customize Visual Environments, see the [Visual Environment](visual-environment-volume-override-reference.md) documentation. +## How HDRP calculates ambient light -Your Unity Project’s [HDRP Asset](HDRP-Asset.md) has the following properties that also affect all Visual Environments: +Depending on your settings and baked lighting, HDRP fetches the sky color for a GameObject from one of the following: -* **Reflection Size**: Controls the resolution of the sky cube map. Unity uses this cube map as a fallback Reflection Probe for areas that local Reflection Probes do not affect. It has no effect on the quality of the sky directly seen through the camera. -* **Lighting Override Mask**: A LayerMask that allows you to decouple the sky seen through the Camera from the one that affects the ambient lighting. For example, you might want a dark sky at night time, but to have brighter lighting so that you can still see clearly. See [Decoupling the visual environment from the lighting environment](#DecoupleVisualEnvironment). +- The default [ambient light probe](https://docs.unity3d.com/6000.2/Documentation/ScriptReference/RenderSettings-ambientProbe.html), which captures either the static sky in the **Environment (HDRP)** tab of the Lighting window, or the dynamic sky at runtime from the **Visual Environment** volume override. +- Baked lightmap textures from [lightmapping](https://docs.unity3d.com/Manual/Lightmapping-baking-before-runtime.html). +- Realtime lightmap textures from [Enlighten Realtime Global Illumination](https://docs.unity3d.com/Manual/realtime-gi-using-enlighten-landing.html). +- [Adaptive Probe Volumes](probevolumes.md). +- [Screen space global illumination](Override-Screen-Space-GI.md) or [ray-traced global illumination](ray-traced-global-illumination.md). -### HDRP built-in sky types +**Note:** HDRP calculates the ambient Light Probe on the GPU, then uses asynchronous readback on the CPU, so the lighting is one frame late. -HDRP has three built-in [sky types](HDRP-Features.md#sky): +## Additional resources -* [HDRI Sky](create-an-hdri-sky.md) -* [Gradient Sky](create-a-gradient-sky.md) -* [Physically Based Sky](create-a-physically-based-sky.md) - -HDRP also allows you to implement your own sky types that display a background and handle environment lighting. See the [Customizing HDRP](create-a-custom-sky.md) documentation for instructions on how to implement your own sky. - -**Note**: The **Procedural Sky** is deprecated and no longer built into HDRP. For information on how to add Procedural Sky to your HDRP Project, see the [Upgrading from 2019.2 to 2019.3 guide](Upgrading-From-2019.2-to-2019.3.md#ProceduralSky). - - - -## Decouple the visual environment from the lighting environment - -You can use the sky **Lighting Override Mask** in your Unity Project’s HDRP Asset to separate the Visual Environment from the environment lighting. If you set the **Lighting Override Mask** to **Nothing**, or to a group of Layers that have no Volumes on them, then no Layer acts as an override. This means that environment lighting comes from all Volumes that affect a Camera. If you set the **Lighting Override Mask** to include Layers that have Volumes on them, HDRP only uses Volumes on these Layers to calculate environment lighting. - -An example of where you would want to decouple the sky lighting from the visual sky, and use a different Volume Profile for each, is when you have an [HDRI Sky](create-an-hdri-sky.md) that includes sunlight. To make the sun visible at runtime in your application, your sky background must show an HDRI sky that features the sun. To achieve real-time lighting from the sun, you must use a Directional [Light](Light-Component.md) in your Scene and, for the baking process, use an HDRI sky that is identical to the first one but does not include the sun. If you were to use an HDRI sky that includes the sun to bake the lighting, the sun would contribute to the lighting twice (once from the Directional Light, and once from the baking process) and make the lighting look unrealistic. - -## Ambient light probe - -HDRP uses the ambient Light Probe as the final fallback for indirect diffuse lighting. For more information, refer to [Ambient light probe](ambient-light-probe.md). - -## Ambient Reflection Probe - -HDRP uses the ambient Reflection Probe as a fallback for indirect specular lighting. This means that it only affects areas that local Reflection Probes, Screen Space Reflection, and raytraced reflections do not affect. - - -## Reflection - -Reflection Probes work like Cameras; they use the Volume system, and therefore use environment lighting from the sky, which you set in the Visual Environment of the Volume that affects them. For more information, refer to [Reflection](Reflection-in-HDRP.md). +- [Configure environment lighting](ambient-lighting-configure.md) +- [Ambient light](https://docs.unity3d.com/Manual/lighting-ambient-light.html) diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Images/aocomparison.png b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Images/aocomparison.png new file mode 100644 index 00000000000..f12006d0bb2 Binary files /dev/null and b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Images/aocomparison.png differ diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Images/ssao-rtao-comparison.jpg b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Images/ssao-rtao-comparison.jpg new file mode 100644 index 00000000000..946d0d65092 Binary files /dev/null and b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Images/ssao-rtao-comparison.jpg differ diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Override-Ambient-Occlusion.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Override-Ambient-Occlusion.md index c05a1f3ec90..04bf97b10f5 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Override-Ambient-Occlusion.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Override-Ambient-Occlusion.md @@ -1,37 +1,36 @@ -# Screen Space Ambient Occlusion (SSAO) +# Screen space ambient occlusion (SSAO) -The **Screen Space Ambient Occlusion** override is a real-time, full-screen lighting effect available in the High Definition Render Pipeline (HDRP). This effect approximates [ambient occlusion](https://en.wikipedia.org/wiki/Ambient_occlusion) in the current field of view. It approximates the intensity and position of ambient light on a GameObject’s surface, based on the light in the Scene and the environment around the GameObject. To achieve this, it darkens creases, holes, intersections, and surfaces that are close to one another. In real life, these areas tend to block out, or occlude, ambient light, and so appear darker. +The Screen Space Ambient Occlusion (SSAO) volume override simulates [ambient occlusion](ambient-occlusion-introduction.md) in real-time. -For information on how to use a Texture to specify ambient occlusion caused by details present in a GameObject's Material but not on it's surface geometry, see [Ambient Occlusion](Ambient-Occlusion.md). +![A single-channel screen space ambient occlusion texture of a gothic corridor. The scene is white with shades of grey representing corners and crevices.](Images/RayTracedAmbientOcclusion1.png)
+A single-channel screen space ambient occlusion texture of a gothic corridor. The scene is white with shades of grey representing corners and crevices. -HDRP implements [ray-traced ambient occlusion](Ray-Traced-Ambient-Occlusion.md) on top of this override. This means that the properties visible in the Inspector change depending on whether you enable ray tracing. +For each frame, SSAO creates a texture containing occluded areas in the camera view, which HDRP uses to reduce indirect lighting in those areas. - +SSAO doesn't affect direct lighting, or the indirect light from Reflection Probes. -## Enable Screen Space Ambient Occlusion +A screen-space effect only processes what's on-screen, so objects outside the camera view don't occlude objects in the camera view. You can sometimes see this at the edges of the screen. To include off-screen objects for better results, enable [Ray-traced ambient occlusion](Ray-Traced-Ambient-Occlusion.md) instead. -[!include[](snippets/Volume-Override-Enable-Override.md)] +## Enable screen space ambient occlusion -* To enable SSAO in your HDRP Asset go to **Lighting** > **Screen Space Ambient Occlusion**. -* To enable SSAO in your Frame Settings go to **Edit** > **Project Settings** > **Graphics** > **Pipeline Specific Settings** > **HDRP** > **Frame Settings (Default Values)** > **Camera** > **Lighting** > **Screen Space Ambient Occlusion**. +Follow these steps: - +1. Enable screen space ambient occlusion in your project. -## Use Screen Space Ambient Occlusion + [!include[](snippets/Volume-Override-Enable-Override.md)] -**Screen Space Ambient Occlusion** uses the [Volume](understand-volumes.md) framework, so to enable and modify **Screen Space Ambient Occlusion** properties, you must add an **Screen Space Ambient Occlusion** override to a [Volume](understand-volumes.md) in your Scene. To add **Ambient Occlusion** to a Volume: + * To enable SSAO in your HDRP Asset, go to **Lighting** > **Screen Space Ambient Occlusion**. + * To enable SSAO in your Frame Settings, go to **Edit** > **Project Settings** > **Graphics** > **Pipeline Specific Settings** > **HDRP** > **Frame Settings (Default Values)** > **Camera** > **Lighting** > **Screen Space Ambient Occlusion**. -1. In the Scene or Hierarchy view, select a GameObject that contains a Volume component to view it in the Inspector. -2. In the Inspector, navigate to **Add Override** > **Lighting** and click on **Ambient Occlusion**. - HDRP now applies **Ambient Occlusion** to any Camera this Volume affects. +2. [Add a volume component](set-up-a-volume.md#add-a-volume) to any GameObject in your scene. -[!include[](snippets/volume-override-api.md)] +3. Select the GameObject, then in the **Inspector** window select **Add Override** > **Lighting** > **Ambient Occlusion**. + HDRP now applies screen space ambient occlusion to any camera this volume affects. -## Limitations +To access and control the volume override at runtime, refer to [Volume scripting API](Volumes-API.md#changing-volume-profile-properties). -### Screen-space ambient occlusion - -A screen-space effect only processes what's on the screen at a given point. This means that objects outside of the field of view can't visually occlude objects in the view. You can sometimes see this on the edges of the screen. -When rendering [Reflection Probes](Reflection-Probe.md) screen space ambient occlusion isn't supported. +## Additional resources +- [Assign an ambient occlusion texture](Ambient-Occlusion.md) +- [Ray-traced ambient occlusion](Ray-Traced-Ambient-Occlusion.md) diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Override-Contact-Shadows.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Override-Contact-Shadows.md index 8db8ebcbf42..53b0dc5afc9 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Override-Contact-Shadows.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Override-Contact-Shadows.md @@ -1,7 +1,7 @@ # Use contact shadows -Contact Shadows are shadows that HDRP [ray marches](Glossary.md#RayMarching) in screen space, inside the depth buffer, at a close range. They provide small, detailed, shadows for details in geometry that shadow maps can't usually capture. +Contact Shadows are shadows that HDRP [ray marches](Glossary.md#RayMarching) in screen space, inside the depth buffer, at a close range. Use Contact Shadows to provide shadows for geometry details that regular shadow mapping algorithms usually fail to capture. + -The Contact Shadows [Volume Override](volume-component.md) specifies properties which control the behavior of Contact Shadows. Contact Shadows are shadows that The High Definition Render Pipeline (HDRP) [ray marches](Glossary.md#RayMarching) in screen space inside the depth buffer. The goal of using Contact Shadows is to capture small details that regular shadow mapping algorithms fail to capture. 24 Lights (Direction, Point or Spot) can cast Contact Shadows at a time. diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Ray-Traced-Ambient-Occlusion.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Ray-Traced-Ambient-Occlusion.md index 26229ec3049..53779d05e60 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/Ray-Traced-Ambient-Occlusion.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/Ray-Traced-Ambient-Occlusion.md @@ -1,26 +1,25 @@ # Ray-traced ambient occlusion -Ray-Traced Ambient Occlusion is a ray tracing feature in the High Definition Render Pipeline (HDRP). It is an alternative to HDRP's s [screen space ambient occlusion](Override-Ambient-Occlusion.md), with a more accurate ray-traced solution that can use off-screen data. +Ray-traced ambient occlusion (RTAO) is an alternative to [screen space ambient occlusion](Override-Ambient-Occlusion.md) that's more accurate because it uses off-screen data. -![An example of a screen space ambient occlusion texture.](Images/RayTracedAmbientOcclusion1.png) +![A single-channel occlusion texture of a gothic corridor. The screen space ambient occlusion texture on the left has fewer details and lighter shadows than the ray-traced ambient occlusion texture on the right.](Images/ssao-rtao-comparison.jpg)
+A single-channel occlusion texture of a gothic corridor. The screen space ambient occlusion texture on the left has fewer details and lighter shadows than the ray-traced ambient occlusion texture on the right. -**Screen space ambient occlusion** +Follow these steps: -![An example of a ray-traced ambient occlusion texture.](Images/RayTracedAmbientOcclusion2.png) +1. [Enable screen space ambient occlusion](Override-Ambient-Occlusion.md#enable-screen-space-ambient-occlusion). -**Ray-traced ambient occlusion** +1. [Set up ray tracing](Ray-Tracing-Getting-Started.md) in your HDRP project. -For information about ray tracing in HDRP, and how to set up your HDRP Project to support ray tracing, see [Getting started with ray tracing](Ray-Tracing-Getting-Started.md). +1. Select the GameObject with the volume override you created in step 1. -To troubleshoot this effect, HDRP provides an Ambient Occlusion [Debug Mode](Ray-Tracing-Debug.md) and a Ray Tracing Acceleration Structure [Debug Mode](Ray-Tracing-Debug.md) in Lighting Full Screen Debug Mode. +1. In the Inspector window of the **Screen Space Ambient Occlusion** override, enable **Ray Tracing**. -## Use ray-traced ambient occlusion +To control the effect, refer to the **Ray-traced** properties on the [Ambient occlusion reference](reference-ambient-occlusion.md) page. -Because this feature is an alternative to the [Ambient Occlusion](Override-Ambient-Occlusion.md) Volume Override, the initial setup is very similar. To setup ray traced ambient occlusion, first follow the [Enabling Ambient Occlusion](Override-Ambient-Occlusion.md#enable-screen-space-ambient-occlusion) and [Using Ambient Occlusion](Override-Ambient-Occlusion.md#use-screen-space-ambient-occlusion) steps. After you setup the Ambient Occlusion override, to make it use ray tracing: +To troubleshoot ray-traced ambient occlusion, HDRP provides an Ambient Occlusion [Debug Mode](Ray-Tracing-Debug.md) and a Ray Tracing Acceleration Structure [Debug Mode](Ray-Tracing-Debug.md) in Lighting Full Screen Debug Mode. -1. In the Frame Settings for your Cameras, enable **Ray Tracing**. -2. Select the [Ambient Occlusion](Override-Ambient-Occlusion.md) override and, in the Inspector, enable **Ray Tracing**. If you do not see a **Ray Tracing** option, make sure your HDRP Project supports ray tracing. For information on setting up ray tracing in HDRP, see [Getting started with ray tracing](Ray-Tracing-Getting-Started.md). +## Additional resources -## Properties - -HDRP implements ray-traced ambient occlusion on top of the Ambient Occlusion override. For information on the properties that control this effect, see [Ambient occlusion reference](reference-ambient-occlusion.md). +- [Assign an ambient occlusion texture](Ambient-Occlusion.md) for each GameObject. +- [Screen space ambient occlusion (SSAO)](Override-Ambient-Occlusion.md), which uses information from the whole screen. 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 d871c375859..d79d63fce40 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/TableOfContents.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/TableOfContents.md @@ -60,9 +60,10 @@ * [View and control a light from its perspective](lights-placement-tool.md) * [Use light rendering layers](Rendering-Layers.md) * [Ambient lighting](ambient-lighting.md) - * [Create environment lighting](Environment-Lighting.md) - * [Ambient occlusion](Ambient-Occlusion.md) - * [Ambient light probe](ambient-light-probe.md) + * [Environment lighting](Environment-Lighting.md) + * [Configure environment lighting](ambient-lighting-configure.md) + * [Ambient occlusion](ambient-occlusion-introduction.md) + * [Assign an ambient occlusion texture](Ambient-Occlusion.md) * [Screen Space Ambient Occlusion (SSAO)](Override-Ambient-Occlusion.md) * [Control exposure](Override-Exposure.md) * [Shadows](shadows.md) @@ -386,7 +387,7 @@ * [Shader materials reference](shader-materials-reference.md) * [HDRP material reference](reference-hdrp-materials.md) * [Alpha Clipping reference](Alpha-Clipping.md) - * [Ambient Occlusion reference](Ambient-Occlusion.md) + * [Ambient Occlusion reference](reference-ambient-occlusion.md) * [Displacement Mode reference](Displacement-Mode.md) * [Double Sided reference](Double-Sided.md) * [Geometric Specular Anti-aliasing reference](Geometric-Specular-Anti-Aliasing.md) diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/ambient-light-probe.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/ambient-light-probe.md deleted file mode 100644 index 2d68a78aa6c..00000000000 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/ambient-light-probe.md +++ /dev/null @@ -1,17 +0,0 @@ -## Understand the ambient light probe - -HDRP uses the ambient Light Probe as the final fallback for indirect diffuse lighting. It affects: - -- All Mesh Renderers if there is no indirect ambient light computed for the Scene (this applies when Unity has not computed any lightmaps or Light Probes for the Scene) -- Mesh Renderers that have their **Light Probe Mode** set to **Off** -- Volumetric fog if the Global Light Probe dimmer is set to a value above 0 - -The ambient Light Probe can be static (generated only once from the static lighting sky set in the HDRP **Environment (HDRP)**panel) or dynamic (updated at runtime from the sky currently in use). - -***\*Note\****: If there is a ***\*Light Probe group\**** in your Scene and you have computed indirect ambient lighting, then the Ambient Light Probe only affects Mesh Renderers that have their ***\*Light Probe Mode\**** set to ***\*Off\****, and that have ***\*Volumetric fog\**** (if it’s enabled in the Scene). - -### Limitations of dynamic ambient mode - -The Ambient Light Probe always affects your scene one frame late after HDRP calculates it. This is because HDRP calculates Ambient Light Probes on the GPU and then uses asynchronous readback on the CPU. - -As a result, the ambient lighting might not match the actual lighting and cause visual artifacts. This can happen when you use the dynamic ambient mode and use reflection probes that update on demand. \ No newline at end of file diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/ambient-lighting-configure.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/ambient-lighting-configure.md new file mode 100644 index 00000000000..8eea9aafb54 --- /dev/null +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/ambient-lighting-configure.md @@ -0,0 +1,38 @@ +# Configure environment lighting + +Control how your scene receives light from the environment. + +## Make scene elements use the ambient light probe + +If you have lightmap textures or Light Probes in your scene, HDRP doesn't use the ambient light probe by default. + +To set objects and fog to use the ambient light probe, follow these steps: + +1. Select a GameObject, then in the **Mesh Renderer** component disable the GameObject from receiving light from global illumination. +1. In the **Fog** volume override, in the **Volumetric Fog** section, set **GI Dimmer** to 0. + +
+ +## Decouple lighting from the sky + +To decouple lighting from the sky, use a lighting override mask. For example, you can do the following: + +- Render a dark sky, but calculate brighter lighting on GameObjects so they display clearly. +- Use a directional light for a moving sun, but a sky background that excludes the sun to avoid double lighting. + +First, create a volume with the sky you want to use for lighting: + +1. Create a new sky and fog global volume. From the main menu, select **GameObject** > **Volume** > **Sky and Fog Global Volume**. +1. Select the volume, then use the **Visual Environment** volume override to set the type of sky you want HDRP to use for lighting. +1. At the top of the **Inspector** window, open the **Layers** dropdown and set the volume to a different layer. + +You can now set HDRP to use the layer for lighting, without affecting the sky background: + +1. From the main menu, select **Edit** > **Project Settings**. +1. Go to **Quality** > **HDRP**. +1. In the **Lighting** > **Sky** section, set **Lighting Override Mask** to the layer. + +## Additional resources + +- [Environment lighting](Environment-lighting.md) +- [Ambient light](https://docs.unity3d.com/Manual/lighting-ambient-light.html) diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/ambient-lighting.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/ambient-lighting.md index 13fc88c7c6e..35aa2e91f66 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/ambient-lighting.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/ambient-lighting.md @@ -1,18 +1,17 @@ # Ambient lighting -Create and control indirect diffuse lighting. +Create and control light from the environment in your scene in the High Definition Render Pipeline (HDRP), to create more realistic lighting. -|Page|Description| +|**Topic**|**Description**| |-|-| -|[Create environment lighting](Environment-lighting.md)|Simulate light that comes from the surroundings of a scene.| -|[Ambient occlusion](Ambient-Occlusion.md)| Apply ambient occlusion to a material. | -|[Screen Space Ambient Occlusion (SSAO)](Override-Ambient-Occlusion.md)|Enable and use the Screen Space Ambient Occlusion (SSAO) volume override. | -|[Ambient light probe](ambient-light-probe.md)| Learn about the method that HDRP uses as the fallback for indirect diffuse lighting. | -|[Adaptive Probe Volumes](probevolumes.md)| Learn about the method that HDRP proposes for baked indirect diffuse lighting. | - +|[Environment lighting](Environment-lighting.md)| Learn about how HDRP calculates ambient light in your scene. | +|[Configure environment lighting](ambient-lighting-configure.md)| Make scene elements use the ambient probe, or decouple lighting from the sky. | +|[Ambient occlusion](ambient-occlusion-introduction.md)| Learn about darkening corners in areas where it's difficult for indirect light to reach.| +|[Assign an ambient occlusion texture](Ambient-Occlusion.md)| Use a texture to create ambient occlusion for a GameObject. | +|[Screen space ambient occlusion (SSAO)](Override-Ambient-Occlusion.md)| Use a volume override to create ambient occlusion across the screen. | ## Additional resources + +- [Ray-traced ambient occlusion (RTAO)](Ray-Traced-Ambient-Occlusion.md) +- [Adaptive Probe Volumes](probevolumes.md) - [Volumetric Lighting](Volumetric-Lighting.md) -- [Ambient Occlusion](Override-Ambient-Occlusion.md) -- [Visual Environment volume override reference](visual-environment-volume-override-reference.md) -- [Fog Volume Override reference](fog-volume-override-reference.md) diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/ambient-occlusion-introduction.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/ambient-occlusion-introduction.md new file mode 100644 index 00000000000..8a376d8f8f2 --- /dev/null +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/ambient-occlusion-introduction.md @@ -0,0 +1,23 @@ +# Ambient occlusion + +Ambient occlusion (AO) darkens corners in areas where surfaces are close to each other and difficult for indirect light to reach. + +The High Definition Render Pipeline (HDRP) can create ambient occlusion by reducing how much light a surface gets from indirect ambient light sources. For more information about indirect ambient light, refer to [Environment lighting](environment-lighting.md). + +**Note:** Ambient occlusion doesn't affect direct lighting. + +To enable ambient occlusion, use one of the following methods: + +- [Assign an ambient occlusion texture](Ambient-Occlusion.md) for each GameObject. +- [Screen space ambient occlusion (SSAO)](Override-Ambient-Occlusion.md), which uses information from the whole screen. SSAO is enabled by default. +- [Ray-traced ambient occlusion (RTAO)](Ray-Traced-Ambient-Occlusion.md), which uses information from beyond the screen. + +If you create an ambient occlusion texture, HDRP also uses it to calculate specular occlusion, by reducing the intensity of reflections in corners. + +Four versions of a scene with dragon statues in a brick dungeon, lit brightly from above. With no ambient occlusion, there are no shadows in corners and crevices. Ambient occlusion, SSAO with ambient occlusion, and RTAO with ambient occlusion give progressively better results.
+Four versions of a scene with dragon statues in a brick dungeon, lit brightly from above. With no ambient occlusion, there are no shadows in corners and crevices. Ambient occlusion, SSAO with ambient occlusion, and RTAO with ambient occlusion give progressively better results. + +## Additional resources + +- [Ambient light](https://docs.unity3d.com/Manual/lighting-ambient-light.html) +- [Reflection and refraction](Reflection-in-HDRP.md) diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/reference-ambient-occlusion.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/reference-ambient-occlusion.md index d9f60296378..4b00cfb514c 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/reference-ambient-occlusion.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/reference-ambient-occlusion.md @@ -1,4 +1,4 @@ -# Ambient Occlusion reference +# Screen Space Ambient Occlusion (SSAO) volume override reference ## Properties diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/reference-lighting-environment.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/reference-lighting-environment.md index c0ae1669000..0816b33c9d9 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/reference-lighting-environment.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/reference-lighting-environment.md @@ -1,4 +1,4 @@ -# Lighting environment reference +# Lighting window Environment (HDRP) tab reference The **Environment (HDRP)** is a section in the [Lighting window](https://docs.unity3d.com/Manual/lighting-window.html) that allows you to specify which sky to use for indirect ambient light in HDRP. To open the window, select **Window > Rendering > Lighting > Environment**. diff --git a/Packages/com.unity.render-pipelines.high-definition/Documentation~/sky.md b/Packages/com.unity.render-pipelines.high-definition/Documentation~/sky.md index 30ae0cfd283..d0a1fb35cbc 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Documentation~/sky.md +++ b/Packages/com.unity.render-pipelines.high-definition/Documentation~/sky.md @@ -2,6 +2,8 @@ Create different types of sky in the High Definition Render Pipeline (HDRP). +**Note**: Procedural sky is deprecated and no longer built into HDRP. For information on how to add Procedural Sky to your HDRP Project, see the [Upgrading from 2019.2 to 2019.3 guide](Upgrading-From-2019.2-to-2019.3.md#ProceduralSky). + | Page | Description | |-|-| | [Understand sky](understand-sky.md) | Understand the different ways you can create sky in HDRP. | diff --git a/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/RenderPass/FSR2Pass.cs b/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/RenderPass/FSR2Pass.cs index 0f5e04a7740..532946b11e1 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/RenderPass/FSR2Pass.cs +++ b/Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/RenderPass/FSR2Pass.cs @@ -25,9 +25,15 @@ public static bool SetupFeature() Debug.LogWarning("Cannot instantiate AMD device because the version HDRP expects does not match the backend version."); return false; } + + bool deviceReady = AMD.GraphicsDevice.device != null; + if (!deviceReady) + { + AMD.GraphicsDevice.CreateGraphicsDevice(); + deviceReady = AMD.GraphicsDevice.device != null; + } - AMD.GraphicsDevice device = AMD.GraphicsDevice.CreateGraphicsDevice(); - return device != null; + return deviceReady; #else return false; #endif diff --git a/Packages/com.unity.render-pipelines.high-definition/Runtime/Water/Shaders/SampleWaterSurface.hlsl b/Packages/com.unity.render-pipelines.high-definition/Runtime/Water/Shaders/SampleWaterSurface.hlsl index ec3bfd1b987..352f13e68f9 100644 --- a/Packages/com.unity.render-pipelines.high-definition/Runtime/Water/Shaders/SampleWaterSurface.hlsl +++ b/Packages/com.unity.render-pipelines.high-definition/Runtime/Water/Shaders/SampleWaterSurface.hlsl @@ -429,22 +429,17 @@ void SampleSimulation_PS(WaterSimCoord waterCoord, float3 waterMask, float dista } } -void EvaluateWaterAdditionalData(float3 positionOS, float3 transformedPosition, float3 meshNormalOS, out WaterAdditionalData waterAdditionalData) +void EvaluateWaterAdditionalData(float3 positionOS, float3 positionRWS, float3 meshNormalOS, out WaterAdditionalData waterAdditionalData) { ZERO_INITIALIZE(WaterAdditionalData, waterAdditionalData); if (_GridSize.x < 0) return; - // Evaluate the pre-displaced absolute position -#if defined(WATER_DISPLACEMENT) - float3 positionRWS = positionOS; -#else - float3 positionRWS = TransformObjectToWorld_Water(positionOS); -#endif - // Evaluate the distance to the camera + // Evaluate the distance to the camera. used only if WATER_DISPLACEMENT is defined. float distanceToCamera = length(positionRWS); + // Get the world space transformed postion - float3 transformedAWS = GetAbsolutePositionWS(transformedPosition); + float3 transformedAWS = GetAbsolutePositionWS(positionRWS); float2 decalUV = EvaluateDecalUV(transformedAWS); // Compute the texture size param for the filtering diff --git a/Packages/com.unity.render-pipelines.universal/Editor/ShaderBuildPreprocessor.cs b/Packages/com.unity.render-pipelines.universal/Editor/ShaderBuildPreprocessor.cs index 03ef0738bb9..7a485892f31 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/ShaderBuildPreprocessor.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/ShaderBuildPreprocessor.cs @@ -635,7 +635,7 @@ internal static RendererRequirements GetRendererRequirements(ref UniversalRender rsd.needsGBufferRenderingLayers = (rsd.isUniversalRenderer && rsd.renderingMode == RenderingMode.Deferred && urpAsset.useRenderingLayers); rsd.needsGBufferAccurateNormals = (rsd.isUniversalRenderer && rsd.renderingMode == RenderingMode.Deferred && universalRendererData.accurateGbufferNormals); rsd.needsRenderPass = (rsd.isUniversalRenderer && rsd.renderingMode == RenderingMode.Deferred); - rsd.needsReflectionProbeBlending = urpAsset.reflectionProbeBlending; + rsd.needsReflectionProbeBlending = urpAsset.ShouldUseReflectionProbeBlending(); rsd.needsReflectionProbeBoxProjection = urpAsset.reflectionProbeBoxProjection; rsd.needsProcedural = NeedsProceduralKeyword(ref rsd); rsd.needsSHVertexForSHAuto = s_UseSHPerVertexForSHAuto; @@ -922,6 +922,8 @@ ref List ssaoRendererFeatures spd.stripAlphaOutputKeywords = !IsFeatureEnabled(shaderFeatures, ShaderFeatures.AlphaOutput); spd.stripDebugDisplay = stripDebug; spd.stripScreenCoordOverride = stripScreenCoord; + spd.stripReflectionProbeBlending = !IsFeatureEnabled(shaderFeatures, ShaderFeatures.ReflectionProbeBlending); + spd.stripReflectionProbeBoxProjection = !IsFeatureEnabled(shaderFeatures, ShaderFeatures.ReflectionProbeBoxProjection); // Rendering Modes // Check if only Deferred is being used diff --git a/Packages/com.unity.render-pipelines.universal/Editor/UniversalRenderPipelineAsset/UniversalRenderPipelineAssetUI.Drawers.cs b/Packages/com.unity.render-pipelines.universal/Editor/UniversalRenderPipelineAsset/UniversalRenderPipelineAssetUI.Drawers.cs index b14c4aa7c50..4d74a06fdd2 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/UniversalRenderPipelineAsset/UniversalRenderPipelineAssetUI.Drawers.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/UniversalRenderPipelineAsset/UniversalRenderPipelineAssetUI.Drawers.cs @@ -335,6 +335,13 @@ static void DrawLighting(SerializedUniversalRenderPipelineAsset serialized, Edit EditorGUILayout.LabelField(Styles.reflectionProbesSettingsText); EditorGUI.indentLevel++; EditorGUILayout.PropertyField(serialized.reflectionProbeBlendingProp, Styles.reflectionProbeBlendingText); + + if ((GPUResidentDrawerMode)serialized.gpuResidentDrawerMode.intValue != GPUResidentDrawerMode.Disabled) + { + if (!serialized.reflectionProbeBlendingProp.boolValue) + EditorGUILayout.HelpBox(Styles.reflectionProbeBlendingGpuResidentDrawerWarningText.text, MessageType.Warning, true); + } + EditorGUILayout.PropertyField(serialized.reflectionProbeBoxProjectionProp, Styles.reflectionProbeBoxProjectionText); EditorGUI.indentLevel--; } diff --git a/Packages/com.unity.render-pipelines.universal/Editor/UniversalRenderPipelineAsset/UniversalRenderPipelineAssetUI.Skin.cs b/Packages/com.unity.render-pipelines.universal/Editor/UniversalRenderPipelineAsset/UniversalRenderPipelineAssetUI.Skin.cs index 7aae4fa759f..65f7eca605b 100644 --- a/Packages/com.unity.render-pipelines.universal/Editor/UniversalRenderPipelineAsset/UniversalRenderPipelineAssetUI.Skin.cs +++ b/Packages/com.unity.render-pipelines.universal/Editor/UniversalRenderPipelineAsset/UniversalRenderPipelineAssetUI.Skin.cs @@ -81,6 +81,7 @@ internal static class Styles public static GUIContent reflectionProbesSettingsText = EditorGUIUtility.TrTextContent("Reflection Probes"); public static GUIContent reflectionProbeBlendingText = EditorGUIUtility.TrTextContent("Probe Blending", "If enabled smooth transitions will be created between reflection probes."); public static GUIContent reflectionProbeBoxProjectionText = EditorGUIUtility.TrTextContent("Box Projection", "If enabled reflections appear based on the object’s position within the probe’s box, while still using a single probe as the source of the reflection."); + public static GUIContent reflectionProbeBlendingGpuResidentDrawerWarningText = EditorGUIUtility.TrTextContent("Probe Atlas Blending is currently force enabled because GPUResidentDrawer is in use. GPUResidentDrawer currently only supports Reflection Probes via Probe Atlas Blending."); // Additional lighting settings public static GUIContent mixedLightingSupportLabel = EditorGUIUtility.TrTextContent("Mixed Lighting", "Makes the render pipeline include mixed-lighting Shader Variants in the build."); diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/2D/Renderer2D.cs b/Packages/com.unity.render-pipelines.universal/Runtime/2D/Renderer2D.cs index 3705b0497a4..6dc0ad778a7 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/2D/Renderer2D.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/2D/Renderer2D.cs @@ -120,6 +120,15 @@ public Renderer2D(Renderer2DData data) : base(data) LensFlareCommonSRP.Initialize(); Light2DManager.Initialize(); + + PlatformAutoDetect.Initialize(); + +#if ENABLE_VR && ENABLE_XR_MODULE + if (GraphicsSettings.TryGetRenderPipelineSettings(out var xrResources)) + { + XRSystem.Initialize(XRPassUniversal.Create, xrResources.xrOcclusionMeshPS, xrResources.xrMirrorViewPS); + } +#endif } protected override void Dispose(bool disposing) @@ -136,6 +145,9 @@ protected override void Dispose(bool disposing) m_DrawOffscreenUIPass?.Dispose(); m_DrawOverlayUIPass?.Dispose(); Light2DManager.Dispose(); +#if ENABLE_VR && ENABLE_XR_MODULE + XRSystem.Dispose(); +#endif CoreUtils.Destroy(m_BlitMaterial); CoreUtils.Destroy(m_BlitHDRMaterial); @@ -540,14 +552,9 @@ internal static bool IsGLESDevice() return SystemInfo.graphicsDeviceType == GraphicsDeviceType.OpenGLES3; } - internal static bool IsGLDevice() - { - return IsGLESDevice() || SystemInfo.graphicsDeviceType == GraphicsDeviceType.OpenGLCore; - } - internal static bool supportsMRT { - get => !IsGLDevice(); + get => !IsGLESDevice(); } internal override bool supportsNativeRenderPassRendergraphCompiler => true; diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/2D/Rendergraph/DrawLight2DPass.cs b/Packages/com.unity.render-pipelines.universal/Runtime/2D/Rendergraph/DrawLight2DPass.cs index 06bbea1f30e..abe75b7a574 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/2D/Rendergraph/DrawLight2DPass.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/2D/Rendergraph/DrawLight2DPass.cs @@ -231,7 +231,7 @@ public void Render(RenderGraph graph, ContextContainer frameData, Renderer2DData return; // OpenGL has a bug with MRTs - support single RTs by using low level pass - if (!isVolumetric && Renderer2D.IsGLDevice()) + if (!isVolumetric && !Renderer2D.supportsMRT) { using (var builder = graph.AddUnsafePass( k_LightLowLevelPass, out var passData, m_ProfilingSamplerLowLevel)) { diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/2D/Rendergraph/Renderer2DRendergraph.cs b/Packages/com.unity.render-pipelines.universal/Runtime/2D/Rendergraph/Renderer2DRendergraph.cs index 52828576529..1440f7fb014 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/2D/Rendergraph/Renderer2DRendergraph.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/2D/Rendergraph/Renderer2DRendergraph.cs @@ -117,22 +117,49 @@ ImportResourceSummary GetImportResourceSummary(RenderGraph renderGraph, Universa output.backBufferDepthParams.clearColor = backBufferBackgroundColor; output.backBufferDepthParams.discardOnLastUse = true; - if (cameraData.targetTexture != null) - { - output.importInfo.width = cameraData.targetTexture.width; - output.importInfo.height = cameraData.targetTexture.height; - output.importInfo.volumeDepth = cameraData.targetTexture.volumeDepth; - output.importInfo.msaaSamples = cameraData.targetTexture.antiAliasing; - output.importInfo.format = cameraData.targetTexture.graphicsFormat; + bool isBuiltInTexture = cameraData.targetTexture == null; - output.importInfoDepth = output.importInfo; - output.importInfoDepth.format = cameraData.targetTexture.depthStencilFormat; +#if ENABLE_VR && ENABLE_XR_MODULE + if (cameraData.xr.enabled) + { + isBuiltInTexture = false; + } +#endif - // We let users know that a depth format is required for correct usage, but we fallback to the old default depth format behaviour to avoid regressions - if (output.importInfoDepth.format == GraphicsFormat.None) + if (!isBuiltInTexture) + { +#if ENABLE_VR && ENABLE_XR_MODULE + if (cameraData.xr.enabled) { - output.importInfoDepth.format = SystemInfo.GetGraphicsFormat(DefaultFormat.DepthStencil); - Debug.LogWarning("In the render graph API, the output Render Texture must have a depth buffer. When you select a Render Texture in any camera's Output Texture property, the Depth Stencil Format property of the texture must be set to a value other than None."); + output.importInfo.width = cameraData.xr.renderTargetDesc.width; + output.importInfo.height = cameraData.xr.renderTargetDesc.height; + output.importInfo.volumeDepth = cameraData.xr.renderTargetDesc.volumeDepth; + output.importInfo.msaaSamples = cameraData.xr.renderTargetDesc.msaaSamples; + output.importInfo.format = cameraData.xr.renderTargetDesc.graphicsFormat; + if (!UniversalRenderer.PlatformRequiresExplicitMsaaResolve()) + output.importInfo.bindMS = output.importInfo.msaaSamples > 1; + + output.importInfoDepth = output.importInfo; + output.importInfoDepth.format = cameraData.xr.renderTargetDesc.depthStencilFormat; + } + else +#endif + { + output.importInfo.width = cameraData.targetTexture.width; + output.importInfo.height = cameraData.targetTexture.height; + output.importInfo.volumeDepth = cameraData.targetTexture.volumeDepth; + output.importInfo.msaaSamples = cameraData.targetTexture.antiAliasing; + output.importInfo.format = cameraData.targetTexture.graphicsFormat; + + output.importInfoDepth = output.importInfo; + output.importInfoDepth.format = cameraData.targetTexture.depthStencilFormat; + + // We let users know that a depth format is required for correct usage, but we fallback to the old default depth format behaviour to avoid regressions + if (output.importInfoDepth.format == GraphicsFormat.None) + { + output.importInfoDepth.format = SystemInfo.GetGraphicsFormat(DefaultFormat.DepthStencil); + Debug.LogWarning("In the render graph API, the output Render Texture must have a depth buffer. When you select a Render Texture in any camera's Output Texture property, the Depth Stencil Format property of the texture must be set to a value other than None."); + } } } else @@ -337,6 +364,14 @@ void CreateResources(RenderGraph renderGraph) RenderTargetIdentifier targetColorId = cameraData.targetTexture != null ? new RenderTargetIdentifier(cameraData.targetTexture) : BuiltinRenderTextureType.CameraTarget; RenderTargetIdentifier targetDepthId = cameraData.targetTexture != null ? new RenderTargetIdentifier(cameraData.targetTexture) : BuiltinRenderTextureType.Depth; +#if ENABLE_VR && ENABLE_XR_MODULE + if (cameraData.xr.enabled) + { + targetColorId = cameraData.xr.renderTarget; + targetDepthId = cameraData.xr.renderTarget; + } +#endif + if (m_RenderGraphBackbufferColorHandle == null) { m_RenderGraphBackbufferColorHandle = RTHandles.Alloc(targetColorId, "Backbuffer color"); @@ -380,7 +415,9 @@ void CreateCameraNormalsTextures(RenderGraph renderGraph, RenderTextureDescripto if (m_Renderer2DData.useDepthStencilBuffer) { // Normals pass can reuse active depth if same dimensions, if not create a new depth texture +#if !(ENABLE_VR && ENABLE_XR_MODULE) if (descriptor.width != width || descriptor.height != height) +#endif { var normalsDepthDesc = new RenderTextureDescriptor(width, height); normalsDepthDesc.graphicsFormat = GraphicsFormat.None; @@ -492,11 +529,14 @@ internal void RecordCustomRenderGraphPasses(RenderGraph renderGraph, RenderPassE internal override void OnRecordRenderGraph(RenderGraph renderGraph, ScriptableRenderContext context) { CommonResourceData commonResourceData = frameData.GetOrCreate(); + UniversalCameraData cameraData = frameData.Get(); InitializeLayerBatches(); CreateResources(renderGraph); + DebugHandler?.Setup(renderGraph, cameraData.isPreviewCamera); + SetupRenderGraphCameraProperties(renderGraph, commonResourceData.isActiveTargetBackBuffer); #if VISUAL_EFFECT_GRAPH_0_0_1_OR_NEWER @@ -507,11 +547,15 @@ internal override void OnRecordRenderGraph(RenderGraph renderGraph, ScriptableRe RecordCustomRenderGraphPasses(renderGraph, RenderPassEvent2D.BeforeRendering); + BeginRenderGraphXRRendering(renderGraph); + OnMainRendering(renderGraph); RecordCustomRenderGraphPasses(renderGraph, RenderPassEvent2D.BeforeRenderingPostProcessing); OnAfterRendering(renderGraph); + + EndRenderGraphXRRendering(renderGraph); } public override void OnEndRenderGraphFrame() @@ -767,7 +811,6 @@ private void OnAfterRendering(RenderGraph renderGraph) m_DrawOverlayUIPass.RenderOverlay(renderGraph, frameData, in finalColorHandle, in finalDepthHandle); // If HDR debug views are enabled, DebugHandler will perform the blit from debugScreenColor (== finalColorHandle) to backBufferColor. - DebugHandler?.Setup(renderGraph, cameraData.isPreviewCamera); DebugHandler?.Render(renderGraph, cameraData, finalColorHandle, commonResourceData.overlayUITexture, commonResourceData.backBufferColor); if (cameraData.isSceneViewCamera) diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/2D/Unity.RenderPipelines.Universal.2D.Runtime.asmdef b/Packages/com.unity.render-pipelines.universal/Runtime/2D/Unity.RenderPipelines.Universal.2D.Runtime.asmdef index c745caf980d..cdb5d66544f 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/2D/Unity.RenderPipelines.Universal.2D.Runtime.asmdef +++ b/Packages/com.unity.render-pipelines.universal/Runtime/2D/Unity.RenderPipelines.Universal.2D.Runtime.asmdef @@ -37,7 +37,17 @@ "name": "com.unity.visualeffectgraph", "expression": "0.0.1", "define": "VISUAL_EFFECT_GRAPH_0_0_1_OR_NEWER" + }, + { + "name": "com.unity.modules.vr", + "expression": "1.0.0", + "define": "ENABLE_VR_MODULE" + }, + { + "name": "com.unity.modules.xr", + "expression": "1.0.0", + "define": "ENABLE_XR_MODULE" } ], "noEngineReferences": false -} \ No newline at end of file +} diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Data/UniversalRenderPipelineAsset.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Data/UniversalRenderPipelineAsset.cs index 47c19cd14c1..902af562a6e 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Data/UniversalRenderPipelineAsset.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Data/UniversalRenderPipelineAsset.cs @@ -524,13 +524,7 @@ public partial class UniversalRenderPipelineAsset : RenderPipelineAsset m_ReflectionProbeBlending = value; } + internal bool ShouldUseReflectionProbeBlending() + { + // The probe blending with atlas code path is always force enabled with GPUResidentDrawer since that is the only path supported here. + if (gpuResidentDrawerMode != GPUResidentDrawerMode.Disabled) + return true; + + return reflectionProbeBlending; + } + /// /// Specifies if this UniversalRenderPipelineAsset should allow box projection for the reflection probes in the scene. /// diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/Data/UniversalRenderPipelineAssetPrefiltering.cs b/Packages/com.unity.render-pipelines.universal/Runtime/Data/UniversalRenderPipelineAssetPrefiltering.cs index c3851c94950..fe278f8e5cc 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/Data/UniversalRenderPipelineAssetPrefiltering.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/Data/UniversalRenderPipelineAssetPrefiltering.cs @@ -183,6 +183,14 @@ internal enum PrefilteringModeAdditionalLights [ShaderKeywordFilter.SelectOrRemove(true, keywordNames: ShaderKeywordStrings.USE_LEGACY_LIGHTMAPS)] [SerializeField] private bool m_PrefilterUseLegacyLightmaps = false; + // Reflection probe blending (_REFLECTION_PROBE_BLENDING) + [ShaderKeywordFilter.SelectOrRemove(false, keywordNames: ShaderKeywordStrings.ReflectionProbeBlending)] + [SerializeField] private bool m_PrefilterReflectionProbeBlending = false; + + // Reflection probe box projection (_REFLECTION_PROBE_BOX_PROJECTION) + [ShaderKeywordFilter.SelectOrRemove(false, keywordNames: ShaderKeywordStrings.ReflectionProbeBoxProjection)] + [SerializeField] private bool m_PrefilterReflectionProbeBoxProjection = false; + /// /// Data used for Shader Prefiltering. Gathered after going through the URP Assets, /// Renderers and Renderer Features in OnPreprocessBuild() inside ShaderPreprocessor.cs. @@ -221,6 +229,9 @@ internal struct ShaderPrefilteringData public bool stripSSAOSampleCountMedium; public bool stripSSAOSampleCountHigh; + public bool stripReflectionProbeBlending; + public bool stripReflectionProbeBoxProjection; + public static ShaderPrefilteringData GetDefault() { return new ShaderPrefilteringData() @@ -274,6 +285,9 @@ internal void UpdateShaderKeywordPrefiltering(ref ShaderPrefilteringData prefilt m_PrefilterSSAOSampleCountLow = prefilteringData.stripSSAOSampleCountLow; m_PrefilterSSAOSampleCountMedium = prefilteringData.stripSSAOSampleCountMedium; m_PrefilterSSAOSampleCountHigh = prefilteringData.stripSSAOSampleCountHigh; + + m_PrefilterReflectionProbeBlending = prefilteringData.stripReflectionProbeBlending; + m_PrefilterReflectionProbeBoxProjection = prefilteringData.stripReflectionProbeBoxProjection; } } } diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/ScriptableRenderer.cs b/Packages/com.unity.render-pipelines.universal/Runtime/ScriptableRenderer.cs index 08370b58399..13f1429eec7 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/ScriptableRenderer.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/ScriptableRenderer.cs @@ -329,9 +329,12 @@ void SetPerCameraShaderVariables(RasterCommandBuffer cmd, UniversalCameraData ca // Projection flip sign logic is very deep in GfxDevice::SetInvertProjectionMatrix // This setup is tailored especially for overlay camera game view // For other scenarios this will be overwritten correctly by SetupCameraProperties - float projectionFlipSign = isTargetFlipped ? -1.0f : 1.0f; - Vector4 projectionParams = new Vector4(projectionFlipSign, near, far, 1.0f * invFar); - cmd.SetGlobalVector(ShaderPropertyId.projectionParams, projectionParams); + if (cameraData.renderType == CameraRenderType.Overlay) + { + float projectionFlipSign = isTargetFlipped ? -1.0f : 1.0f; + Vector4 projectionParams = new Vector4(projectionFlipSign, near, far, 1.0f * invFar); + cmd.SetGlobalVector(ShaderPropertyId.projectionParams, projectionParams); + } Vector4 orthoParams = new Vector4(camera.orthographicSize * cameraData.aspectRatio, camera.orthographicSize, 0.0f, isOrthographic); diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/UniversalRenderPipeline.cs b/Packages/com.unity.render-pipelines.universal/Runtime/UniversalRenderPipeline.cs index e1e30bdd469..8f18a032ca1 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/UniversalRenderPipeline.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/UniversalRenderPipeline.cs @@ -1585,7 +1585,7 @@ static UniversalRenderingData CreateRenderingData(ContextContainer frameData, Un UniversalRenderingData data = frameData.Get(); data.supportsDynamicBatching = settings.supportsDynamicBatching; - data.perObjectData = GetPerObjectLightFlags(universalLightData.additionalLightsCount, isForwardPlus, settings.reflectionProbeBlending); + data.perObjectData = GetPerObjectLightFlags(universalLightData.additionalLightsCount, isForwardPlus, settings.ShouldUseReflectionProbeBlending()); // Render graph does not support RenderingData.commandBuffer as its execution timeline might break. // RenderingData.commandBuffer is available only for the old non-RG execute code path. @@ -1812,7 +1812,7 @@ static UniversalLightData CreateLightData(ContextContainer frameData, UniversalR lightData.shadeAdditionalLightsPerVertex = settings.additionalLightsRenderingMode == LightRenderingMode.PerVertex; lightData.visibleLights = visibleLights; lightData.supportsMixedLighting = settings.supportsMixedLighting; - lightData.reflectionProbeBlending = settings.reflectionProbeBlending; + lightData.reflectionProbeBlending = settings.ShouldUseReflectionProbeBlending(); lightData.reflectionProbeBoxProjection = settings.reflectionProbeBoxProjection; lightData.supportsLightLayers = RenderingUtils.SupportsLightLayers(SystemInfo.graphicsDeviceType) && settings.useRenderingLayers; diff --git a/Packages/com.unity.render-pipelines.universal/Runtime/UniversalRenderer.cs b/Packages/com.unity.render-pipelines.universal/Runtime/UniversalRenderer.cs index 95199b70c4a..47123aa8366 100644 --- a/Packages/com.unity.render-pipelines.universal/Runtime/UniversalRenderer.cs +++ b/Packages/com.unity.render-pipelines.universal/Runtime/UniversalRenderer.cs @@ -1634,7 +1634,7 @@ public override void SetupCullingParameters(ref ScriptableCullingParameters cull // TODO: PerObjectCulling also affect reflection probes. Enabling it for now. // if (asset.additionalLightsRenderingMode == LightRenderingMode.Disabled || // asset.maxAdditionalLightsCount == 0) - if (renderingModeActual == RenderingMode.ForwardPlus && UniversalRenderPipeline.asset.reflectionProbeBlending) + if (renderingModeActual == RenderingMode.ForwardPlus && UniversalRenderPipeline.asset.ShouldUseReflectionProbeBlending()) { cullingParameters.cullingOptions |= CullingOptions.DisablePerObjectCulling; } diff --git a/Packages/com.unity.render-pipelines.universal/ShaderLibrary/Clustering.hlsl b/Packages/com.unity.render-pipelines.universal/ShaderLibrary/Clustering.hlsl index afafec039b5..0e48b5abaae 100644 --- a/Packages/com.unity.render-pipelines.universal/ShaderLibrary/Clustering.hlsl +++ b/Packages/com.unity.render-pipelines.universal/ShaderLibrary/Clustering.hlsl @@ -14,8 +14,8 @@ // internal struct ClusterIterator { - uint tileOffset; - uint zBinOffset; + uint tileWordsOffset; + uint zBinWordsOffset; uint tileMask; // Stores the next light index in first 16 bits, and the max light index in the last 16 bits. uint entityIndexNextMax; @@ -41,17 +41,17 @@ ClusterIterator ClusterInit(float2 normalizedScreenSpaceUV, float3 positionWS, i } #endif // SUPPORTS_FOVEATED_RENDERING_NON_UNIFORM_RASTER - uint2 tileId = uint2(normalizedScreenSpaceUV * URP_FP_TILE_SCALE); - state.tileOffset = tileId.y * URP_FP_TILE_COUNT_X + tileId.x; + uint2 tileCoord = uint2(normalizedScreenSpaceUV * URP_FP_TILE_SCALE); + uint tileIndex = tileCoord.y * URP_FP_TILE_COUNT_X + tileCoord.x; #if defined(USING_STEREO_MATRICES) - state.tileOffset += URP_FP_TILE_COUNT * unity_StereoEyeIndex; + tileIndex += URP_FP_TILE_COUNT * unity_StereoEyeIndex; #endif - state.tileOffset *= URP_FP_WORDS_PER_TILE; + state.tileWordsOffset = tileIndex * URP_FP_WORDS_PER_TILE; float viewZ = dot(GetViewForwardDir(), positionWS - GetCameraPositionWS()); - uint zBinBaseIndex = (uint)((IsPerspectiveProjection() ? log2(viewZ) : viewZ) * URP_FP_ZBIN_SCALE + URP_FP_ZBIN_OFFSET); + uint zBinIndex = (uint)((IsPerspectiveProjection() ? log2(viewZ) : viewZ) * URP_FP_ZBIN_SCALE + URP_FP_ZBIN_OFFSET); #if defined(USING_STEREO_MATRICES) - zBinBaseIndex += URP_FP_ZBIN_COUNT * unity_StereoEyeIndex; + zBinIndex += URP_FP_ZBIN_COUNT * unity_StereoEyeIndex; #endif // The Zbin buffer is laid out in the following manner: // ZBin 0 ZBin 1 @@ -60,14 +60,18 @@ ClusterIterator ClusterInit(float2 normalizedScreenSpaceUV, float3 positionWS, i // `----------------v--------------' // URP_FP_WORDS_PER_TILE // - // The total length of this buffer is `4*MAX_ZBIN_VEC4S`. `zBinBaseIndex` should - // always point to the `header 0` of a ZBin, so we clamp it accordingly, to - // avoid out-of-bounds indexing of the ZBin buffer. - zBinBaseIndex = zBinBaseIndex * (2 + URP_FP_WORDS_PER_TILE); - zBinBaseIndex = min(zBinBaseIndex, 4*MAX_ZBIN_VEC4S - (2 + URP_FP_WORDS_PER_TILE)); + // `zBinOffset` should always point to the `header 0` of a ZBin. In the case of + // 'viewZ' lying very close to the far-plane, we need to avoid out-of-bounds indexing + // of the ZBin buffer by clamping to the last ZBin index. + uint zBinLastIndex = URP_FP_ZBIN_COUNT - 1; +#if defined(USING_STEREO_MATRICES) + zBinLastIndex += URP_FP_ZBIN_COUNT * unity_StereoEyeIndex; +#endif + uint zBinStride = (2 + URP_FP_WORDS_PER_TILE); + uint zBinOffset = min(zBinIndex, zBinLastIndex) * zBinStride; - uint zBinHeaderIndex = zBinBaseIndex + headerIndex; - state.zBinOffset = zBinBaseIndex + 2; + uint zBinHeaderIndex = zBinOffset + headerIndex; + state.zBinWordsOffset = zBinOffset + 2; #if !URP_FP_DISABLE_ZBINNING uint header = Select4(asuint(urp_ZBins[zBinHeaderIndex / 4]), zBinHeaderIndex % 4); @@ -77,13 +81,13 @@ ClusterIterator ClusterInit(float2 normalizedScreenSpaceUV, float3 positionWS, i #if MAX_LIGHTS_PER_TILE > 32 || !defined(_ENVIRONMENTREFLECTIONS_OFF) state.entityIndexNextMax = header; #else - uint tileIndex = state.tileOffset; - uint zBinIndex = state.zBinOffset; + uint tileWordIndex = state.tileWordsOffset; + uint zBinWordIndex = state.zBinWordsOffset; if (URP_FP_WORDS_PER_TILE > 0) { state.tileMask = - Select4(asuint(urp_Tiles[tileIndex / 4]), tileIndex % 4) & - Select4(asuint(urp_ZBins[zBinIndex / 4]), zBinIndex % 4) & + Select4(asuint(urp_Tiles[tileWordIndex / 4]), tileWordIndex % 4) & + Select4(asuint(urp_ZBins[zBinWordIndex / 4]), zBinWordIndex % 4) & (0xFFFFFFFFu << (header & 0x1F)) & (0xFFFFFFFFu >> (31 - (header >> 16))); } #endif @@ -100,14 +104,14 @@ bool ClusterNext(inout ClusterIterator it, out uint entityIndex) { // Extract the lower 16 bits and shift by 5 to divide by 32. uint wordIndex = ((it.entityIndexNextMax & 0xFFFF) >> 5); - uint tileIndex = it.tileOffset + wordIndex; - uint zBinIndex = it.zBinOffset + wordIndex; + uint tileWordIndex = it.tileWordsOffset + wordIndex; + uint zBinWordIndex = it.zBinWordsOffset + wordIndex; it.tileMask = #if !URP_FP_DISABLE_TILING - Select4(asuint(urp_Tiles[tileIndex / 4]), tileIndex % 4) & + Select4(asuint(urp_Tiles[tileWordIndex / 4]), tileWordIndex % 4) & #endif #if !URP_FP_DISABLE_ZBINNING - Select4(asuint(urp_ZBins[zBinIndex / 4]), zBinIndex % 4) & + Select4(asuint(urp_ZBins[zBinWordIndex / 4]), zBinWordIndex % 4) & #endif // Mask out the beginning and end of the word. (0xFFFFFFFFu << (it.entityIndexNextMax & 0x1F)) & (0xFFFFFFFFu >> (31 - min(31, maxIndex - wordIndex * 32))); diff --git a/Packages/com.unity.shadergraph/Editor/Generation/Processors/Generator.cs b/Packages/com.unity.shadergraph/Editor/Generation/Processors/Generator.cs index 34598d64272..dbf4c8b3e4e 100644 --- a/Packages/com.unity.shadergraph/Editor/Generation/Processors/Generator.cs +++ b/Packages/com.unity.shadergraph/Editor/Generation/Processors/Generator.cs @@ -256,6 +256,9 @@ GeneratedShader BuildShader(string additionalShaderID, List outTempor var variantLimit = this.m_Mode == GenerationMode.Preview ? Mathf.Min(ShaderGraphPreferences.previewVariantLimit, ShaderGraphProjectSettings.instance.shaderVariantLimit) : ShaderGraphProjectSettings.instance.shaderVariantLimit; + if (!ShaderGraphProjectSettings.instance.overrideShaderVariantLimit) + variantLimit = ShaderGraphProjectSettings.defaultVariantLimit; + // Send an action about our current variant usage. This will either add or clear a warning if it exists var action = new ShaderVariantLimitAction(shaderKeywords.permutations.Count, variantLimit); m_GraphData.owner?.graphDataStore?.Dispatch(action); diff --git a/Packages/com.unity.shadergraph/Editor/ShaderGraphPreferences.cs b/Packages/com.unity.shadergraph/Editor/ShaderGraphPreferences.cs index cc6c6d022aa..f827fe6797c 100644 --- a/Packages/com.unity.shadergraph/Editor/ShaderGraphPreferences.cs +++ b/Packages/com.unity.shadergraph/Editor/ShaderGraphPreferences.cs @@ -109,8 +109,10 @@ static void OpenGUI() using (var scope = new LabelWidthScope(10, 300)) { - var actualLimit = ShaderGraphProjectSettings.instance.shaderVariantLimit; - var willPreviewVariantBeIgnored = ShaderGraphPreferences.previewVariantLimit > actualLimit; + var actualLimit = ShaderGraphProjectSettings.instance.overrideShaderVariantLimit + ? ShaderGraphProjectSettings.instance.shaderVariantLimit + : ShaderGraphProjectSettings.defaultVariantLimit; + var willPreviewVariantBeIgnored = ShaderGraphPreferences.previewVariantLimit > actualLimit || ShaderGraphProjectSettings.instance.overrideShaderVariantLimit; var variantLimitLabel = willPreviewVariantBeIgnored ? new GUIContent("Preview Variant Limit", EditorGUIUtility.IconContent("console.infoicon").image, $"The Preview Variant Limit is higher than the Shader Variant Limit in Project Settings: {actualLimit}. The Preview Variant Limit will be ignored.") diff --git a/Packages/com.unity.shadergraph/Editor/ShaderGraphProjectSettings.cs b/Packages/com.unity.shadergraph/Editor/ShaderGraphProjectSettings.cs index 876c46bf427..6393a71b607 100644 --- a/Packages/com.unity.shadergraph/Editor/ShaderGraphProjectSettings.cs +++ b/Packages/com.unity.shadergraph/Editor/ShaderGraphProjectSettings.cs @@ -2,14 +2,19 @@ using System.Collections.Generic; using UnityEngine.Serialization; using UnityEngine.UIElements; +using static UnityEngine.GraphicsBuffer; namespace UnityEditor.ShaderGraph { [FilePath("ProjectSettings/ShaderGraphSettings.asset", FilePathAttribute.Location.ProjectFolder)] internal class ShaderGraphProjectSettings : ScriptableSingleton { + static internal readonly int defaultVariantLimit = 2048; + + [SerializeField] + internal int shaderVariantLimit = defaultVariantLimit; [SerializeField] - internal int shaderVariantLimit = 2048; + internal bool overrideShaderVariantLimit = false; [SerializeField] internal int customInterpolatorErrorThreshold = 32; [SerializeField] @@ -37,6 +42,7 @@ class ShaderGraphProjectSettingsProvider : SettingsProvider private class Styles { public static readonly GUIContent shaderVariantLimitLabel = L10n.TextContent("Shader Variant Limit", ""); + public static readonly GUIContent overrideShaderVariantLimitLabel = L10n.TextContent("Override Variant Limit", $"The Shader Graph internal default limit Shader Variant Limit is {ShaderGraphProjectSettings.defaultVariantLimit}."); public static readonly GUIContent CustomInterpLabel = L10n.TextContent("Custom Interpolator Channel Settings", ""); public static readonly GUIContent CustomInterpWarnThresholdLabel = L10n.TextContent("Warning Threshold", $"ShaderGraph displays a warning when the user creates more custom interpolators than permitted by this setting. The number of interpolators that trigger this warning must be between {kMinChannelThreshold} and the Error Threshold."); public static readonly GUIContent CustomInterpErrorThresholdLabel = L10n.TextContent("Error Threshold", $"ShaderGraph displays an error message when the user tries to create more custom interpolators than permitted by this setting. The number of interpolators that trigger this error must be between {kMinChannelThreshold} and {kMaxChannelThreshold}."); @@ -48,6 +54,7 @@ private class Styles SerializedObject m_SerializedObject; SerializedProperty m_shaderVariantLimit; + SerializedProperty m_overrideShaderVariantLimit; SerializedProperty m_customInterpWarn; SerializedProperty m_customInterpError; SerializedProperty m_HeatValues; @@ -62,6 +69,7 @@ public override void OnActivate(string searchContext, VisualElement rootElement) ShaderGraphProjectSettings.instance.Save(); m_SerializedObject = ShaderGraphProjectSettings.instance.GetSerializedObject(); m_shaderVariantLimit = m_SerializedObject.FindProperty("shaderVariantLimit"); + m_overrideShaderVariantLimit = m_SerializedObject.FindProperty("overrideShaderVariantLimit"); m_customInterpWarn = m_SerializedObject.FindProperty("customInterpolatorWarningThreshold"); m_customInterpError = m_SerializedObject.FindProperty("customInterpolatorErrorThreshold"); m_HeatValues = m_SerializedObject.FindProperty(nameof(ShaderGraphProjectSettings.customHeatmapValues)); @@ -74,15 +82,26 @@ void OnGUIHandler(string searchContext) EditorGUI.BeginChangeCheck(); - var newVariantLimitValue = EditorGUILayout.DelayedIntField(Styles.shaderVariantLimitLabel, m_shaderVariantLimit.intValue); - newVariantLimitValue = Mathf.Max(0, newVariantLimitValue); - if (newVariantLimitValue != m_shaderVariantLimit.intValue) + var doOverride = EditorGUILayout.Toggle(Styles.overrideShaderVariantLimitLabel, m_overrideShaderVariantLimit.boolValue); + if (doOverride != m_overrideShaderVariantLimit.boolValue) { - m_shaderVariantLimit.intValue = newVariantLimitValue; + m_overrideShaderVariantLimit.boolValue = doOverride; if (ShaderGraphPreferences.onVariantLimitChanged != null) ShaderGraphPreferences.onVariantLimitChanged(); } + using (new EditorGUI.DisabledScope(!doOverride)) + { + var newVariantLimitValue = EditorGUILayout.DelayedIntField(Styles.shaderVariantLimitLabel, m_shaderVariantLimit.intValue); + newVariantLimitValue = Mathf.Max(0, newVariantLimitValue); + if (newVariantLimitValue != m_shaderVariantLimit.intValue) + { + m_shaderVariantLimit.intValue = newVariantLimitValue; + if (ShaderGraphPreferences.onVariantLimitChanged != null) + ShaderGraphPreferences.onVariantLimitChanged(); + } + } + EditorGUILayout.LabelField(Styles.CustomInterpLabel, EditorStyles.boldLabel); EditorGUI.indentLevel++; diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Arithmetic.md b/Packages/com.unity.visualeffectgraph/Documentation~/Arithmetic.md new file mode 100644 index 00000000000..3399a069ef4 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Arithmetic.md @@ -0,0 +1,31 @@ +# Arithmetic Operators + +Perform mathematical calculations on input data. + +| **Page** | **Description** | +| --- | --- | +| [Absolute](Operator-Absolute.md) | Calculate the absolute value of an input. | +| [Add](Operator-Add.md) | Calculate the sum of all inputs. | +| [Divide](Operator-Divide.md) | Divide the first input sequentially by all other inputs. | +| [Fractional](Operator-Fractional.md) | Extract the fractional part of an input. | +| [Inverse Lerp](Operator-InverseLerp.md) | Calculate the fraction representing how far a value is between two values. | +| [Lerp](Operator-Lerp.md) | Calculate a linear interpolation between two values. | +| [Modulo](Operator-Modulo.md) | Calculate the remainder of dividing of one value by another. | +| [Multiply](Operator-Multiply.md) | Multiply all inputs together. | +| [Negate](Operator-Negate.md) | Multiply an input value by -1 to invert its sign. | +| [One Minus](Operator-OneMinus.md) | Subtract an input value from one. | +| [Power](Operator-Power.md) | Raise one input to the power of another input. | +| [Reciprocal](Operator-Reciprocal.md) | Calculate the result of dividing 1 by an input value. | +| [Sign](Operator-Sign.md) | Return whether an input is positive, negative, or 0. | +| [Smoothstep](Operator-Smoothstep.md) | Calculate smooth Hermite interpolation between two values. | +| [Square Root](Operator-SquareRoot.md) | Calculate the square root of an input. | +| [Step](Operator-Step.md) | Compare an input value to a threshold and return whether an input is above or below the threshold | +| [Subtract](Operator-Subtract.md) | Subtract one or more inputs from another input. | + +## Additional resources + +- [Clamp](Clamp.md) +- [Remap](Remap.md) +- [Math](Math.md) + + diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Attribute.md b/Packages/com.unity.visualeffectgraph/Documentation~/Attribute.md new file mode 100644 index 00000000000..109c928122d --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Attribute.md @@ -0,0 +1,15 @@ +# Attribute Blocks + +Write values to the [Attributes](Attributes.md) of particles. + +| **Page** | **Description** | +| --- | --- | +| [Curve](Block-SetAttributeFromCurve.md) | Write values to an attribute based on a sample from an Animation Curve or Gradient. | +| [Derived > Calculate Mass from Volume](Block-CalculateMassFromVolume.md) | Set the mass of a particle based on its scale and density. | +| [Map](Block-SetAttributeFromMap.md) | Sample data from textures and store them in attributes. | +| [Set](Block-SetAttribute.md) | Write values to an attribute directly, or use random modes to set attributes to random values. | + +## Additional resources + +- [Attributes](Attributes.md) +- [Standard Attribute Reference](Reference-Attributes.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Bitwise.md b/Packages/com.unity.visualeffectgraph/Documentation~/Bitwise.md new file mode 100644 index 00000000000..7a300d257ea --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Bitwise.md @@ -0,0 +1,18 @@ +# Bitwise Operators + +Perform bitwise logical operations on inputs. + +| **Page** | **Description** | +| --- | --- | +| [And](Operator-BitwiseAnd.md) | Perform a bitwise AND operation, which outputs 1 if both bits are 1. | +| [Complement](Operator-BitwiseComplement.md) | Perform a bitwise NOT operation to invert each bit. | +| [Left Shift](Operator-BitwiseLeftShift.md) | Shift an input value left by a specified number of bits. | +| [Or](Operator-BitwiseOr.md) | Perform a bitwise OR operation, which outputs 1 if either bit is 1. | +| [Right Shift](Operator-BitwiseRightShift.md) | Shift an input value right by a specified number of bits. | +| [Xor](Operator-BitwiseXor.md) | Perform a bitwise XOR operation, which outputs 1 if only one bit is 1. | + +## Additional resources + +- [Logic Operators](Logic.md) +- [Math Operators](Math.md) + diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-Collision-LandingPage.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-Collision-LandingPage.md index f74a87b1b73..44c98a1281b 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-Collision-LandingPage.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-Collision-LandingPage.md @@ -1,13 +1,13 @@ # Collision Blocks reference -Explore the properties of Collision Blocks to configure how particles collide with shapes or the depth buffer. +Configure how particles collide with shapes or the depth buffer. | **Page** | **Description** | -|-|-| -| [Collision Shape](Block-CollisionShape.md) | Explore the properties of the Collision Shape Block. | -| [Collision Depth Buffer](Block-CollideWithDepthBuffer.md) | Explore the properties of the Collision Depth Buffer Block. | -| [Kill Shape](Block-KillShape.md) | Explore the properties of the Kill Shape Block. | -| [Trigger Shape](Block-TriggerShape.md) | Explore the properties of the Trigger Shape Block. | +| --- | --- | +| [Collision Shape](Block-CollisionShape.md) | Define a shape that particles collide with. | +| [Collide with Depth Buffer](Block-CollideWithDepthBuffer.md) | Make particles collide with a camera's depth buffer. | +| [Kill Shape](Block-KillShape.md) | Define a shape that destroys particles that collide with it. | +| [Trigger Shape](Block-TriggerShape.md) | Define a shape that detects particle collisions and updates collision attributes. | ## Additional resources diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-CollisionShape.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-CollisionShape.md index 2031c731e20..09e5780f7ce 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-CollisionShape.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-CollisionShape.md @@ -1,4 +1,3 @@ - # Collision Shape Block reference The Collision Shape Block defines a shape that particles collide with. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPositionShape-LandingPage.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPositionShape-LandingPage.md index f121e128091..19d30f13129 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPositionShape-LandingPage.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-SetPositionShape-LandingPage.md @@ -1,13 +1,13 @@ # Set Position Blocks reference -Explore the properties of Set Position Blocks to configure how Unity calculates particle positions based on an input shape. +Configure particle positions based on an input. | **Page** | **Description** | |-|-| | [Set Position (Depth)](Block-SetPosition(Depth).md) | Explore the properties of the Set Position (Depth) block. | | [Set Position (Mesh)](Block-SetPosition(Mesh).md) | Explore the properties of the Set Position (Mesh) block. | | [Set Position (Skinned Mesh)](Block-SetPosition(SkinnedMesh).md) | Explore the properties of the Set Position (Skinned Mesh) block. | -| [Set Position Shape](Block-SetPositionShape.md) | Explore the properties of the Set Position Shape block. | +| [Set Position Shape Block reference](Block-SetPositionShape.md) | Explore the properties of the Set Position Shape block. | | [Set Position (Sequential)](Block-SetPosition(Sequential).md) | Explore the properties of the Set Position (Sequential) block. | | [Tile/Warp Positions](Block-TileWarpPositions.md) | Explore the properties of the Tile/Warp Positions block. | diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-UpdatePosition.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-UpdatePosition.md index 15424af3495..9df34d3868a 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-UpdatePosition.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-UpdatePosition.md @@ -2,7 +2,9 @@ Menu Path : **Implicit > Integration : Update Position** -The **Integration : Update Position** Block updates particle positions based on their velocity. If the system uses the velocity attribute and you enable **Update Position** in the Update Context's Inspector, Unity implicitly adds this Block to the Context and hides it. +The **Integration : Update Position** Block updates particle positions based on their velocity. + +**Note:** If the system uses the velocity attribute and you enable **Update Position** in the Update Context's Inspector, Unity implicitly adds this Block to the Context and hides it. If you add your own **Integration : Update Position** Block too, Unity updates positions twice. ![Unity adds a Update Position Block when you enable Update Position in the Update Context's Inspector.](Images/Block-UpdatePositionInspector.png) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block-UpdateRotation.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block-UpdateRotation.md index 5e7431de549..2a0a325b8a1 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Block-UpdateRotation.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block-UpdateRotation.md @@ -2,7 +2,9 @@ Menu Path : **Implicit > Integration : Update Rotation** -The **Integration : Update Rotation** Block updates particle orientation based on their angular velocity. If the system uses the angular velocity attribute and you enable **Update Rotation** in the Update Context's Inspector, Unity implicitly adds this Block to the Context and hides it. +The **Integration : Update Rotation** Block updates particle orientation based on their angular velocity. + +**Note:** If the system uses the angular velocity attribute and you enable **Update Rotation** in the Update Context's Inspector, Unity implicitly adds this Block to the Context and hides it. If you add your own **Integration : Update Rotation** Block too, Unity updates rotation twice. ![Unity adds a Update Rotation Block when you enable Update Rotation in the Update Context's Inspector.](Images/Block-UpdateRotationInspector.png) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Block.md b/Packages/com.unity.visualeffectgraph/Documentation~/Block.md new file mode 100644 index 00000000000..1acc45e3d28 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Block.md @@ -0,0 +1,25 @@ +# Blocks + +Control the behavior, appearance, and simulation of particles. + +| **Page** | **Description** | +| --- | --- | +| [Attribute Blocks](Attribute.md) | Write values to the attributes of particles. | +| [Collision Blocks](Block-Collision-LandingPage.md) | Configure how particles collide with shapes or the depth buffer. | +| [Force Blocks](Force.md) | Apply and control forces on particles, such as gravity and turbulence. | +| [Custom HLSL Block](Operator-CustomHLSL.md) | Write an HLSL function that takes inputs and produces outputs. | +| [Implicit Integration Blocks](Implicit.md) | Explore the hidden Blocks that Visual Effect Graph uses to update the position and rotation of particles. | +| [Orientation Blocks](Orientation.md) | Change the direction that particles face. | +| [Output Blocks](Output.md) | Control particle output and rendering. | +| [Set Position Blocks](Block-SetPositionShape-LandingPage.md) | Configure particle positions based on an input shape. | +| [Size > Screen Space Size](Block-ScreenSpaceSize.md) | Calculate the scale needed for a particle to reach a specific size. | +| [Spawn Blocks](Spawn.md) | Customize behavior for spawning particles. | +| [Trigger Event Block](Block-Trigger-Event.md) | Spawn particles using a GPU Event. | +| [Velocity Blocks](Velocity.md) | Dynamically adjust the velocity of particles. | + +## Additional resources + +- [Blocks](Blocks.md) +- [Graph logic and philosophy](GraphLogicAndPhilosophy.md) +- [Output event handlers](OutputEventHandlers.md) + diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Builtin.md b/Packages/com.unity.visualeffectgraph/Documentation~/Builtin.md new file mode 100644 index 00000000000..08fa076d23e --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Builtin.md @@ -0,0 +1,18 @@ +# Built-in Operators + +Operators that output time, frame indices, and coordinates. + +| **Page** | **Description** | +| --- | --- | +| [Delta Time](Operator-DeltaTime.md) | Get the time in seconds between the current and previous frames. | +| [Frame Index](Operator-FrameIndex.md) | Get the current frame index. | +| [Local to World](Operator-LocalToWorld.md) | Get a matrix that transforms a point from local space to world space. | +| [System Seed](Operator-SystemSeed.md) | Get the seed used to generate random numbers. | +| [Total Time](Operator-TotalTime.md) | Get the total time since the effect started. | +| [World to Local](Operator-WorldToLocal.md) | Get a matrix that transforms a point from world space to local space. | + +## Additional resources + +- [Math Operators](Math.md) +- [Attribute Blocks](Attribute.md) + diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Camera.md b/Packages/com.unity.visualeffectgraph/Documentation~/Camera.md new file mode 100644 index 00000000000..82d266352db --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Camera.md @@ -0,0 +1,15 @@ +# Camera Operators + +Output information about cameras, and convert between view space and world space. + +| **Page** | **Description** | +| --- | --- | +| [Main Camera](Operator-MainCamera.md) | Get information about the current main camera, including integration with the active Scriptable Render Pipeline. | +| [Viewport to World Point](Operator-ViewportToWorldPoint.md) | Transform a position from viewport space to world space | +| [World to Viewport Point](Operator-WorldToViewportPoint.md) | Transform a position from world space to view space. | + +## Additional resources + +- [Coordinates](Coordinates.md) +- [Geometry](Geometry.md) +- [Built-in Operators](Builtin.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Clamp.md b/Packages/com.unity.visualeffectgraph/Documentation~/Clamp.md new file mode 100644 index 00000000000..61dc923b2bc --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Clamp.md @@ -0,0 +1,14 @@ +# Clamp Operators + +Clamp, round, or limit values. + +| **Page** | **Description** | +| --- | --- | +| [Ceiling](Operator-Ceiling.md) | Round an input up to the nearest integer. | +| [Clamp](Operator-Clamp.md) | Limit an input value between a lower and upper bound for each axis. | +| [Discretize](Operator-Discretize.md) | Get the multiple of an input that's closest to a second input. | +| [Floor](Operator-Floor.md) | Round an input value down to the nearest integer. | +| [Maximum](Operator-Maximum.md) | Get the largest value from all input values. | +| [Minimum](Operator-Minimum.md) | Get the smallest value from all input values. | +| [Round](Operator-Round.md) | Round an input value to the nearest integer. | +| [Saturate](Operator-Saturate.md) | Clamp a value between 0 and 1. | diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Color.md b/Packages/com.unity.visualeffectgraph/Documentation~/Color.md new file mode 100644 index 00000000000..37b072347b6 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Color.md @@ -0,0 +1,18 @@ +# Color Operators + +Output and convert color values. + +| **Page** | **Description** | +| --- | --- | +| [Color Luma](Operator-ColorLuma.md) | Get the perceived brightness of an input color. | +| [HSV to RGB](Operator-HSVToRGB.md) | Convert hue, saturation, value (HSV) color values to red, green, blue (RGB) color values. | +| [RGB to HSV](Operator-RGBToHSV.md) | Convert red, green, blue (RGB) color values to hue, saturation, value (HSV) color values. | + +## Additional resources + +- [Color](Operator-InlineColor.md) +- [Sample Gradient](Operator-SampleGradient.md) +- [Saturate](Operator-Saturate.md) + + + diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Constants.md b/Packages/com.unity.visualeffectgraph/Documentation~/Constants.md new file mode 100644 index 00000000000..0d4369f97f4 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Constants.md @@ -0,0 +1,14 @@ +# Constants Operators + +Get mathematical constants. + +| **Page** | **Description** | +| --- | --- | +| [Epsilon (ε)](Operator-Epsilon.md) | Get a tiny value that you can use to avoid precision issues when you compare float values. | +| [Pi (π)](Operator-Pi.md) | Get the ratio of a circle's circumference to its diameter. | + +## Additional resources + +- [Arithmetic Operators](Arithmetic.md) +- [Clamp Operators](Clamp.md) +- [Math Operators](Math.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputLitSettings.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputLitSettings.md index b0d2f72154f..555f74e4e55 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputLitSettings.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputLitSettings.md @@ -1,4 +1,4 @@ -# Output Lit +# Lit Output Settings Menu Path : **Context > Output [Data Type] Lit [Type]** diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputSharedSettings.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputSharedSettings.md index 4a916b41d21..103f1f468c5 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputSharedSettings.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context-OutputSharedSettings.md @@ -1,4 +1,4 @@ -# Shared Output Settings and Properties +# Shared output settings and properties All outputs share these settings and property ports. In case of Shader Graph Output, some settings are actually provided by the Shader Graph Asset. diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Context.md b/Packages/com.unity.visualeffectgraph/Documentation~/Context.md new file mode 100644 index 00000000000..5af7ddabebc --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Context.md @@ -0,0 +1,31 @@ +# Contexts + +Explore the different [Contexts](Contexts.md) you can add to a graph. + +| **Page** | **Description** | +| --- | --- | +| [Event](Context-Event.md) | Define names for events that trigger actions in a graph. | +| [GPU Event](Context-GPUEvent.md) | Spawn new particles from specific Blocks in Update or Initialize Contexts. | +| [Initialize Particle](Context-Initialize.md) | Process an event and initialize new particle elements. | +| [Output Decal](Context-OutputForwardDecal.md) | Render a particle system using a projected decal texture. | +| [Output Distortion](Context-OutputDistortion.md) | In the High Definition Render Pipeline (HDRP), use distortion to simulate effects like heat haze from fire. | +| [Output Line](Context-OutputLine.md) | Render particles as lines. | +| [Output Mesh](Context-OutputMesh.md) | Render a static mesh. | +| [Output Particle HDRP Lit Decal](Context-OutputParticleHDRPLitDecal.md) | Use a decal to render a particle system in HDRP. | +| [Output Particle HDRP Volumetric Fog](Context-OutputParticleHDRPVolumetricFog.md) | Convert particles into a volumetric fog effect in HDRP, to create dynamic fog effects. | +| [Output Particle Mesh](Context-OutputParticleMesh.md) | Render particles as meshes. | +| [Output Particle URP Lit Decal](Context-OutputParticleURPLitDecal.md) | Use a decal to render a particle system in the Universal Render Pipeline (URP). | +| [Output Point](Context-OutputPoint.md) | Render particles as points. | +| [Output Primitive](Context-OutputPrimitive.md) | Render particles as lit quads, triangles, or octagons. | +| [Output ShaderGraph Mesh](Context-OutputShaderGraphMesh.md) | Render particles as a custom Shader Graph mesh. | +| [Output ShaderGraph Quad](Context-OutputShaderGraphPlanarPrimitive.md) | Render particles as a custom Shader Graph quad. | +| [Output ShaderGraph Strip](Context-OutputShaderGraphStrip.md) | Render particles as a custom Shader Graph strip. | +| [Shared output settings](SharedOutputSettings.md) | Explore the settings that appear in all Contexts. | +| [Spawn](Context-Spawn.md) | Control the spawn rate of particles, or create a custom spawning behavior. | +| [Update Particle](Context-Update.md) | Manage the behavior of particles or particle strips from an Initialize Context. | + +## Additional resources + +- [Visual Effect Graph Logic](GraphLogicAndPhilosophy.md) +- [Blocks](Blocks.md) +- [Contexts (Graph Logic & Philosophy)](Contexts.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Coordinates.md b/Packages/com.unity.visualeffectgraph/Documentation~/Coordinates.md new file mode 100644 index 00000000000..ea214d4ce8c --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Coordinates.md @@ -0,0 +1,17 @@ +# Coordinate Operators + +Convert between coordinate systems. + +| **Page** | **Description** | +| --- | --- | +| [Polar to Rectangular](Operator-PolarToRectangular.md) | Convert from polar coordinates to rectangular xy coordinates. | +| [Rectangular to Polar](Operator-RectangularToPolar.md) | Convert from rectangular xy coordinates to polar coordinates. | +| [Rectangular to Spherical](Operator-RectangularToSpherical.md) | Convert from rectangular xyz coordinates to spherical coordinates. | +| [Spherical to Rectangular](Operator-SphericalToRectangular.md) | Convert from spherical coordinates to rectangular XYZ coordinates. | + +## Additional resources + +- [Change Space](Operator-ChangeSpace.md) +- [Transform (Position)](Operator-Transform(Position).md) +- [Local to World](Operator-LocalToWorld.md) + diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/CustomSpawn.md b/Packages/com.unity.visualeffectgraph/Documentation~/CustomSpawn.md new file mode 100644 index 00000000000..e1d8b3c9c31 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/CustomSpawn.md @@ -0,0 +1,16 @@ +# Custom Spawn Blocks + +Customize advanced behavior for spawning particles. + +| **Page** | **Description** | +| --- | --- | +| [Increment Strip Index On Start](Block-IncrementStripIndexOnStart.md) | Create a new group of particles each time the start event of the Spawn Context triggers. | +| [Set Spawn Time](Block-SetSpawnTime.md) | Allow Initialize Contexts to use the time since the previous play event of the Spawn Context. | +| [Spawn Over Distance](Block-SpawnOverDistance.md) | Spawn particles based on the distance moved since the previous frame. | + +## Additional resources + +- [Spawn](Context-Spawn.md) +- [Spawner Callbacks](SpawnerCallbacks.md) +- [Events](Events.md) + diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Force.md b/Packages/com.unity.visualeffectgraph/Documentation~/Force.md new file mode 100644 index 00000000000..1b0ad8f8a6c --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Force.md @@ -0,0 +1,20 @@ +# Force Blocks + +Apply and control forces on particles, such as gravity and turbulence. + +| **Page** | **Description** | +| --- | --- | +| [Attractor Shape Signed Distance Field](Block-ConformToSignedDistanceField.md) | Pull particles towards a complex shape. | +| [Attractor Shape Sphere](Block-ConformToSphere.md) | Pull particles towards a sphere. | +| [Force](Block-Force.md) | Apply a force to particles by changing their velocity. | +| [Gravity](Block-Gravity.md) | Apply gravity to particles by changing their velocity. | +| [Linear Drag](Block-LinearDrag.md) | Slow particles down without affecting their direction. | +| [Turbulence](Block-Turbulence.md) | Add natural-looking motion to particles. | +| [Vector Force Field](Block-VectorForceField.md) | Apply specific forces to particles using a vector field. | + +## Additional resources + +- [Velocity Blocks](Velocity.md) +- [Vector Fields / Signed Distance Fields](VectorFields.md) +- [Noise Operators](Noise.md) + diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Geometry.md b/Packages/com.unity.visualeffectgraph/Documentation~/Geometry.md new file mode 100644 index 00000000000..8dc84da86b8 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Geometry.md @@ -0,0 +1,29 @@ +# Geometry Operators + +Perform geometric calculations and transformations. + +| **Page** | **Description** | +| --- | --- | +| [Area (Circle)](Operator-Area(Circle).md) | Calculate the area of a circle. | +| [Change Space](Operator-ChangeSpace.md) | Convert a vector from local space to world space. | +| [Distance (Line)](Operator-Distance(Line).md) | Calculate the distance between a position and the closest point on a line. | +| [Distance (Plane)](Operator-Distance(Plane).md) | Calculate the distance between a position and the closest point on a plane. | +| [Distance (Sphere)](Operator-Distance(Sphere).md) | Calculate the distance between a position and the closest point on a sphere. | +| [InvertTRS (Matrix)](Operator-InvertTRS(Matrix).md) | Invert a matrix that contains translation, rotation, and scaling. | +| [Transform (Direction)](Operator-Transform(Direction).md) | Change the position, rotation, or scale of a direction vector. | +| [Transform (Matrix)](Operator-Transform(Matrix).md) | Change the position, rotation, or scale of a matrix. | +| [Transform (Position)](Operator-Transform(Position).md) | Change the position, rotation, or scale of a position. | +| [Transform (Vector)](Operator-Transform(Vector).md) | Change the position, rotation, or scale of a vector. | +| [Transform (Vector4)](Operator-Transform(Vector4).md) | Change the position, rotation, or scale of a Vector4. | +| [Transpose (Matrix)](Operator-Transpose(Matrix).md) | Flip a matrix across its diagonal, to swap columns with rows. | +| [Volume (Axis Aligned Box)](Operator-Volume(AxisAlignedBox).md) | Calculate the volume of an axis-aligned box. | +| [Volume (Cone)](Operator-Volume(Cone).md) | Calculate the volume of a cone. | +| [Volume (Cylinder)](Operator-Volume(Cylinder).md) | Calculate the volume of a cylinder. | +| [Volume (Oriented Box)](Operator-Volume(OrientedBox).md) | Calculate the volume of an oriented box. | +| [Volume (Sphere)](Operator-Volume(Sphere).md) | Calculate the volume of a sphere. | +| [Volume (Torus)](Operator-Volume(Torus).md) | Calculate the volume of a torus. | + +## Additional resources + +- [VFX type reference](VisualEffectGraphTypeReference.md) + diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Implicit.md b/Packages/com.unity.visualeffectgraph/Documentation~/Implicit.md new file mode 100644 index 00000000000..f60a6095f58 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Implicit.md @@ -0,0 +1,14 @@ +# Implicit Integration Blocks + +Update the position and rotation of particles. + +| **Page** | **Description** | +| --- | --- | +| [Integration: Update Position](Block-UpdatePosition.md) | Update the positions of particles. | +| [Integration: Update Rotation](Block-UpdateRotation.md) | Update the rotation of particles. | + +## Additional resources + +- [Update Context](Context-Update.md) +- [Velocity Blocks](Velocity.md) +- [Force Blocks](Force.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Inline.md b/Packages/com.unity.visualeffectgraph/Documentation~/Inline.md new file mode 100644 index 00000000000..32469a03974 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Inline.md @@ -0,0 +1,47 @@ +# Inline Operators + +Store values, vectors, shapes, and textures in a graph. + +| **Page** | **Description** | +| --- | --- | +| [AABox](Operator-InlineAABox.md) | Store an axis-aligned 3D box. | +| [AnimationCurve](Operator-InlineAnimationCurve.md) | Store an animation curve. | +| [ArcCircle](Operator-InlineArcCircle.md) | Store a segment of a circle. | +| [ArcCone](Operator-InlineArcCone.md) | Store a segment of a cone. | +| [ArcSphere](Operator-InlineArcSphere.md) | Store a segment of a sphere. | +| [ArcTorus](Operator-InlineArcTorus.md) | Store a segment of a torus. | +| [bool](Operator-Inlinebool.md) | Store a Boolean. | +| [Camera](Operator-InlineCamera.md) | Store a camera. | +| [Circle](Operator-InlineCircle.md) | Store a circle. | +| [Color](Operator-InlineColor.md) | Store a color. | +| [Cone](Operator-InlineCone.md) | Store a cone. | +| [Cubemap](Operator-InlineCubemap.md) | Store a cubemap texture. | +| [CubemapArray](Operator-InlineCubemapArray.md) | Store a cubemap array. | +| [Cylinder](Operator-InlineCylinder.md) | Store a cylinder. | +| [Direction](Operator-InlineDirection.md) | Store a direction. | +| [FlipBook](Operator-InlineFlipBook.md) | Store a flipbook texture. | +| [float](Operator-Inlinefloat.md) | Store a float. | +| [Gradient](Operator-InlineGradient.md) | Store a gradient. | +| [int](Operator-Inlineint.md) | Store an integer. | +| [Line](Operator-InlineLine.md) | Store a line. | +| [Matrix4x4](Operator-InlineMatrix4x4.md) | Store a 4x4 matrix. | +| [Mesh](Operator-InlineMesh.md) | Store a mesh. | +| [OrientedBox](Operator-InlineOrientedBox.md) | Store an oriented box. | +| [Plane](Operator-InlinePlane.md) | Store a plane. | +| [Position](Operator-InlinePosition.md) | Store a position. | +| [Sphere](Operator-InlineSphere.md) | Store a sphere. | +| [TerrainType](Operator-InlineTerrainType.md) | Store a terrain type. | +| [Texture2D](Operator-InlineTexture2D.md) | Store a 2D texture. | +| [Texture2DArray](Operator-InlineTexture2DArray.md) | Store a 2D texture array. | +| [Texture3D](Operator-InlineTexture3D.md) | Store a 3D texture. | +| [Torus](Operator-InlineTorus.md) | Store a torus. | +| [Transform](Operator-InlineTransform.md) | Store position, rotation, and scale. | +| [uint](Operator-Inlineuint.md) | Store an unsigned integer. | +| [Vector](Operator-InlineVector.md) | Store a vector with one dimension. | +| [Vector2](Operator-InlineVector2.md) | Store a vector with two dimensions. | +| [Vector3](Operator-InlineVector3.md) | Store a vector with three dimensions. | +| [Vector4](Operator-InlineVector4.md) | Store a vector with four dimensions. | + +## Additional resources + +- [VFX type reference](VisualEffectGraphTypeReference.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Logic.md b/Packages/com.unity.visualeffectgraph/Documentation~/Logic.md new file mode 100644 index 00000000000..438262896cb --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Logic.md @@ -0,0 +1,19 @@ +# Logic Operators + +Perform Boolean operations and conditional branching. + +| **Page** | **Description** | +| --- | --- | +| [And](Operator-LogicAnd.md) | Output `true` if both inputs are `true`. | +| [Branch](Operator-Branch.md) | Test a Boolean and return different values for `true` and `false`. | +| [Compare](Operator-Compare.md) | Compare two floats based on a condition and return the result as a Boolean. | +| [Nand](Operator-LogicNand.md) | Output `true` if at least one input is `false`. | +| [Nor](Operator-LogicNor.md) | Output `true` if both inputs are `false`. | +| [Not](Operator-LogicNot.md) | Output `true` if an input is `false`, and vice versa. | +| [Or](Operator-LogicOr.md) | Output `true` if either input is `true`. | +| [Switch](Operator-Switch.md) | Compare an input to case values, and output a value depending on the case. | + +## Additional resources + +- [Bitwise Operators](Bitwise.md) + diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Math.md b/Packages/com.unity.visualeffectgraph/Documentation~/Math.md new file mode 100644 index 00000000000..735e80e7615 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Math.md @@ -0,0 +1,22 @@ +# Math Operators + +Perform calculations, conversions, and transformations. + +| **Page** | **Description** | +| --- | --- | +| [Arithmetic](Arithmetic.md) | Perform mathematical calculations on input data. | +| [Clamp](Clamp.md) | Clamp, round, or limit values. | +| [Constants](Constants.md) | Get mathematical constants. | +| [Coordinates](Coordinates.md) | Convert between coordinate systems. | +| [Exp](Operator-Exp.md) | Raise a number to a specified power. | +| [Geometry](Geometry.md) | Perform geometric calculations and transformations. | +| [Log](Operator-Log.md) | Calculate the logarithm of a number. | +| [Remap](Remap.md) | Remap values between ranges. | +| [Trigonometry](Trigonometry.md) | Perform trigonometric calculations. | +| [Vector](Vector.md) | Perform vector and matrix calculations. | +| [Wave](Wave.md) | Generate waveforms, for example to control the behavior of particles over time. | + +## Additional resources + +- [Bitwise Operators](Bitwise.md) +- [Logic Operators](Logic.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Noise.md b/Packages/com.unity.visualeffectgraph/Documentation~/Noise.md new file mode 100644 index 00000000000..59356967320 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Noise.md @@ -0,0 +1,18 @@ +# Noise Operators + +Generate procedural noise patterns, for example to control the behavior of particles over time. + +| **Page** | **Description** | +| --- | --- | +| [Cellular Noise](Operator-CellularNoise.md) | Generate noise with cell-like patterns. | +| [Perlin Noise](Operator-PerlinNoise.md) | Generate noise with a smooth, natural variation. | +| [Value Noise](Operator-ValueNoise.md) | Generate noise with simple interpolated values. | +| [Cellular Curl Noise](Operator-CellularCurlNoise.md) | Create cell-like patterns that simulate fluid or gas. | +| [Perlin Curl Noise](Operator-PerlinCurlNoise.md) | Generate noise that simulates a fluid or gas with smooth variations. | +| [Value Curl Noise](Operator-ValueCurlNoise.md) | Generate noise that simulates a fluid or gas with simple interpolated values. | + +## Additional resources + +- [Wave Operators](Wave.md) +- [Random Operators](Random.md) +- [Sampling Operators](Sampling.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Operator.md b/Packages/com.unity.visualeffectgraph/Documentation~/Operator.md new file mode 100644 index 00000000000..47ad734c6bc --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Operator.md @@ -0,0 +1,29 @@ +# Operators + +Calculate, convert, and manipulate data for particles and effects. + +| **Page** | **Description** | +| --- | --- | +| [Attribute Operators](OperatorAttribute.md) | Get the data from particle attributes. | +| [Bitwise Operators](Bitwise.md) | Perform bitwise logical operations on inputs. | +| [Built-in Operators](Builtin.md) | Get time, frame indices, camera data, and coordinates. | +| [Camera Operators](Camera.md) | Convert positions between view space and world space. | +| [Color Operators](Color.md) | Output and convert color values. | +| [Custom HLSL Operator](Operator-CustomHLSL.md) | Write an HLSL function that takes inputs and produces outputs. | +| [Inline Operators](Inline.md) | Store values, vectors, shapes, and textures. | +| [Logic Operators](Logic.md) | Perform Boolean operations and conditional branching. | +| [Math](Math.md) | Perform mathematical calculations on input data. | +| [Noise Operators](Noise.md) | Generate procedural noise patterns, for example to control the behavior of particles over time. | +| [Random Operators](Random.md) | Generate random values or select random outputs. | +| [Sampling Operators](Sampling.md) | Fetch data from buffers, meshes, and textures. | +| [Spawn State](Operator-SpawnState.md) | Get information such as the number of particles spawned in the current frame, and the duration of the spawn loop. | +| [Point Cache](Operator-PointCache.md) | Get the attribute maps and point count stored in a Point Cache. | + +## Additional resources + +- [Operators (Graph Logic & Philosophy)](Operators.md) +- [Arithmetic Operators](Arithmetic.md) +- [Vector Operators](Vector.md) + + + diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/OperatorAttribute.md b/Packages/com.unity.visualeffectgraph/Documentation~/OperatorAttribute.md new file mode 100644 index 00000000000..44325d6053e --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/OperatorAttribute.md @@ -0,0 +1,41 @@ +# Attribute Operators + +Get the data from [particle attributes](Attributes.md). + +| **Page** | **Description** | +| --- | --- | +| [Age Over Lifetime](Operator-AgeOverLifetime.md) | Get the age of a particle relative to its lifetime. | +| [Get Attribute: age](Operator-GetAttributeAge.md) | Get the time since a particle spawned. | +| [Get Attribute: alive](Operator-GetAttributeAlive.md) | Get whether a particle is alive or not. | +| [Get Attribute: alpha](Operator-GetAttributeAlpha.md) | Get the alpha value of a rendered particle. | +| [Get Attribute: angle](Operator-GetAttributeAngle.md) | Get the rotation of a particle. | +| [Get Attribute: angularVelocity](Operator-GetAttributeAngularVelocity.md) | Get the rotation speed of a particle. | +| [Get Attribute: axisX](Operator-GetAttributeAxisX.md) | Get the x-axis of a particle. | +| [Get Attribute: axisY](Operator-GetAttributeAxisY.md) | Get the y-axis of a particle. | +| [Get Attribute: axisZ](Operator-GetAttributeAxisZ.md) | Get the z-axis of a particle. | +| [Get Attribute: color](Operator-GetAttributeColor.md) | Get the color of a particle. | +| [Get Attribute: direction](Operator-GetAttributeDirection.md) | Get the direction of a particle. | +| [Get Attribute: lifetime](Operator-GetAttributeLifetime.md) | Get the amount of time a particle should live for. | +| [Get Attribute: mass](Operator-GetAttributeMass.md) | Get the mass of a particle. | +| [Get Attribute: oldPosition](Operator-GetAttributeOldPosition.md) | Get the position of a particle before velocity is added. | +| [Get Attribute: particleCountInStrip](Operator-GetAttributeParticleCountInStrip.md) | Get the number of particles in a particle strip. | +| [Get Attribute: particleId](Operator-GetAttributeParticleID.md) | Get a unique ID that identifies a particle. | +| [Get Attribute: particleIndexInStrip](Operator-GetAttributeParticleIndexInStrip.md) | Get the index of a particle in its particle strip. | +| [Get Attribute: pivot](Operator-GetAttributePivot.md) | Get the origin coordinates of a particle. | +| [Get Attribute: position](Operator-GetAttributePosition.md) | Get the position of a particle. | +| [Get Attribute: scale](Operator-GetAttributeScale.md) | Get the scale of the particle. | +| [Get Attribute: seed](Operator-GetAttributeSeed.md) | Get the random number value of a particle. | +| [Get Attribute: size](Operator-GetAttributeSize.md) | Get the size of a particle. | +| [Get Attribute: spawnIndex](Operator-GetAttributeSpawnIndex.md) | Get the index of a particle when it spawned. | +| [Get Attribute: spawnTime](Operator-GetAttributeSpawnTime.md) | Get the time that the particle spawned. | +| [Get Attribute: stripIndex](Operator-GetAttributeStripIndex.md) | Get the index of the particle strip a particle belongs to. | +| [Get Attribute: targetPosition](Operator-GetAttributeTargetPosition.md) | Get the target coordinates of a particle. | +| [Get Attribute: texIndex](Operator-GetAttributeTexIndex.md) | Get the frame number from a flipbook texture a particle uses. | +| [Get Attribute: velocity](Operator-GetAttributeVelocity.md) | Get the current velocity of a particle. | +| [Get Custom Attribute](Operator-GetCustomAttribute.md) | Get the value of a custom attribute. | + +## Additional resources + +- [Attributes](Attributes.md) +- [Standard Attribute Reference](Reference-Attributes.md) +- [Attribute Blocks](Attribute.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Orientation.md b/Packages/com.unity.visualeffectgraph/Documentation~/Orientation.md new file mode 100644 index 00000000000..d081a1a655e --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Orientation.md @@ -0,0 +1,14 @@ +# Orientation Blocks + +Change the direction that particles face. + +| **Page** | **Description** | +| --- | --- | +| [Connect Target](Block-ConnectTarget.md) | Scale and rotate particles so they connect to a specified target position. | +| [Orient: Face [Mode]](Block-Orient.md) | Rotate particles so they face a particular direction. | + +## Additional resources + +- [Implicit Integration Blocks](Implicit.md) +- [Velocity Blocks](Velocity.md) + diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Output.md b/Packages/com.unity.visualeffectgraph/Documentation~/Output.md new file mode 100644 index 00000000000..cd64badda74 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Output.md @@ -0,0 +1,14 @@ +# Output Blocks + +Control particle output and rendering. + +| **Page** | **Description** | +| --- | --- | +| [Camera Fade](Block-CameraFade.md) | Fade out particles when they're too close to the near plane of the camera. | +| [Subpixel Anti-Aliasing](Block-SubpixelAntiAliasing.md) | Enlarge particles to ensure they cover at least one pixel on-screen. | + +## Additional resources + +- [Output Mesh](Context-OutputMesh.md) +- [Output Particle Mesh](Context-OutputParticleMesh.md) +- [Output Particle Point](Context-OutputPoint.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/PipelineTools.md b/Packages/com.unity.visualeffectgraph/Documentation~/PipelineTools.md new file mode 100644 index 00000000000..66c9eb85843 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/PipelineTools.md @@ -0,0 +1,17 @@ +# Pipeline tools + +Explore tools and techniques for working with complex shapes and custom behaviors. + +| **Page** | **Description** | +| --- | --- | +| [Representing Complex Shapes](representing-complex-shapes.md) | Use Signed Distance Fields (SDFs) and Point Caches to create complex shapes. | +| [ExposedProperty Helper](ExposedPropertyHelper.md) | Store and access properties in shaders. | +| [Vector Fields](VectorFields.md) | Use 3D shapes as 3D textures to control the behavior of particles. | +| [Spawner Callbacks](SpawnerCallbacks.md) | Use a C# API to control spawning, and access the spawn count and spawn events. | + +## Additional resources +- [Point Caches in the Visual Effect Graph](point-cache-in-vfx-graph.md) +- [Point Cache Bake Tool](point-cache-bake-tool.md) +- [Signed Distance Fields in the Visual Effect Graph](sdf-in-vfx-graph.md) + + diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Random.md b/Packages/com.unity.visualeffectgraph/Documentation~/Random.md new file mode 100644 index 00000000000..a7cce18e13a --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Random.md @@ -0,0 +1,15 @@ +# Random Operators + +Generate random values or select random outputs. + +| **Page** | **Description** | +| --- | --- | +| [Random Number](Operator-RandomNumber.md) | Generate a pseudo-random number within a specified range. | +| [Random Selector Weighted](Operator-RandomSelectorWeighted.md) | Select an output at random with custom weights. | + +## Additional resources + +- [Noise Operators](Noise.md) +- [Wave Operators](Wave.md) +- [Sampling Operators](Sampling.md) + diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Reference.md b/Packages/com.unity.visualeffectgraph/Documentation~/Reference.md new file mode 100644 index 00000000000..cbf86c6fff4 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Reference.md @@ -0,0 +1,15 @@ +# Reference + +Explore the standard attributes and types in Visual Effect Graph. + +| **Type** | **Description** | +| --- | --- | +| [Standard Attributes](Reference-Attributes.md) | Explore the attributes that contain the position, direction, appearance, and lifetime of a particle. | +| [Types](VisualEffectGraphTypeReference.md) | Explore types, including standard types and advanced types. | + +## Additional resources + +- [Attributes](Attributes.md) +- [Properties](Properties.md) + + diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Remap.md b/Packages/com.unity.visualeffectgraph/Documentation~/Remap.md new file mode 100644 index 00000000000..6627793f678 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Remap.md @@ -0,0 +1,9 @@ +# Remap Operators + +Remap values to different ranges. + +| **Page** | **Description** | +| --- | --- | +| [Remap](Operator-Remap.md) | Remap input values from an old range to a new range. | +| [Remap [0..1] => [-1..1]](Operator-Remap(-11).md) | Remap input values from 0 to 1 range, to -1 to 1 range. | +| [Remap [-1..1] => [0..1]](Operator-Remap(01).md) | Remap input values from -1 to 1 range, to 0 to 1 range. | \ No newline at end of file diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Sampling.md b/Packages/com.unity.visualeffectgraph/Documentation~/Sampling.md new file mode 100644 index 00000000000..896dac7b592 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Sampling.md @@ -0,0 +1,42 @@ +# Sampling Operators + +Fetch data from buffers, meshes, and textures. + +| **Page** | **Description** | +| --- | --- | +| [Buffer Count](Operator-BufferCount.md) | Get the number of elements in a `GraphicsBuffer`. | +| [Get Mesh Index Count](Operator-MeshIndexCount.md) | Get the number of indices in a mesh. | +| [Get Mesh Triangle Count](Operator-MeshTriangleCount.md) | Get the number of triangles in a mesh. | +| [Get Mesh Vertex Count](Operator-MeshVertexCount.md) | Get the number of vertices in a mesh. | +| [Get Skinned Mesh Index Count](Operator-SkinnedMeshIndexCount.md) | Get the number of indices in a skinned mesh. | +| [Get Skinned Mesh Triangle Count](Operator-SkinnedMeshTriangleCount.md) | Get the number of triangles in a skinned mesh. | +| [Get Skinned Mesh Vertex Count](Operator-SkinnedMeshVertexCount.md) | Get the number of vertices in a skinned mesh. | +| [Get Skinned Mesh Local Root Transform](Operator-SkinnedLocalTransform.md) | Get the transform of a root bone in a skinned mesh, relative to the Skinned Mesh Renderer. | +| [Get Skinned Mesh World Root Transform](Operator-SkinnedWorldTransform.md) | Get the transform of a root bone in a skinned mesh, relative to the world. | +| [Get Texture Dimensions](Operator-GetTextureDimensions.md) | Get the dimensions of a texture. | +| [Load CameraBuffer](Operator-LoadCameraBuffer.md) | Sample the camera buffer. | +| [Load Texture2D](Operator-LoadTexture2D.md) | Sample a 2D texture. | +| [Load Texture2DArray](Operator-LoadTexture2DArray.md) | Sample a 2D texture array. | +| [Load Texture3D](Operator-LoadTexture3D.md) | Sample a 3D texture. | +| [Position (Depth)](Operator-Position(Depth).md) | Sample the depth buffer of the camera. | +| [Sample Graphics Buffer](Operator-SampleBuffer.md) | Fetch and sample a structured `GraphicsBuffer`. | +| [Sample CameraBuffer](Operator-SampleCameraBuffer.md) | Sample the camera buffer using pixel dimensions and UVs. | +| [Sample Curve](Operator-SampleCurve.md) | Sample a curve. | +| [Sample Gradient](Operator-SampleGradient.md) | Sample a gradient. | +| [Sample Mesh](Operator-SampleMesh.md) | Get the vertex data of a mesh. | +| [Sample Mesh Index](Operator-SampleMeshIndex.md) | Get the index buffer data of geometry. | +| [Sample Skinned Mesh](Operator-SampleSkinnedMesh.md) | Get the vertex data of a skinned mesh. | +| [Sample Signed Distance Field](Operator-SampleSDF.md) | Get the distance field stored in a 3D texture. | +| [Sample Texture2D](Operator-SampleTexture2D.md) | Sample a 2D texture using UV coordinates and mipmap level. | +| [Sample Texture2DArray](Operator-SampleTexture2DArray.md) | Sample a 2D texture array using a slice, UV coordinates, and mipmap level. | +| [Sample Texture3D](Operator-SampleTexture3D.md) | Sample a 3D texture using UV coordinates and mipmap level. | +| [Sample TextureCube](Operator-SampleTextureCube.md) | Sample a cubemap texture using a direction vector and mipmap level. | +| [Sample TextureCubeArray](Operator-SampleTextureCubeArray.md) | Sample a cubemap array using a slice, direction vector, and mipmap level. | +| [Sample Attribute Map](Operator-SampleAttributeMap.md) | Sample an attribute map from a Point Cache. | + +## Additional resources + +- [Noise Operators](Noise.md) +- [Wave Operators](Wave.md) +- [Random Operators](Random.md) + diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/ShaderGraphIntegration.md b/Packages/com.unity.visualeffectgraph/Documentation~/ShaderGraphIntegration.md new file mode 100644 index 00000000000..38528c16d10 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/ShaderGraphIntegration.md @@ -0,0 +1,14 @@ +# Shader Graph integration + +Use [Shader Graph](https://docs.unity3d.com/Manual/shader-graph.html) to create custom shaders for visual effects. + +| **Page** | **Description** | +| --- | --- | +| [Working with Shader Graph in Visual Effect Graph](sg-working-with.md) | Make a shader graph compatible with Visual Effect Graph, and use it to render particles. | +| [Visual Effect Target](sg-target-visual-effect.md) | Create custom lit and unlit shader graphs to use in visual effects. This feature is deprecated and will be removed in a future release. | + +## Additional resources + +- [Working with Shader Graph in Visual Effect Graph](sg-working-with.md) +- [Visual Effect Target](sg-target-visual-effect.md) +- [Output ShaderGraph Mesh](Context-OutputShaderGraphMesh.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/SharedOutputSettings.md b/Packages/com.unity.visualeffectgraph/Documentation~/SharedOutputSettings.md new file mode 100644 index 00000000000..d0b4e59e0f2 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/SharedOutputSettings.md @@ -0,0 +1,14 @@ +# Shared Output Settings + +Explore the settings that appear in multiple outputs in Visual Effect Graph. + +| Page | Description | +|-|-| +|[Global Settings](Context-OutputSharedSettings.md)|Explore the settings and property that all outputs share. | +|[Lit Output Settings](Context-OutputLitSettings.md)|Explore outputs that receive lighting information, and support texture and material types that relate to lighting. | + +## Additional resources + +- [Output Blocks](Output.md) +- [Output Event Handlers](OutputEventHandlers.md) + diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Spawn.md b/Packages/com.unity.visualeffectgraph/Documentation~/Spawn.md new file mode 100644 index 00000000000..4d881dd1710 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Spawn.md @@ -0,0 +1,18 @@ +# Spawn Blocks + +Customize behavior for spawning particles. + +| **Page** | **Description** | +| --- | --- | +| [Constant Spawn Rate](Block-ConstantRate.md) | Spawn a specific number of particles per second. | +| [Single Burst](Block-Burst.md) | Use the Single/Periodic Burst Block to spawn particles instantly either once, or periodically using a delay. | +| [Periodic Burst](Block-Burst.md) | Use the Single/Periodic Burst Block to spawn particles at regular intervals. | +| [Variable Spawn Rate](Block-VariableRate.md) | Spawn a variable number of particles per second. | +| [Attribute > Set Spawn Event ](Block-SetSpawnEvent.md) | Modify the content of attributes stored in the Context event attribute. | +| [Custom](CustomSpawn.md) | Explore blocks that let you customize advanced behavior for spawning particles. | + +## Additional resources + +- [Spawn](Context-Spawn.md) +- [Spawner Callbacks](SpawnerCallbacks.md) +- [Events](Events.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/TableOfContents.md b/Packages/com.unity.visualeffectgraph/Documentation~/TableOfContents.md index 06fada19853..b38d5535df5 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/TableOfContents.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/TableOfContents.md @@ -38,10 +38,10 @@ * [Property Binders](PropertyBinders.md) * [Event Binders](EventBinders.md) * [Output Event Handlers](OutputEventHandlers.md) -* Shader Graph Integration +* [Shader Graph Integration](ShaderGraphIntegration.md) * [Shader Graphs in Visual Effects](sg-working-with.md) * [Visual Effect Target](sg-target-visual-effect.md) -* Pipeline Tools +* [Pipeline Tools](PipelineTools.md) * [Representing Complex Shapes](representing-complex-shapes.md) * [Signed Distance Fields](sdf-in-vfx-graph.md) * [SDF Bake Tool](sdf-bake-tool.md) @@ -54,7 +54,7 @@ * [Vector Fields](VectorFields.md) * [Spawner Callbacks](SpawnerCallbacks.md) * [Node Library](node-library.md) - * Context + * [Context](Context.md) * [Event](Context-Event.md) * [GPU Event](Context-GPUEvent.md) * [Initialize Particle](Context-Initialize.md) @@ -71,16 +71,15 @@ * [Output ShaderGraph Quad](Context-OutputShaderGraphPlanarPrimitive.md) * [Ouput Particle ShaderGraph Mesh](Context-OutputShaderGraphMesh.md) * [Output ParticleStrip ShaderGraph Quad](Context-OutputShaderGraphStrip.md) - * Shared Output Settings + * [Shared Output Settings](SharedOutputSettings.md) * [Global Settings](Context-OutputSharedSettings.md) * [Lit Output Settings](Context-OutputLitSettings.md) * [Spawn](Context-Spawn.md) * [Update Particle](Context-Update.md) - * Block - * Attribute + * [Block](Block.md) + * [Attribute](Attribute.md) * [Curve](Block-SetAttributeFromCurve.md) - * Derived - * [Calculate Mass from Volume](Block-CalculateMassFromVolume.md) + * [Derived > Calculate Mass from Volume](Block-CalculateMassFromVolume.md) * [Map](Block-SetAttributeFromMap.md) * [Set](Block-SetAttribute.md) * [Collision](Block-Collision-LandingPage.md) @@ -88,9 +87,8 @@ * [Collision Depth Buffer](Block-CollideWithDepthBuffer.md) * [Kill Shape](Block-KillShape.md) * [Trigger Shape](Block-TriggerShape.md) - * Flipbook * [Flipbook Player](Block-FlipbookPlayer.md) - * Force + * [Force](Force.md) * [Attractor Shape Signed Distance Field](Block-ConformToSignedDistanceField.md) * [Attractor Shape Sphere](Block-ConformToSphere.md) * [Force](Block-Force.md) @@ -98,15 +96,14 @@ * [Linear Drag](Block-LinearDrag.md) * [Turbulence](Block-Turbulence.md) * [Vector Force Field](Block-VectorForceField.md) - * HLSL - * [Custom HLSL](Block-CustomHLSL.md) - * Implicit + * [HLSL > Custom HLSL](Block-CustomHLSL.md) + * [Implicit](Implicit.md) * [Integration : Update Position](Block-UpdatePosition.md) * [Integration : Update Rotation](Block-UpdateRotation.md) - * Orientation + * [Orientation](Orientation.md) * [Connect Target](Block-ConnectTarget.md) * [Orient](Block-Orient.md) - * Output + * [Output](Output.md) * [Camera Fade](Block-CameraFade.md) * [Subpixel Anti-Aliasing](Block-SubpixelAntiAliasing.md) * [Position Shape](Block-SetPositionShape-LandingPage.md) @@ -116,28 +113,26 @@ * [Set Position Shape](Block-SetPositionShape.md) * [Set Position (Sequential)](Block-SetPosition(Sequential).md) * [Tile/Warp Positions](Block-TileWarpPositions.md) - * Size - * [Screen Space Size](Block-ScreenSpaceSize.md) - * Spawn + * [Size > Screen Space Size](Block-ScreenSpaceSize.md) + * [Spawn](Spawn.md) * [Constant Spawn Rate](Block-ConstantRate.md) * [Periodic Burst](Block-Burst.md) * [Single Burst](Block-Burst.md) * [Variable Spawn Rate](Block-VariableRate.md) - * Attribute - * [Set Spawn Event \](Block-SetSpawnEvent.md) - * Custom + * [Attribute > Set Spawn Event \](Block-SetSpawnEvent.md) + * [Custom Spawn Blocks](CustomSpawn.md) * [Increment Strip Index On Start](Block-IncrementStripIndexOnStart.md) * [Set Spawn Time](Block-SetSpawnTime.md) * [Spawn Over Distance](Block-SpawnOverDistance.md) * [Trigger Event Block reference](Block-Trigger-Event.md) - * Velocity + * [Velocity](Velocity.md) * [Velocity from Direction & Speed (Change Speed)](Block-VelocityFromDirectionAndSpeed(ChangeSpeed).md) * [Velocity from Direction & Speed (New Direction)](Block-VelocityFromDirectionAndSpeed(NewDirection).md) * [Velocity from Direction & Speed (Random Direction)](Block-VelocityFromDirectionAndSpeed(RandomDirection).md) * [Velocity from Direction & Speed (Spherical)](Block-VelocityFromDirectionAndSpeed(Spherical).md) * [Velocity from Direction & Speed (Tangent)](Block-VelocityFromDirectionAndSpeed(Tangent).md) - * Operator - * Attribute + * [Operator](Operator.md) + * [Attribute](OperatorAttribute.md) * [Age Over Lifetime](Operator-AgeOverLifetime.md) * [Get Attribute: age](Operator-GetAttributeAge.md) * [Get Attribute: alive](Operator-GetAttributeAlive.md) @@ -167,31 +162,30 @@ * [Get Attribute: texIndex](Operator-GetAttributeTexIndex.md) * [Get Attribute: velocity](Operator-GetAttributeVelocity.md) * [Get Custom Attribute](Operator-GetCustomAttribute.md) - * Bitwise + * [Bitwise](Bitwise.md) * [And](Operator-BitwiseAnd.md) * [Complement](Operator-BitwiseComplement.md) * [Left Shift](Operator-BitwiseLeftShift.md) * [Or](Operator-BitwiseOr.md) * [Right Shift](Operator-BitwiseRightShift.md) * [Xor](Operator-BitwiseXor.md) - * Builtin + * [Built-in](Builtin.md) * [Delta Time](Operator-DeltaTime.md) * [Frame Index](Operator-FrameIndex.md) * [Local to World](Operator-LocalToWorld.md) - * [Main Camera](Operator-MainCamera.md) * [System Seed](Operator-SystemSeed.md) * [Total Time](Operator-TotalTime.md) * [World to Local](Operator-WorldToLocal.md) - * Camera + * [Camera](Camera.md) + * [Main Camera](Operator-MainCamera.md) * [Viewport to World Point](Operator-ViewportToWorldPoint.md) * [World to Viewport Point](Operator-WorldToViewportPoint.md) - * Color + * [Color](Color.md) * [Color Luma](Operator-ColorLuma.md) * [HSV to RGB](Operator-HSVToRGB.md) * [RBG to HSV](Operator-RGBToHSV.md) - * HLSL - * [Custom HLSL](Operator-CustomHLSL.md) - * Inline + * [HLSL > Custom HLSL](Operator-CustomHLSL.md) + * [Inline](Inline.md) * [AABox](Operator-InlineAABox.md) * [AnimationCurve](Operator-InlineAnimationCurve.md) * [ArcCircle](Operator-InlineArcCircle.md) @@ -229,7 +223,7 @@ * [Vector2](Operator-InlineVector2.md) * [Vector3](Operator-InlineVector3.md) * [Vector4](Operator-InlineVector4.md) - * Logic + * [Logic](Logic.md) * [And](Operator-LogicAnd.md) * [Branch](Operator-Branch.md) * [Compare](Operator-Compare.md) @@ -238,8 +232,8 @@ * [Not](Operator-LogicNot.md) * [Or](Operator-LogicOr.md) * [Switch](Operator-Switch.md) - * Math - * Arithmetic + * [Math](Math.md) + * [Arithmetic](Arithmetic.md) * [Absolute](Operator-Absolute.md) * [Add](Operator-Add.md) * [Divide](Operator-Divide.md) @@ -257,7 +251,7 @@ * [Square Root](Operator-SquareRoot.md) * [Step](Operator-Step.md) * [Subtract](Operator-Subtract.md) - * Clamp + * [Clamp](Clamp.md) * [Ceiling](Operator-Ceiling.md) * [Clamp](Operator-Clamp.md) * [Discretize](Operator-Discretize.md) @@ -266,17 +260,16 @@ * [Minimum](Operator-Minimum.md) * [Round](Operator-Round.md) * [Saturate](Operator-Saturate.md) - * Constants + * [Constants](Constants.md) * [Epsilon](Operator-Epsilon.md) * [Pi](Operator-Pi.md) - * Coordinates + * [Coordinates](Coordinates.md) * [Polar to Rectangular](Operator-PolarToRectangular.md) * [Rectangular to Polar](Operator-RectangularToPolar.md) * [Rectangular to Spherical](Operator-RectangularToSpherical.md) * [Spherical to Rectangular](Operator-SphericalToRectangular.md) - * Exp - * [Exp](Operator-Exp.md) - * Geometry + * [Exp](Operator-Exp.md) + * [Geometry](Geometry.md) * [Area (Circle)](Operator-Area(Circle).md) * [Change Space](Operator-ChangeSpace.md) * [Distance (Line)](Operator-Distance(Line).md) @@ -295,13 +288,12 @@ * [Volume (Oriented Box)](Operator-Volume(OrientedBox).md) * [Volume (Sphere)](Operator-Volume(Sphere).md) * [Volume (Torus)](Operator-Volume(Torus).md) - * Log - * [Log](Operator-Log.md) - * Remap + * [Log](Operator-Log.md) + * [Remap](Remap.md) * [Remap](Operator-Remap.md) * [Remap [0..1] => [-1..1]](Operator-Remap(-11).md) * [Remap [-1..1] => [0..1]](Operator-Remap(01).md) - * Trigonometry + * [Trigonometry](Trigonometry.md) * [Acos](Operator-Acos.md) * [Asin](Operator-Asin.md) * [Atan](Operator-Atan.md) @@ -309,7 +301,7 @@ * [Cosine](Operator-Cosine.md) * [Sine](Operator-Sine.md) * [Tangent](Operator-Tangent.md) - * Vector + * [Vector](Vector.md) * [Append Vector](Operator-AppendVector.md) * [Construct Matrix](Operator-ConstructMatrix.md) * [Cross Product](Operator-CrossProduct.md) @@ -324,22 +316,22 @@ * [Squared Distance](Operator-SquaredDistance.md) * [Squared Length](Operator-SquaredLength.md) * [Swizzle](Operator-Swizzle.md) - * Wave + * [Wave](Wave.md) * [Sawtooth Wave](Operator-SawtoothWave.md) * [Sine Wave](Operator-SineWave.md) * [Square Wave](Operator-SquareWave.md) * [Triangle Wave](Operator-TriangleWave.md) - * Noise + * [Noise](Noise.md) * [Cellular Curl Noise](Operator-CellularCurlNoise.md) * [Cellular Noise](Operator-CellularNoise.md) * [Perlin Curl Noise](Operator-PerlinCurlNoise.md) * [Perlin Noise](Operator-PerlinNoise.md) * [Value Curl Noise](Operator-ValueCurlNoise.md) * [Value Noise](Operator-ValueNoise.md) - * Random + * [Random](Random.md) * [Random Number](Operator-RandomNumber.md) - * [Random Selector](Operator-RandomSelectorWeighted.md) - * Sampling + * [Random Selector](Operator-RandomSelectorWeighted.md) + * [Sampling](Sampling.md) * [Buffer Count](Operator-BufferCount.md) * [Get Mesh Index Count](Operator-MeshIndexCount.md) * [Get Mesh Triangle Count](Operator-MeshTriangleCount.md) @@ -370,13 +362,10 @@ * [Sample TextureCube](Operator-SampleTextureCube.md) * [Sample TextureCubeArray](Operator-SampleTextureCubeArray.md) * [Sample Attribute Map](Operator-SampleAttributeMap.md) - * Spawn - * [Spawn State](Operator-SpawnState.md) - * Utility - * [Point Cache](Operator-PointCache.md) -* Performance and Optimization - * [Profiling and Debug Panels](performance-debug-panel.md) -* Reference + * [Spawn > Spawn State](Operator-SpawnState.md) + * [Utility > Point Cache](Operator-PointCache.md) +* [Performance and optimization](performance-debug-panel.md) +* [Reference](Reference.md) * [Standard Attributes](Reference-Attributes.md) * [Types](VisualEffectGraphTypeReference.md) * [AABox](Type-AABox.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Trigonometry.md b/Packages/com.unity.visualeffectgraph/Documentation~/Trigonometry.md new file mode 100644 index 00000000000..0d3658633e8 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Trigonometry.md @@ -0,0 +1,18 @@ +# Trigonometric Operators + +Perform trigonometric calculations. + +| **Page** | **Description** | +| --- | --- | +| [Acos](Operator-Acos.md) | Calculate the arccosine (inverse cosine) of an input. | +| [Asin](Operator-Asin.md) | Calculate the arcsine (inverse sine) of an input. | +| [Atan](Operator-Atan.md) | Calculate the arctangent (inverse tangent) of an input. | +| [Atan2](Operator-Atan2.md) | Calculate the angle between the x-axis and a vector. | +| [Cosine](Operator-Cosine.md) | Calculate the cosine of an input. | +| [Sine](Operator-Sine.md) | Calculate the sine of an input. | +| [Tangent](Operator-Tangent.md) | Calculate the tangent of an input. | + +## Additional resources + +- [Math Operators](Math.md) + diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Vector.md b/Packages/com.unity.visualeffectgraph/Documentation~/Vector.md new file mode 100644 index 00000000000..d46a00d38b6 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Vector.md @@ -0,0 +1,25 @@ +# Vector Operators + +Perform vector and matrix calculations. + +| **Page** | **Description** | +| --- | --- | +| [Append Vector](Operator-AppendVector.md) | Combine up to four inputs into a single vector. | +| [Construct Matrix](Operator-ConstructMatrix.md) | Construct a 4x4 matrix from four `Vector4` values. | +| [Cross Product](Operator-CrossProduct.md) | Calculate the vector that's perpendicular to two input vectors | +| [Distance](Operator-Distance.md) | Calculate the distance between two points. | +| [Dot Product](Operator-DotProduct.md) | Determine whether two normalized vectors point in the same direction. | +| [Length](Operator-Length.md) | Calculate the length of a vector. | +| [Look At](Operator-LookAt.md) | Calculate the transform required to rotate a particle to look at a position. | +| [Normalize](Operator-Normalize.md) | Normalize a vector. | +| [Rotate 2D](Operator-Rotate2D.md) | Rotate a point in 2D around a center point. | +| [Rotate 3D](Operator-Rotate3D.md) | Rotate a point in 3D around a center point. | +| [Sample Bezier](Operator-SampleBezier.md) | Return information about a curve. | +| [Squared Distance](Operator-SquaredDistance.md) | Calculate the square of the distance between two points. | +| [Squared Length](Operator-SquaredLength.md) | Calculate the square of the length of a vector. | +| [Swizzle](Operator-Swizzle.md) | Rearrange the components of an input vector. | + +## Additional resources + +- [Math Operators](Math.md) +- [Geometry Operators](Geometry.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Velocity.md b/Packages/com.unity.visualeffectgraph/Documentation~/Velocity.md new file mode 100644 index 00000000000..cb14d7ffd83 --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Velocity.md @@ -0,0 +1,16 @@ +# Velocity Blocks + +Dynamically adjust the velocity of particles. + +| **Page** | **Description** | +| --- | --- | +| [Velocity from Direction & Speed (Change Speed)](Block-VelocityFromDirectionAndSpeed(ChangeSpeed).md) | Calculate velocity by scaling the direction of the particle using its speed. | +| [Velocity from Direction & Speed (New Direction)](Block-VelocityFromDirectionAndSpeed(NewDirection).md) | Calculate velocity by scaling a new direction vector using the speed of the particle. | +| [Velocity from Direction & Speed (Random Direction)](Block-VelocityFromDirectionAndSpeed(RandomDirection).md) | Calculate velocity by scaling a random direction vector using the speed of the particle. | +| [Velocity from Direction & Speed (Spherical)](Block-VelocityFromDirectionAndSpeed(Spherical).md) | Calculate velocity by scaling a spherical direction vector using the speed of the particle. | +| [Velocity from Direction & Speed (Tangent)](Block-VelocityFromDirectionAndSpeed(Tangent).md) | Calculate velocity by scaling a tangent direction vector using the speed of the particle. | + +## Additional resources + +- [Force Blocks](Force.md) +- [Implicit Integration Blocks](Implicit.md) diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/Wave.md b/Packages/com.unity.visualeffectgraph/Documentation~/Wave.md new file mode 100644 index 00000000000..abe7993164e --- /dev/null +++ b/Packages/com.unity.visualeffectgraph/Documentation~/Wave.md @@ -0,0 +1,18 @@ +# Wave Operators + +Generate waveforms, for example to control the behavior of particles over time. + +| **Page** | **Description** | +| --- | --- | +| [Sawtooth Wave](Operator-SawtoothWave.md) | Generate a waveform that increases, then resets and repeats. | +| [Sine Wave](Operator-SineWave.md) | Generate a waveform that smoothly oscillates between two values. | +| [Square Wave](Operator-SquareWave.md) | Generate a value that alternates between two values. | +| [Triangle Wave](Operator-TriangleWave.md) | Generate a value that oscillates between two values. | + +## Additional resources + +- [Noise Operators](Noise.md) +- [Math Operators](Math.md) +- [Sampling Operators](Sampling.md) + + diff --git a/Packages/com.unity.visualeffectgraph/Documentation~/performance-debug-panel.md b/Packages/com.unity.visualeffectgraph/Documentation~/performance-debug-panel.md index f697681dcb3..21e048b85c6 100644 --- a/Packages/com.unity.visualeffectgraph/Documentation~/performance-debug-panel.md +++ b/Packages/com.unity.visualeffectgraph/Documentation~/performance-debug-panel.md @@ -1,13 +1,15 @@ -# Profiling and Debug Panels +# Performance and optimization -The Profiling and Debug panels provide useful information about your running Visual Effects, such as CPU and GPU timings, memory usage, texture usage, and various states. These allow you to keep the performance of your effects under control while you author them. +To optimize performance, use the **Profiling** and **Debug** panels. -To enable the Profiling and Debug panels, follow these steps: +The **Profiling** and **Debug** panels provide useful information about your running Visual Effects, such as CPU and GPU timings, memory usage, texture usage, and various states. These allow you to keep the performance of your effects under control while you author them. + +To enable the **Profiling** and **Debug** panels, follow these steps: 1. Attach the **Visual Effect Graph** window to a GameObject that has a **Visual Effect** component. For more information, refer to [Attaching a Visual Effect](GettingStarted.md#attaching-a-visual-effect-from-the-scene-to-the-current-graph). 2. Select the debug icon in the top-right of the **Visual Effect Graph** window. -All the information displayed in the Profiling and Debug panels refers to the attached GameObject. +All the information displayed in the **Profiling** and **Debug** panels refers to the attached GameObject. ## Graph Debug Information @@ -20,10 +22,10 @@ The Graph Debug Information panel provides information relative to the entire gr | **Texture Usage** | For each system, lists the textures used along with their dimension and memory size. | | **Heatmap parameter** |
  • GPU Time Threshold (ms): This controls the value, in milliseconds, above which the execution times in the panels will turn red. Adjust this value to easily identify expensive parts for your graph.
  • | -Shortcuts to the **Rendering Debugger** [in URP](https://docs.unity3d.com/Manual/urp/features/rendering-debugger.html) or [in HDRP](https://docs.unity3d.com/Packages/com.unity.render-pipelines.high-definition@latest/index.html?subfolder=/manual/rendering-debugger-window-reference.html) and to the [Unity Profiler](https://docs.unity3d.com/Manual/Profiler.html) are available through the menu on the top-right of the Graph Debug Information panel. +Shortcuts to the **Rendering Debugger** [in URP](https://docs.unity3d.com/Manual/urp/features/rendering-debugger.html) or [in HDRP](https://docs.unity3d.com/Packages/com.unity.render-pipelines.high-definition@latest/index.html?subfolder=/manual/rendering-debugger-window-reference.html) and to the [Unity Profiler](https://docs.unity3d.com/Manual/Profiler.html) are available through the menu on the top-right of the **Graph Debug Information** panel. ## Particle System Info - The Particle System Info panel is attached to the Initialize Context of each system. This panel provides information relative a specific system. + The **Particle System Info** panel is attached to the Initialize Context of each system. This panel provides information relative a specific system. | Property | Description | |-----------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| @@ -39,7 +41,7 @@ Shortcuts to the **Rendering Debugger** [in URP](https://docs.unity3d.com/Manua Contexts debug panels are attached to each context of a system. They are displayed when a context is selected and can be locked to be kept on screen even when the context is unselected. -Each context will display informations that are relevant to its use: +Each context will display information that are relevant to its use: ### Spawn Context diff --git a/Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Def_FSR2_Hardware.asset b/Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Def_FSR2_Hardware.asset new file mode 100644 index 00000000000..6ffb581b41b --- /dev/null +++ b/Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Def_FSR2_Hardware.asset @@ -0,0 +1,555 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cf1dab834d4ec34195b920ea7bbf9ec, type: 3} + m_Name: HDRP_Test_Def_FSR2_Hardware + m_EditorClassIdentifier: + m_RenderPipelineSettings: + supportShadowMask: 1 + supportSSR: 0 + supportSSRTransparent: 0 + supportSSAO: 1 + supportSSGI: 0 + supportSubsurfaceScattering: 1 + subsurfaceScatteringAttenuation: 1 + sssSampleBudget: + m_Values: 140000002800000050000000 + m_SchemaId: + m_Id: With3Levels + sssDownsampleSteps: + m_Values: 000000000000000000000000 + m_SchemaId: + m_Id: With3Levels + supportVolumetrics: 1 + supportVolumetricClouds: 0 + supportLightLayers: 0 + renderingLayerMaskBuffer: 0 + supportWater: 0 + waterSimulationResolution: 128 + supportWaterExclusion: 0 + supportWaterHorizontalDeformation: 0 + supportWaterDecals: 1 + waterDecalAtlasSize: 1024 + maximumWaterDecalCount: 48 + waterScriptInteractionsMode: 0 + waterFullCPUSimulation: 0 + supportComputeThickness: 0 + computeThicknessResolution: 1 + computeThicknessLayerMask: + serializedVersion: 2 + m_Bits: 0 + supportDistortion: 1 + supportTransparentBackface: 1 + supportTransparentDepthPrepass: 1 + supportTransparentDepthPostpass: 1 + colorBufferFormat: 74 + supportCustomPass: 1 + supportVariableRateShading: 1 + customBufferFormat: 12 + supportedLitShaderMode: 2 + planarReflectionResolution: + m_Values: 000100000004000000080000 + m_SchemaId: + m_Id: With3Levels + cubeReflectionResolution: + m_Values: 800000000001000000020000 + m_SchemaId: + m_Id: With3Levels + supportDecals: 1 + supportDecalLayers: 0 + supportSurfaceGradient: 0 + decalNormalBufferHP: 0 + supportHighQualityLineRendering: 0 + highQualityLineRenderingMemoryBudget: 128 + msaaSampleCount: 1 + supportMotionVectors: 1 + supportScreenSpaceLensFlare: 1 + supportDataDrivenLensFlare: 1 + supportDitheringCrossFade: 1 + supportRuntimeAOVAPI: 0 + supportTerrainHole: 0 + lightProbeSystem: 0 + oldLightProbeSystem: 0 + probeVolumeMemoryBudget: 1024 + supportProbeVolumeGPUStreaming: 0 + supportProbeVolumeDiskStreaming: 0 + probeVolumeSHBands: 1 + supportProbeVolumeScenarios: 0 + supportProbeVolumeScenarioBlending: 1 + probeVolumeBlendingMemoryBudget: 128 + supportRayTracing: 0 + supportVFXRayTracing: 0 + supportedRayTracingMode: 3 + lightLoopSettings: + cookieAtlasSize: 2048 + cookieFormat: 74 + cookieAtlasLastValidMip: 0 + cookieTexArraySize: 1 + planarReflectionAtlasSize: 1024 + reflectionProbeCacheSize: 64 + reflectionCubemapSize: 256 + maxEnvLightsOnScreen: 64 + reflectionCacheCompressed: 0 + reflectionProbeFormat: 74 + reflectionProbeTexCacheSize: 4096 + reflectionProbeTexLastValidCubeMip: 3 + reflectionProbeTexLastValidPlanarMip: 0 + reflectionProbeDecreaseResToFit: 1 + skyReflectionSize: 256 + skyLightingOverrideLayerMask: + serializedVersion: 2 + m_Bits: 0 + supportFabricConvolution: 0 + maxDirectionalLightsOnScreen: 16 + maxPunctualLightsOnScreen: 512 + maxAreaLightsOnScreen: 64 + maxCubeReflectionOnScreen: 48 + maxPlanarReflectionOnScreen: 16 + maxDecalsOnScreen: 512 + maxLightsPerClusterCell: 8 + maxLocalVolumetricFogSize: 32 + maxLocalVolumetricFogOnScreen: 64 + hdShadowInitParams: + maxShadowRequests: 128 + directionalShadowsDepthBits: 32 + punctualShadowFilteringQuality: 1 + directionalShadowFilteringQuality: 1 + areaShadowFilteringQuality: 0 + punctualLightShadowAtlas: + shadowAtlasResolution: 4096 + shadowAtlasDepthBits: 32 + useDynamicViewportRescale: 1 + areaLightShadowAtlas: + shadowAtlasResolution: 4096 + shadowAtlasDepthBits: 32 + useDynamicViewportRescale: 1 + cachedPunctualLightShadowAtlas: 2048 + cachedAreaLightShadowAtlas: 1024 + allowDirectionalMixedCachedShadows: 0 + shadowResolutionDirectional: + m_Values: 00010000000200000004000000080000 + m_SchemaId: + m_Id: With4Levels + shadowResolutionPunctual: + m_Values: 00010000000200000004000000080000 + m_SchemaId: + m_Id: With4Levels + shadowResolutionArea: + m_Values: 00010000000200000004000000080000 + m_SchemaId: + m_Id: With4Levels + maxDirectionalShadowMapResolution: 2048 + maxPunctualShadowMapResolution: 2048 + maxAreaShadowMapResolution: 2048 + supportScreenSpaceShadows: 0 + maxScreenSpaceShadowSlots: 4 + screenSpaceShadowBufferFormat: 48 + decalSettings: + drawDistance: 1000 + atlasWidth: 4096 + atlasHeight: 4096 + transparentTextureResolution: + m_Values: 000100000002000000040000 + m_SchemaId: + m_Id: With3Levels + perChannelMask: 0 + postProcessSettings: + m_LutSize: 32 + lutFormat: 48 + bufferFormat: 74 + dynamicResolutionSettings: + enabled: 1 + useMipBias: 0 + advancedUpscalersByPriority: 01 + DLSSPerfQualitySetting: 0 + DLSSInjectionPoint: 0 + TAAUInjectionPoint: 0 + STPInjectionPoint: 0 + defaultInjectionPoint: 2 + DLSSUseOptimalSettings: 1 + DLSSSharpness: 0 + DLSSRenderPresetForQuality: 0 + DLSSRenderPresetForBalanced: 0 + DLSSRenderPresetForPerformance: 0 + DLSSRenderPresetForUltraPerformance: 0 + DLSSRenderPresetForDLAA: 0 + FSR2EnableSharpness: 1 + FSR2Sharpness: 0.8 + FSR2UseOptimalSettings: 0 + FSR2QualitySetting: 0 + FSR2InjectionPoint: 0 + fsrOverrideSharpness: 0 + fsrSharpness: 0.92 + maxPercentage: 100 + minPercentage: 100 + dynResType: 1 + upsampleFilter: 1 + forceResolution: 1 + forcedPercentage: 40 + lowResTransparencyMinimumThreshold: 0 + rayTracingHalfResThreshold: 50 + lowResSSGIMinimumThreshold: 0 + lowResVolumetricCloudsMinimumThreshold: 50 + enableDLSS: 0 + lowresTransparentSettings: + enabled: 1 + checkerboardDepthBuffer: 1 + upsampleType: 1 + xrSettings: + singlePass: 1 + occlusionMesh: 1 + cameraJitter: 0 + allowMotionBlur: 0 + postProcessQualitySettings: + NearBlurSampleCount: 030000000500000008000000 + NearBlurMaxRadius: + - 2 + - 4 + - 7 + FarBlurSampleCount: 04000000070000000e000000 + FarBlurMaxRadius: + - 5 + - 8 + - 13 + DoFResolution: 040000000200000001000000 + DoFHighQualityFiltering: 000101 + DoFPhysicallyBased: 000000 + AdaptiveSamplingWeight: + - 0.5 + - 0.75 + - 2 + LimitManualRangeNearBlur: 000000 + MotionBlurSampleCount: 04000000080000000c000000 + BloomRes: 040000000200000002000000 + BloomHighQualityFiltering: 000101 + BloomHighQualityPrefiltering: 000001 + ChromaticAberrationMaxSamples: 03000000060000000c000000 + lightSettings: + useContactShadow: + m_Values: 000001 + m_SchemaId: + m_Id: With3Levels + maximumLODLevel: + m_Values: 000000000000000000000000 + m_SchemaId: + m_Id: With3Levels + lodBias: + m_Values: + - 1 + - 1 + - 1 + m_SchemaId: + m_Id: With3Levels + lightingQualitySettings: + AOStepCount: 040000000600000010000000 + AOFullRes: 000001 + AOMaximumRadiusPixels: 200000002800000050000000 + AOBilateralUpsample: 000101 + AODirectionCount: 010000000200000004000000 + ContactShadowSampleCount: 060000000a00000010000000 + SSRMaxRaySteps: 100000002000000040000000 + SSGIRaySteps: 200000004000000080000000 + SSGIDenoise: 010101 + SSGIHalfResDenoise: 010000 + SSGIDenoiserRadius: + - 0.75 + - 0.5 + - 0.5 + SSGISecondDenoise: 010101 + RTAORayLength: + - 0.5 + - 3 + - 20 + RTAOSampleCount: 010000000200000008000000 + RTAODenoise: 010101 + RTAODenoiserRadius: + - 0.25 + - 0.5 + - 0.65 + RTGIRayLength: + - 50 + - 50 + - 50 + RTGIFullResolution: 000001 + RTGIRaySteps: 200000003000000040000000 + RTGIDenoise: 010101 + RTGIHalfResDenoise: 010000 + RTGIDenoiserRadius: + - 0.75 + - 0.5 + - 0.25 + RTGISecondDenoise: 010101 + RTRMinSmoothness: + - 0.6 + - 0.4 + - 0 + RTRSmoothnessFadeStart: + - 0.7 + - 0.5 + - 0 + RTRRayLength: + - 50 + - 50 + - 50 + RTRFullResolution: 000001 + RTRRayMaxIterations: 200000003000000040000000 + RTRDenoise: 010101 + RTRDenoiserRadiusDimmer: + - 0.75 + - 0.75 + - 1 + RTRDenoiserAntiFlicker: + - 1 + - 1 + - 1 + Fog_ControlMode: 000000000000000000000000 + Fog_Budget: + - 0.166 + - 0.33 + - 0.666 + Fog_DepthRatio: + - 0.666 + - 0.666 + - 0.5 + gpuResidentDrawerSettings: + mode: 0 + smallMeshScreenPercentage: 0 + enableOcclusionCullingInCameras: 0 + useDepthPrepassForOccluders: 1 + m_ObsoleteLightLayerName0: + m_ObsoleteLightLayerName1: + m_ObsoleteLightLayerName2: + m_ObsoleteLightLayerName3: + m_ObsoleteLightLayerName4: + m_ObsoleteLightLayerName5: + m_ObsoleteLightLayerName6: + m_ObsoleteLightLayerName7: + m_ObsoleteDecalLayerName0: + m_ObsoleteDecalLayerName1: + m_ObsoleteDecalLayerName2: + m_ObsoleteDecalLayerName3: + m_ObsoleteDecalLayerName4: + m_ObsoleteDecalLayerName5: + m_ObsoleteDecalLayerName6: + m_ObsoleteDecalLayerName7: + m_ObsoleteSupportRuntimeDebugDisplay: 0 + allowShaderVariantStripping: 1 + enableSRPBatcher: 1 + availableMaterialQualityLevels: -1 + m_DefaultMaterialQualityLevel: 4 + diffusionProfileSettings: {fileID: 0} + m_VolumeProfile: {fileID: 0} + virtualTexturingSettings: + streamingCpuCacheSizeInMegaBytes: 80 + streamingMipPreloadTexturesPerFrame: 0 + streamingPreloadMipCount: 1 + streamingGpuCacheSettings: + - format: 0 + sizeInMegaBytes: 32 + m_UseRenderGraph: 1 + m_CompositorCustomVolumeComponentsList: + m_InjectionPoint: 1 + m_CustomPostProcessTypesAsString: [] + m_Version: 25 + m_ObsoleteFrameSettings: + overrides: 0 + enableShadow: 0 + enableContactShadows: 0 + enableShadowMask: 0 + enableSSR: 0 + enableSSAO: 0 + enableSubsurfaceScattering: 0 + enableTransmission: 0 + enableAtmosphericScattering: 0 + enableVolumetrics: 0 + enableReprojectionForVolumetrics: 0 + enableLightLayers: 0 + enableExposureControl: 1 + diffuseGlobalDimmer: 0 + specularGlobalDimmer: 0 + shaderLitMode: 0 + enableDepthPrepassWithDeferredRendering: 0 + enableTransparentPrepass: 0 + enableMotionVectors: 0 + enableObjectMotionVectors: 0 + enableDecals: 0 + enableRoughRefraction: 0 + enableTransparentPostpass: 0 + enableDistortion: 0 + enablePostprocess: 0 + enableOpaqueObjects: 0 + enableTransparentObjects: 0 + enableRealtimePlanarReflection: 0 + enableMSAA: 0 + enableAsyncCompute: 0 + runLightListAsync: 0 + runSSRAsync: 0 + runSSAOAsync: 0 + runContactShadowsAsync: 0 + runVolumeVoxelizationAsync: 0 + lightLoopSettings: + overrides: 0 + enableDeferredTileAndCluster: 0 + enableComputeLightEvaluation: 0 + enableComputeLightVariants: 0 + enableComputeMaterialVariants: 0 + enableFptlForForwardOpaque: 0 + enableBigTilePrepass: 0 + isFptlEnabled: 0 + m_ObsoleteBakedOrCustomReflectionFrameSettings: + overrides: 0 + enableShadow: 0 + enableContactShadows: 0 + enableShadowMask: 0 + enableSSR: 0 + enableSSAO: 0 + enableSubsurfaceScattering: 0 + enableTransmission: 0 + enableAtmosphericScattering: 0 + enableVolumetrics: 0 + enableReprojectionForVolumetrics: 0 + enableLightLayers: 0 + enableExposureControl: 1 + diffuseGlobalDimmer: 0 + specularGlobalDimmer: 0 + shaderLitMode: 0 + enableDepthPrepassWithDeferredRendering: 0 + enableTransparentPrepass: 0 + enableMotionVectors: 0 + enableObjectMotionVectors: 0 + enableDecals: 0 + enableRoughRefraction: 0 + enableTransparentPostpass: 0 + enableDistortion: 0 + enablePostprocess: 0 + enableOpaqueObjects: 0 + enableTransparentObjects: 0 + enableRealtimePlanarReflection: 0 + enableMSAA: 0 + enableAsyncCompute: 0 + runLightListAsync: 0 + runSSRAsync: 0 + runSSAOAsync: 0 + runContactShadowsAsync: 0 + runVolumeVoxelizationAsync: 0 + lightLoopSettings: + overrides: 0 + enableDeferredTileAndCluster: 0 + enableComputeLightEvaluation: 0 + enableComputeLightVariants: 0 + enableComputeMaterialVariants: 0 + enableFptlForForwardOpaque: 0 + enableBigTilePrepass: 0 + isFptlEnabled: 0 + m_ObsoleteRealtimeReflectionFrameSettings: + overrides: 0 + enableShadow: 0 + enableContactShadows: 0 + enableShadowMask: 0 + enableSSR: 0 + enableSSAO: 0 + enableSubsurfaceScattering: 0 + enableTransmission: 0 + enableAtmosphericScattering: 0 + enableVolumetrics: 0 + enableReprojectionForVolumetrics: 0 + enableLightLayers: 0 + enableExposureControl: 1 + diffuseGlobalDimmer: 0 + specularGlobalDimmer: 0 + shaderLitMode: 0 + enableDepthPrepassWithDeferredRendering: 0 + enableTransparentPrepass: 0 + enableMotionVectors: 0 + enableObjectMotionVectors: 0 + enableDecals: 0 + enableRoughRefraction: 0 + enableTransparentPostpass: 0 + enableDistortion: 0 + enablePostprocess: 0 + enableOpaqueObjects: 0 + enableTransparentObjects: 0 + enableRealtimePlanarReflection: 0 + enableMSAA: 0 + enableAsyncCompute: 0 + runLightListAsync: 0 + runSSRAsync: 0 + runSSAOAsync: 0 + runContactShadowsAsync: 0 + runVolumeVoxelizationAsync: 0 + lightLoopSettings: + overrides: 0 + enableDeferredTileAndCluster: 0 + enableComputeLightEvaluation: 0 + enableComputeLightVariants: 0 + enableComputeMaterialVariants: 0 + enableFptlForForwardOpaque: 0 + enableBigTilePrepass: 0 + isFptlEnabled: 0 + m_ObsoleteDefaultVolumeProfile: {fileID: 0} + m_ObsoleteDefaultLookDevProfile: {fileID: 0} + m_ObsoleteFrameSettingsMovedToDefaultSettings: + bitDatas: + data1: 0 + data2: 0 + lodBias: 0 + lodBiasMode: 0 + lodBiasQualityLevel: 0 + maximumLODLevel: 0 + maximumLODLevelMode: 0 + maximumLODLevelQualityLevel: 0 + sssQualityMode: 0 + sssQualityLevel: 0 + sssCustomSampleBudget: 0 + sssCustomDownsampleSteps: 0 + msaaMode: 0 + materialQuality: 0 + m_ObsoleteBakedOrCustomReflectionFrameSettingsMovedToDefaultSettings: + bitDatas: + data1: 0 + data2: 0 + lodBias: 0 + lodBiasMode: 0 + lodBiasQualityLevel: 0 + maximumLODLevel: 0 + maximumLODLevelMode: 0 + maximumLODLevelQualityLevel: 0 + sssQualityMode: 0 + sssQualityLevel: 0 + sssCustomSampleBudget: 0 + sssCustomDownsampleSteps: 0 + msaaMode: 0 + materialQuality: 0 + m_ObsoleteRealtimeReflectionFrameSettingsMovedToDefaultSettings: + bitDatas: + data1: 0 + data2: 0 + lodBias: 0 + lodBiasMode: 0 + lodBiasQualityLevel: 0 + maximumLODLevel: 0 + maximumLODLevelMode: 0 + maximumLODLevelQualityLevel: 0 + sssQualityMode: 0 + sssQualityLevel: 0 + sssCustomSampleBudget: 0 + sssCustomDownsampleSteps: 0 + msaaMode: 0 + materialQuality: 0 + m_ObsoleteBeforeTransparentCustomPostProcesses: [] + m_ObsoleteBeforePostProcessCustomPostProcesses: [] + m_ObsoleteAfterPostProcessCustomPostProcesses: [] + m_ObsoleteBeforeTAACustomPostProcesses: [] + m_ObsoleteShaderVariantLogLevel: 0 + m_ObsoleteLensAttenuation: 0 + m_ObsoleteDiffusionProfileSettingsList: [] + m_PrefilterUseLegacyLightmaps: 0 + m_PrefilterUseLightmapBicubicSampling: 0 diff --git a/Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Def_FSR2_Hardware.asset.meta b/Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Def_FSR2_Hardware.asset.meta new file mode 100644 index 00000000000..e14f063a368 --- /dev/null +++ b/Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Def_FSR2_Hardware.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c9851109961f5bb48976c57b58923258 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Def_FSR2_Software.asset b/Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Def_FSR2_Software.asset new file mode 100644 index 00000000000..d5162a1cdb8 --- /dev/null +++ b/Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Def_FSR2_Software.asset @@ -0,0 +1,555 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cf1dab834d4ec34195b920ea7bbf9ec, type: 3} + m_Name: HDRP_Test_Def_FSR2_Software + m_EditorClassIdentifier: + m_RenderPipelineSettings: + supportShadowMask: 1 + supportSSR: 0 + supportSSRTransparent: 0 + supportSSAO: 1 + supportSSGI: 0 + supportSubsurfaceScattering: 1 + subsurfaceScatteringAttenuation: 1 + sssSampleBudget: + m_Values: 140000002800000050000000 + m_SchemaId: + m_Id: With3Levels + sssDownsampleSteps: + m_Values: 000000000000000000000000 + m_SchemaId: + m_Id: With3Levels + supportVolumetrics: 1 + supportVolumetricClouds: 0 + supportLightLayers: 0 + renderingLayerMaskBuffer: 0 + supportWater: 0 + waterSimulationResolution: 128 + supportWaterExclusion: 0 + supportWaterHorizontalDeformation: 0 + supportWaterDecals: 1 + waterDecalAtlasSize: 1024 + maximumWaterDecalCount: 48 + waterScriptInteractionsMode: 0 + waterFullCPUSimulation: 0 + supportComputeThickness: 0 + computeThicknessResolution: 1 + computeThicknessLayerMask: + serializedVersion: 2 + m_Bits: 0 + supportDistortion: 1 + supportTransparentBackface: 1 + supportTransparentDepthPrepass: 1 + supportTransparentDepthPostpass: 1 + colorBufferFormat: 74 + supportCustomPass: 1 + supportVariableRateShading: 1 + customBufferFormat: 12 + supportedLitShaderMode: 2 + planarReflectionResolution: + m_Values: 000100000004000000080000 + m_SchemaId: + m_Id: With3Levels + cubeReflectionResolution: + m_Values: 800000000001000000020000 + m_SchemaId: + m_Id: With3Levels + supportDecals: 1 + supportDecalLayers: 0 + supportSurfaceGradient: 0 + decalNormalBufferHP: 0 + supportHighQualityLineRendering: 0 + highQualityLineRenderingMemoryBudget: 128 + msaaSampleCount: 1 + supportMotionVectors: 1 + supportScreenSpaceLensFlare: 1 + supportDataDrivenLensFlare: 1 + supportDitheringCrossFade: 1 + supportRuntimeAOVAPI: 0 + supportTerrainHole: 0 + lightProbeSystem: 0 + oldLightProbeSystem: 0 + probeVolumeMemoryBudget: 1024 + supportProbeVolumeGPUStreaming: 0 + supportProbeVolumeDiskStreaming: 0 + probeVolumeSHBands: 1 + supportProbeVolumeScenarios: 0 + supportProbeVolumeScenarioBlending: 1 + probeVolumeBlendingMemoryBudget: 128 + supportRayTracing: 0 + supportVFXRayTracing: 0 + supportedRayTracingMode: 3 + lightLoopSettings: + cookieAtlasSize: 2048 + cookieFormat: 74 + cookieAtlasLastValidMip: 0 + cookieTexArraySize: 1 + planarReflectionAtlasSize: 1024 + reflectionProbeCacheSize: 64 + reflectionCubemapSize: 256 + maxEnvLightsOnScreen: 64 + reflectionCacheCompressed: 0 + reflectionProbeFormat: 74 + reflectionProbeTexCacheSize: 4096 + reflectionProbeTexLastValidCubeMip: 3 + reflectionProbeTexLastValidPlanarMip: 0 + reflectionProbeDecreaseResToFit: 1 + skyReflectionSize: 256 + skyLightingOverrideLayerMask: + serializedVersion: 2 + m_Bits: 0 + supportFabricConvolution: 0 + maxDirectionalLightsOnScreen: 16 + maxPunctualLightsOnScreen: 512 + maxAreaLightsOnScreen: 64 + maxCubeReflectionOnScreen: 48 + maxPlanarReflectionOnScreen: 16 + maxDecalsOnScreen: 512 + maxLightsPerClusterCell: 8 + maxLocalVolumetricFogSize: 32 + maxLocalVolumetricFogOnScreen: 64 + hdShadowInitParams: + maxShadowRequests: 128 + directionalShadowsDepthBits: 32 + punctualShadowFilteringQuality: 1 + directionalShadowFilteringQuality: 1 + areaShadowFilteringQuality: 0 + punctualLightShadowAtlas: + shadowAtlasResolution: 4096 + shadowAtlasDepthBits: 32 + useDynamicViewportRescale: 1 + areaLightShadowAtlas: + shadowAtlasResolution: 4096 + shadowAtlasDepthBits: 32 + useDynamicViewportRescale: 1 + cachedPunctualLightShadowAtlas: 2048 + cachedAreaLightShadowAtlas: 1024 + allowDirectionalMixedCachedShadows: 0 + shadowResolutionDirectional: + m_Values: 00010000000200000004000000080000 + m_SchemaId: + m_Id: With4Levels + shadowResolutionPunctual: + m_Values: 00010000000200000004000000080000 + m_SchemaId: + m_Id: With4Levels + shadowResolutionArea: + m_Values: 00010000000200000004000000080000 + m_SchemaId: + m_Id: With4Levels + maxDirectionalShadowMapResolution: 2048 + maxPunctualShadowMapResolution: 2048 + maxAreaShadowMapResolution: 2048 + supportScreenSpaceShadows: 0 + maxScreenSpaceShadowSlots: 4 + screenSpaceShadowBufferFormat: 48 + decalSettings: + drawDistance: 1000 + atlasWidth: 4096 + atlasHeight: 4096 + transparentTextureResolution: + m_Values: 000100000002000000040000 + m_SchemaId: + m_Id: With3Levels + perChannelMask: 0 + postProcessSettings: + m_LutSize: 32 + lutFormat: 48 + bufferFormat: 74 + dynamicResolutionSettings: + enabled: 1 + useMipBias: 0 + advancedUpscalersByPriority: 01 + DLSSPerfQualitySetting: 0 + DLSSInjectionPoint: 0 + TAAUInjectionPoint: 0 + STPInjectionPoint: 0 + defaultInjectionPoint: 2 + DLSSUseOptimalSettings: 1 + DLSSSharpness: 0 + DLSSRenderPresetForQuality: 0 + DLSSRenderPresetForBalanced: 0 + DLSSRenderPresetForPerformance: 0 + DLSSRenderPresetForUltraPerformance: 0 + DLSSRenderPresetForDLAA: 0 + FSR2EnableSharpness: 1 + FSR2Sharpness: 0.8 + FSR2UseOptimalSettings: 0 + FSR2QualitySetting: 0 + FSR2InjectionPoint: 0 + fsrOverrideSharpness: 0 + fsrSharpness: 0.92 + maxPercentage: 100 + minPercentage: 100 + dynResType: 0 + upsampleFilter: 1 + forceResolution: 1 + forcedPercentage: 40 + lowResTransparencyMinimumThreshold: 0 + rayTracingHalfResThreshold: 50 + lowResSSGIMinimumThreshold: 0 + lowResVolumetricCloudsMinimumThreshold: 50 + enableDLSS: 0 + lowresTransparentSettings: + enabled: 1 + checkerboardDepthBuffer: 1 + upsampleType: 1 + xrSettings: + singlePass: 1 + occlusionMesh: 1 + cameraJitter: 0 + allowMotionBlur: 0 + postProcessQualitySettings: + NearBlurSampleCount: 030000000500000008000000 + NearBlurMaxRadius: + - 2 + - 4 + - 7 + FarBlurSampleCount: 04000000070000000e000000 + FarBlurMaxRadius: + - 5 + - 8 + - 13 + DoFResolution: 040000000200000001000000 + DoFHighQualityFiltering: 000101 + DoFPhysicallyBased: 000000 + AdaptiveSamplingWeight: + - 0.5 + - 0.75 + - 2 + LimitManualRangeNearBlur: 000000 + MotionBlurSampleCount: 04000000080000000c000000 + BloomRes: 040000000200000002000000 + BloomHighQualityFiltering: 000101 + BloomHighQualityPrefiltering: 000001 + ChromaticAberrationMaxSamples: 03000000060000000c000000 + lightSettings: + useContactShadow: + m_Values: 000001 + m_SchemaId: + m_Id: With3Levels + maximumLODLevel: + m_Values: 000000000000000000000000 + m_SchemaId: + m_Id: With3Levels + lodBias: + m_Values: + - 1 + - 1 + - 1 + m_SchemaId: + m_Id: With3Levels + lightingQualitySettings: + AOStepCount: 040000000600000010000000 + AOFullRes: 000001 + AOMaximumRadiusPixels: 200000002800000050000000 + AOBilateralUpsample: 000101 + AODirectionCount: 010000000200000004000000 + ContactShadowSampleCount: 060000000a00000010000000 + SSRMaxRaySteps: 100000002000000040000000 + SSGIRaySteps: 200000004000000080000000 + SSGIDenoise: 010101 + SSGIHalfResDenoise: 010000 + SSGIDenoiserRadius: + - 0.75 + - 0.5 + - 0.5 + SSGISecondDenoise: 010101 + RTAORayLength: + - 0.5 + - 3 + - 20 + RTAOSampleCount: 010000000200000008000000 + RTAODenoise: 010101 + RTAODenoiserRadius: + - 0.25 + - 0.5 + - 0.65 + RTGIRayLength: + - 50 + - 50 + - 50 + RTGIFullResolution: 000001 + RTGIRaySteps: 200000003000000040000000 + RTGIDenoise: 010101 + RTGIHalfResDenoise: 010000 + RTGIDenoiserRadius: + - 0.75 + - 0.5 + - 0.25 + RTGISecondDenoise: 010101 + RTRMinSmoothness: + - 0.6 + - 0.4 + - 0 + RTRSmoothnessFadeStart: + - 0.7 + - 0.5 + - 0 + RTRRayLength: + - 50 + - 50 + - 50 + RTRFullResolution: 000001 + RTRRayMaxIterations: 200000003000000040000000 + RTRDenoise: 010101 + RTRDenoiserRadiusDimmer: + - 0.75 + - 0.75 + - 1 + RTRDenoiserAntiFlicker: + - 1 + - 1 + - 1 + Fog_ControlMode: 000000000000000000000000 + Fog_Budget: + - 0.166 + - 0.33 + - 0.666 + Fog_DepthRatio: + - 0.666 + - 0.666 + - 0.5 + gpuResidentDrawerSettings: + mode: 0 + smallMeshScreenPercentage: 0 + enableOcclusionCullingInCameras: 0 + useDepthPrepassForOccluders: 1 + m_ObsoleteLightLayerName0: + m_ObsoleteLightLayerName1: + m_ObsoleteLightLayerName2: + m_ObsoleteLightLayerName3: + m_ObsoleteLightLayerName4: + m_ObsoleteLightLayerName5: + m_ObsoleteLightLayerName6: + m_ObsoleteLightLayerName7: + m_ObsoleteDecalLayerName0: + m_ObsoleteDecalLayerName1: + m_ObsoleteDecalLayerName2: + m_ObsoleteDecalLayerName3: + m_ObsoleteDecalLayerName4: + m_ObsoleteDecalLayerName5: + m_ObsoleteDecalLayerName6: + m_ObsoleteDecalLayerName7: + m_ObsoleteSupportRuntimeDebugDisplay: 0 + allowShaderVariantStripping: 1 + enableSRPBatcher: 1 + availableMaterialQualityLevels: -1 + m_DefaultMaterialQualityLevel: 4 + diffusionProfileSettings: {fileID: 0} + m_VolumeProfile: {fileID: 0} + virtualTexturingSettings: + streamingCpuCacheSizeInMegaBytes: 80 + streamingMipPreloadTexturesPerFrame: 0 + streamingPreloadMipCount: 1 + streamingGpuCacheSettings: + - format: 0 + sizeInMegaBytes: 32 + m_UseRenderGraph: 1 + m_CompositorCustomVolumeComponentsList: + m_InjectionPoint: 1 + m_CustomPostProcessTypesAsString: [] + m_Version: 25 + m_ObsoleteFrameSettings: + overrides: 0 + enableShadow: 0 + enableContactShadows: 0 + enableShadowMask: 0 + enableSSR: 0 + enableSSAO: 0 + enableSubsurfaceScattering: 0 + enableTransmission: 0 + enableAtmosphericScattering: 0 + enableVolumetrics: 0 + enableReprojectionForVolumetrics: 0 + enableLightLayers: 0 + enableExposureControl: 1 + diffuseGlobalDimmer: 0 + specularGlobalDimmer: 0 + shaderLitMode: 0 + enableDepthPrepassWithDeferredRendering: 0 + enableTransparentPrepass: 0 + enableMotionVectors: 0 + enableObjectMotionVectors: 0 + enableDecals: 0 + enableRoughRefraction: 0 + enableTransparentPostpass: 0 + enableDistortion: 0 + enablePostprocess: 0 + enableOpaqueObjects: 0 + enableTransparentObjects: 0 + enableRealtimePlanarReflection: 0 + enableMSAA: 0 + enableAsyncCompute: 0 + runLightListAsync: 0 + runSSRAsync: 0 + runSSAOAsync: 0 + runContactShadowsAsync: 0 + runVolumeVoxelizationAsync: 0 + lightLoopSettings: + overrides: 0 + enableDeferredTileAndCluster: 0 + enableComputeLightEvaluation: 0 + enableComputeLightVariants: 0 + enableComputeMaterialVariants: 0 + enableFptlForForwardOpaque: 0 + enableBigTilePrepass: 0 + isFptlEnabled: 0 + m_ObsoleteBakedOrCustomReflectionFrameSettings: + overrides: 0 + enableShadow: 0 + enableContactShadows: 0 + enableShadowMask: 0 + enableSSR: 0 + enableSSAO: 0 + enableSubsurfaceScattering: 0 + enableTransmission: 0 + enableAtmosphericScattering: 0 + enableVolumetrics: 0 + enableReprojectionForVolumetrics: 0 + enableLightLayers: 0 + enableExposureControl: 1 + diffuseGlobalDimmer: 0 + specularGlobalDimmer: 0 + shaderLitMode: 0 + enableDepthPrepassWithDeferredRendering: 0 + enableTransparentPrepass: 0 + enableMotionVectors: 0 + enableObjectMotionVectors: 0 + enableDecals: 0 + enableRoughRefraction: 0 + enableTransparentPostpass: 0 + enableDistortion: 0 + enablePostprocess: 0 + enableOpaqueObjects: 0 + enableTransparentObjects: 0 + enableRealtimePlanarReflection: 0 + enableMSAA: 0 + enableAsyncCompute: 0 + runLightListAsync: 0 + runSSRAsync: 0 + runSSAOAsync: 0 + runContactShadowsAsync: 0 + runVolumeVoxelizationAsync: 0 + lightLoopSettings: + overrides: 0 + enableDeferredTileAndCluster: 0 + enableComputeLightEvaluation: 0 + enableComputeLightVariants: 0 + enableComputeMaterialVariants: 0 + enableFptlForForwardOpaque: 0 + enableBigTilePrepass: 0 + isFptlEnabled: 0 + m_ObsoleteRealtimeReflectionFrameSettings: + overrides: 0 + enableShadow: 0 + enableContactShadows: 0 + enableShadowMask: 0 + enableSSR: 0 + enableSSAO: 0 + enableSubsurfaceScattering: 0 + enableTransmission: 0 + enableAtmosphericScattering: 0 + enableVolumetrics: 0 + enableReprojectionForVolumetrics: 0 + enableLightLayers: 0 + enableExposureControl: 1 + diffuseGlobalDimmer: 0 + specularGlobalDimmer: 0 + shaderLitMode: 0 + enableDepthPrepassWithDeferredRendering: 0 + enableTransparentPrepass: 0 + enableMotionVectors: 0 + enableObjectMotionVectors: 0 + enableDecals: 0 + enableRoughRefraction: 0 + enableTransparentPostpass: 0 + enableDistortion: 0 + enablePostprocess: 0 + enableOpaqueObjects: 0 + enableTransparentObjects: 0 + enableRealtimePlanarReflection: 0 + enableMSAA: 0 + enableAsyncCompute: 0 + runLightListAsync: 0 + runSSRAsync: 0 + runSSAOAsync: 0 + runContactShadowsAsync: 0 + runVolumeVoxelizationAsync: 0 + lightLoopSettings: + overrides: 0 + enableDeferredTileAndCluster: 0 + enableComputeLightEvaluation: 0 + enableComputeLightVariants: 0 + enableComputeMaterialVariants: 0 + enableFptlForForwardOpaque: 0 + enableBigTilePrepass: 0 + isFptlEnabled: 0 + m_ObsoleteDefaultVolumeProfile: {fileID: 0} + m_ObsoleteDefaultLookDevProfile: {fileID: 0} + m_ObsoleteFrameSettingsMovedToDefaultSettings: + bitDatas: + data1: 0 + data2: 0 + lodBias: 0 + lodBiasMode: 0 + lodBiasQualityLevel: 0 + maximumLODLevel: 0 + maximumLODLevelMode: 0 + maximumLODLevelQualityLevel: 0 + sssQualityMode: 0 + sssQualityLevel: 0 + sssCustomSampleBudget: 0 + sssCustomDownsampleSteps: 0 + msaaMode: 0 + materialQuality: 0 + m_ObsoleteBakedOrCustomReflectionFrameSettingsMovedToDefaultSettings: + bitDatas: + data1: 0 + data2: 0 + lodBias: 0 + lodBiasMode: 0 + lodBiasQualityLevel: 0 + maximumLODLevel: 0 + maximumLODLevelMode: 0 + maximumLODLevelQualityLevel: 0 + sssQualityMode: 0 + sssQualityLevel: 0 + sssCustomSampleBudget: 0 + sssCustomDownsampleSteps: 0 + msaaMode: 0 + materialQuality: 0 + m_ObsoleteRealtimeReflectionFrameSettingsMovedToDefaultSettings: + bitDatas: + data1: 0 + data2: 0 + lodBias: 0 + lodBiasMode: 0 + lodBiasQualityLevel: 0 + maximumLODLevel: 0 + maximumLODLevelMode: 0 + maximumLODLevelQualityLevel: 0 + sssQualityMode: 0 + sssQualityLevel: 0 + sssCustomSampleBudget: 0 + sssCustomDownsampleSteps: 0 + msaaMode: 0 + materialQuality: 0 + m_ObsoleteBeforeTransparentCustomPostProcesses: [] + m_ObsoleteBeforePostProcessCustomPostProcesses: [] + m_ObsoleteAfterPostProcessCustomPostProcesses: [] + m_ObsoleteBeforeTAACustomPostProcesses: [] + m_ObsoleteShaderVariantLogLevel: 0 + m_ObsoleteLensAttenuation: 0 + m_ObsoleteDiffusionProfileSettingsList: [] + m_PrefilterUseLegacyLightmaps: 0 + m_PrefilterUseLightmapBicubicSampling: 0 diff --git a/Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Def_FSR2_Software.asset.meta b/Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Def_FSR2_Software.asset.meta new file mode 100644 index 00000000000..dae1928d5f4 --- /dev/null +++ b/Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Def_FSR2_Software.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 02c1dcf00256ddc45819b6e10011cf9e +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Def_FSR2_Software_AfterPost.asset b/Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Def_FSR2_Software_AfterPost.asset new file mode 100644 index 00000000000..3de4a67e20a --- /dev/null +++ b/Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Def_FSR2_Software_AfterPost.asset @@ -0,0 +1,555 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cf1dab834d4ec34195b920ea7bbf9ec, type: 3} + m_Name: HDRP_Test_Def_FSR2_Software_AfterPost + m_EditorClassIdentifier: + m_RenderPipelineSettings: + supportShadowMask: 1 + supportSSR: 0 + supportSSRTransparent: 0 + supportSSAO: 1 + supportSSGI: 0 + supportSubsurfaceScattering: 1 + subsurfaceScatteringAttenuation: 1 + sssSampleBudget: + m_Values: 140000002800000050000000 + m_SchemaId: + m_Id: With3Levels + sssDownsampleSteps: + m_Values: 000000000000000000000000 + m_SchemaId: + m_Id: With3Levels + supportVolumetrics: 1 + supportVolumetricClouds: 0 + supportLightLayers: 0 + renderingLayerMaskBuffer: 0 + supportWater: 0 + waterSimulationResolution: 128 + supportWaterExclusion: 0 + supportWaterHorizontalDeformation: 0 + supportWaterDecals: 1 + waterDecalAtlasSize: 1024 + maximumWaterDecalCount: 48 + waterScriptInteractionsMode: 0 + waterFullCPUSimulation: 0 + supportComputeThickness: 0 + computeThicknessResolution: 1 + computeThicknessLayerMask: + serializedVersion: 2 + m_Bits: 0 + supportDistortion: 1 + supportTransparentBackface: 1 + supportTransparentDepthPrepass: 1 + supportTransparentDepthPostpass: 1 + colorBufferFormat: 74 + supportCustomPass: 1 + supportVariableRateShading: 1 + customBufferFormat: 12 + supportedLitShaderMode: 2 + planarReflectionResolution: + m_Values: 000100000004000000080000 + m_SchemaId: + m_Id: With3Levels + cubeReflectionResolution: + m_Values: 800000000001000000020000 + m_SchemaId: + m_Id: With3Levels + supportDecals: 1 + supportDecalLayers: 0 + supportSurfaceGradient: 0 + decalNormalBufferHP: 0 + supportHighQualityLineRendering: 0 + highQualityLineRenderingMemoryBudget: 128 + msaaSampleCount: 1 + supportMotionVectors: 1 + supportScreenSpaceLensFlare: 1 + supportDataDrivenLensFlare: 1 + supportDitheringCrossFade: 1 + supportRuntimeAOVAPI: 0 + supportTerrainHole: 0 + lightProbeSystem: 0 + oldLightProbeSystem: 0 + probeVolumeMemoryBudget: 1024 + supportProbeVolumeGPUStreaming: 0 + supportProbeVolumeDiskStreaming: 0 + probeVolumeSHBands: 1 + supportProbeVolumeScenarios: 0 + supportProbeVolumeScenarioBlending: 1 + probeVolumeBlendingMemoryBudget: 128 + supportRayTracing: 0 + supportVFXRayTracing: 0 + supportedRayTracingMode: 3 + lightLoopSettings: + cookieAtlasSize: 2048 + cookieFormat: 74 + cookieAtlasLastValidMip: 0 + cookieTexArraySize: 1 + planarReflectionAtlasSize: 1024 + reflectionProbeCacheSize: 64 + reflectionCubemapSize: 256 + maxEnvLightsOnScreen: 64 + reflectionCacheCompressed: 0 + reflectionProbeFormat: 74 + reflectionProbeTexCacheSize: 4096 + reflectionProbeTexLastValidCubeMip: 3 + reflectionProbeTexLastValidPlanarMip: 0 + reflectionProbeDecreaseResToFit: 1 + skyReflectionSize: 256 + skyLightingOverrideLayerMask: + serializedVersion: 2 + m_Bits: 0 + supportFabricConvolution: 0 + maxDirectionalLightsOnScreen: 16 + maxPunctualLightsOnScreen: 512 + maxAreaLightsOnScreen: 64 + maxCubeReflectionOnScreen: 48 + maxPlanarReflectionOnScreen: 16 + maxDecalsOnScreen: 512 + maxLightsPerClusterCell: 8 + maxLocalVolumetricFogSize: 32 + maxLocalVolumetricFogOnScreen: 64 + hdShadowInitParams: + maxShadowRequests: 128 + directionalShadowsDepthBits: 32 + punctualShadowFilteringQuality: 1 + directionalShadowFilteringQuality: 1 + areaShadowFilteringQuality: 0 + punctualLightShadowAtlas: + shadowAtlasResolution: 4096 + shadowAtlasDepthBits: 32 + useDynamicViewportRescale: 1 + areaLightShadowAtlas: + shadowAtlasResolution: 4096 + shadowAtlasDepthBits: 32 + useDynamicViewportRescale: 1 + cachedPunctualLightShadowAtlas: 2048 + cachedAreaLightShadowAtlas: 1024 + allowDirectionalMixedCachedShadows: 0 + shadowResolutionDirectional: + m_Values: 00010000000200000004000000080000 + m_SchemaId: + m_Id: With4Levels + shadowResolutionPunctual: + m_Values: 00010000000200000004000000080000 + m_SchemaId: + m_Id: With4Levels + shadowResolutionArea: + m_Values: 00010000000200000004000000080000 + m_SchemaId: + m_Id: With4Levels + maxDirectionalShadowMapResolution: 2048 + maxPunctualShadowMapResolution: 2048 + maxAreaShadowMapResolution: 2048 + supportScreenSpaceShadows: 0 + maxScreenSpaceShadowSlots: 4 + screenSpaceShadowBufferFormat: 48 + decalSettings: + drawDistance: 1000 + atlasWidth: 4096 + atlasHeight: 4096 + transparentTextureResolution: + m_Values: 000100000002000000040000 + m_SchemaId: + m_Id: With3Levels + perChannelMask: 0 + postProcessSettings: + m_LutSize: 32 + lutFormat: 48 + bufferFormat: 74 + dynamicResolutionSettings: + enabled: 1 + useMipBias: 0 + advancedUpscalersByPriority: 01 + DLSSPerfQualitySetting: 0 + DLSSInjectionPoint: 2 + TAAUInjectionPoint: 0 + STPInjectionPoint: 0 + defaultInjectionPoint: 2 + DLSSUseOptimalSettings: 1 + DLSSSharpness: 0 + DLSSRenderPresetForQuality: 0 + DLSSRenderPresetForBalanced: 0 + DLSSRenderPresetForPerformance: 0 + DLSSRenderPresetForUltraPerformance: 0 + DLSSRenderPresetForDLAA: 0 + FSR2EnableSharpness: 1 + FSR2Sharpness: 0.8 + FSR2UseOptimalSettings: 0 + FSR2QualitySetting: 0 + FSR2InjectionPoint: 2 + fsrOverrideSharpness: 0 + fsrSharpness: 0.92 + maxPercentage: 100 + minPercentage: 100 + dynResType: 0 + upsampleFilter: 1 + forceResolution: 1 + forcedPercentage: 40 + lowResTransparencyMinimumThreshold: 0 + rayTracingHalfResThreshold: 50 + lowResSSGIMinimumThreshold: 0 + lowResVolumetricCloudsMinimumThreshold: 50 + enableDLSS: 0 + lowresTransparentSettings: + enabled: 1 + checkerboardDepthBuffer: 1 + upsampleType: 1 + xrSettings: + singlePass: 1 + occlusionMesh: 1 + cameraJitter: 0 + allowMotionBlur: 0 + postProcessQualitySettings: + NearBlurSampleCount: 030000000500000008000000 + NearBlurMaxRadius: + - 2 + - 4 + - 7 + FarBlurSampleCount: 04000000070000000e000000 + FarBlurMaxRadius: + - 5 + - 8 + - 13 + DoFResolution: 040000000200000001000000 + DoFHighQualityFiltering: 000101 + DoFPhysicallyBased: 000000 + AdaptiveSamplingWeight: + - 0.5 + - 0.75 + - 2 + LimitManualRangeNearBlur: 000000 + MotionBlurSampleCount: 04000000080000000c000000 + BloomRes: 040000000200000002000000 + BloomHighQualityFiltering: 000101 + BloomHighQualityPrefiltering: 000001 + ChromaticAberrationMaxSamples: 03000000060000000c000000 + lightSettings: + useContactShadow: + m_Values: 000001 + m_SchemaId: + m_Id: With3Levels + maximumLODLevel: + m_Values: 000000000000000000000000 + m_SchemaId: + m_Id: With3Levels + lodBias: + m_Values: + - 1 + - 1 + - 1 + m_SchemaId: + m_Id: With3Levels + lightingQualitySettings: + AOStepCount: 040000000600000010000000 + AOFullRes: 000001 + AOMaximumRadiusPixels: 200000002800000050000000 + AOBilateralUpsample: 000101 + AODirectionCount: 010000000200000004000000 + ContactShadowSampleCount: 060000000a00000010000000 + SSRMaxRaySteps: 100000002000000040000000 + SSGIRaySteps: 200000004000000080000000 + SSGIDenoise: 010101 + SSGIHalfResDenoise: 010000 + SSGIDenoiserRadius: + - 0.75 + - 0.5 + - 0.5 + SSGISecondDenoise: 010101 + RTAORayLength: + - 0.5 + - 3 + - 20 + RTAOSampleCount: 010000000200000008000000 + RTAODenoise: 010101 + RTAODenoiserRadius: + - 0.25 + - 0.5 + - 0.65 + RTGIRayLength: + - 50 + - 50 + - 50 + RTGIFullResolution: 000001 + RTGIRaySteps: 200000003000000040000000 + RTGIDenoise: 010101 + RTGIHalfResDenoise: 010000 + RTGIDenoiserRadius: + - 0.75 + - 0.5 + - 0.25 + RTGISecondDenoise: 010101 + RTRMinSmoothness: + - 0.6 + - 0.4 + - 0 + RTRSmoothnessFadeStart: + - 0.7 + - 0.5 + - 0 + RTRRayLength: + - 50 + - 50 + - 50 + RTRFullResolution: 000001 + RTRRayMaxIterations: 200000003000000040000000 + RTRDenoise: 010101 + RTRDenoiserRadiusDimmer: + - 0.75 + - 0.75 + - 1 + RTRDenoiserAntiFlicker: + - 1 + - 1 + - 1 + Fog_ControlMode: 000000000000000000000000 + Fog_Budget: + - 0.166 + - 0.33 + - 0.666 + Fog_DepthRatio: + - 0.666 + - 0.666 + - 0.5 + gpuResidentDrawerSettings: + mode: 0 + smallMeshScreenPercentage: 0 + enableOcclusionCullingInCameras: 0 + useDepthPrepassForOccluders: 1 + m_ObsoleteLightLayerName0: + m_ObsoleteLightLayerName1: + m_ObsoleteLightLayerName2: + m_ObsoleteLightLayerName3: + m_ObsoleteLightLayerName4: + m_ObsoleteLightLayerName5: + m_ObsoleteLightLayerName6: + m_ObsoleteLightLayerName7: + m_ObsoleteDecalLayerName0: + m_ObsoleteDecalLayerName1: + m_ObsoleteDecalLayerName2: + m_ObsoleteDecalLayerName3: + m_ObsoleteDecalLayerName4: + m_ObsoleteDecalLayerName5: + m_ObsoleteDecalLayerName6: + m_ObsoleteDecalLayerName7: + m_ObsoleteSupportRuntimeDebugDisplay: 0 + allowShaderVariantStripping: 1 + enableSRPBatcher: 1 + availableMaterialQualityLevels: -1 + m_DefaultMaterialQualityLevel: 4 + diffusionProfileSettings: {fileID: 0} + m_VolumeProfile: {fileID: 0} + virtualTexturingSettings: + streamingCpuCacheSizeInMegaBytes: 80 + streamingMipPreloadTexturesPerFrame: 0 + streamingPreloadMipCount: 1 + streamingGpuCacheSettings: + - format: 0 + sizeInMegaBytes: 32 + m_UseRenderGraph: 1 + m_CompositorCustomVolumeComponentsList: + m_InjectionPoint: 1 + m_CustomPostProcessTypesAsString: [] + m_Version: 25 + m_ObsoleteFrameSettings: + overrides: 0 + enableShadow: 0 + enableContactShadows: 0 + enableShadowMask: 0 + enableSSR: 0 + enableSSAO: 0 + enableSubsurfaceScattering: 0 + enableTransmission: 0 + enableAtmosphericScattering: 0 + enableVolumetrics: 0 + enableReprojectionForVolumetrics: 0 + enableLightLayers: 0 + enableExposureControl: 1 + diffuseGlobalDimmer: 0 + specularGlobalDimmer: 0 + shaderLitMode: 0 + enableDepthPrepassWithDeferredRendering: 0 + enableTransparentPrepass: 0 + enableMotionVectors: 0 + enableObjectMotionVectors: 0 + enableDecals: 0 + enableRoughRefraction: 0 + enableTransparentPostpass: 0 + enableDistortion: 0 + enablePostprocess: 0 + enableOpaqueObjects: 0 + enableTransparentObjects: 0 + enableRealtimePlanarReflection: 0 + enableMSAA: 0 + enableAsyncCompute: 0 + runLightListAsync: 0 + runSSRAsync: 0 + runSSAOAsync: 0 + runContactShadowsAsync: 0 + runVolumeVoxelizationAsync: 0 + lightLoopSettings: + overrides: 0 + enableDeferredTileAndCluster: 0 + enableComputeLightEvaluation: 0 + enableComputeLightVariants: 0 + enableComputeMaterialVariants: 0 + enableFptlForForwardOpaque: 0 + enableBigTilePrepass: 0 + isFptlEnabled: 0 + m_ObsoleteBakedOrCustomReflectionFrameSettings: + overrides: 0 + enableShadow: 0 + enableContactShadows: 0 + enableShadowMask: 0 + enableSSR: 0 + enableSSAO: 0 + enableSubsurfaceScattering: 0 + enableTransmission: 0 + enableAtmosphericScattering: 0 + enableVolumetrics: 0 + enableReprojectionForVolumetrics: 0 + enableLightLayers: 0 + enableExposureControl: 1 + diffuseGlobalDimmer: 0 + specularGlobalDimmer: 0 + shaderLitMode: 0 + enableDepthPrepassWithDeferredRendering: 0 + enableTransparentPrepass: 0 + enableMotionVectors: 0 + enableObjectMotionVectors: 0 + enableDecals: 0 + enableRoughRefraction: 0 + enableTransparentPostpass: 0 + enableDistortion: 0 + enablePostprocess: 0 + enableOpaqueObjects: 0 + enableTransparentObjects: 0 + enableRealtimePlanarReflection: 0 + enableMSAA: 0 + enableAsyncCompute: 0 + runLightListAsync: 0 + runSSRAsync: 0 + runSSAOAsync: 0 + runContactShadowsAsync: 0 + runVolumeVoxelizationAsync: 0 + lightLoopSettings: + overrides: 0 + enableDeferredTileAndCluster: 0 + enableComputeLightEvaluation: 0 + enableComputeLightVariants: 0 + enableComputeMaterialVariants: 0 + enableFptlForForwardOpaque: 0 + enableBigTilePrepass: 0 + isFptlEnabled: 0 + m_ObsoleteRealtimeReflectionFrameSettings: + overrides: 0 + enableShadow: 0 + enableContactShadows: 0 + enableShadowMask: 0 + enableSSR: 0 + enableSSAO: 0 + enableSubsurfaceScattering: 0 + enableTransmission: 0 + enableAtmosphericScattering: 0 + enableVolumetrics: 0 + enableReprojectionForVolumetrics: 0 + enableLightLayers: 0 + enableExposureControl: 1 + diffuseGlobalDimmer: 0 + specularGlobalDimmer: 0 + shaderLitMode: 0 + enableDepthPrepassWithDeferredRendering: 0 + enableTransparentPrepass: 0 + enableMotionVectors: 0 + enableObjectMotionVectors: 0 + enableDecals: 0 + enableRoughRefraction: 0 + enableTransparentPostpass: 0 + enableDistortion: 0 + enablePostprocess: 0 + enableOpaqueObjects: 0 + enableTransparentObjects: 0 + enableRealtimePlanarReflection: 0 + enableMSAA: 0 + enableAsyncCompute: 0 + runLightListAsync: 0 + runSSRAsync: 0 + runSSAOAsync: 0 + runContactShadowsAsync: 0 + runVolumeVoxelizationAsync: 0 + lightLoopSettings: + overrides: 0 + enableDeferredTileAndCluster: 0 + enableComputeLightEvaluation: 0 + enableComputeLightVariants: 0 + enableComputeMaterialVariants: 0 + enableFptlForForwardOpaque: 0 + enableBigTilePrepass: 0 + isFptlEnabled: 0 + m_ObsoleteDefaultVolumeProfile: {fileID: 0} + m_ObsoleteDefaultLookDevProfile: {fileID: 0} + m_ObsoleteFrameSettingsMovedToDefaultSettings: + bitDatas: + data1: 0 + data2: 0 + lodBias: 0 + lodBiasMode: 0 + lodBiasQualityLevel: 0 + maximumLODLevel: 0 + maximumLODLevelMode: 0 + maximumLODLevelQualityLevel: 0 + sssQualityMode: 0 + sssQualityLevel: 0 + sssCustomSampleBudget: 0 + sssCustomDownsampleSteps: 0 + msaaMode: 0 + materialQuality: 0 + m_ObsoleteBakedOrCustomReflectionFrameSettingsMovedToDefaultSettings: + bitDatas: + data1: 0 + data2: 0 + lodBias: 0 + lodBiasMode: 0 + lodBiasQualityLevel: 0 + maximumLODLevel: 0 + maximumLODLevelMode: 0 + maximumLODLevelQualityLevel: 0 + sssQualityMode: 0 + sssQualityLevel: 0 + sssCustomSampleBudget: 0 + sssCustomDownsampleSteps: 0 + msaaMode: 0 + materialQuality: 0 + m_ObsoleteRealtimeReflectionFrameSettingsMovedToDefaultSettings: + bitDatas: + data1: 0 + data2: 0 + lodBias: 0 + lodBiasMode: 0 + lodBiasQualityLevel: 0 + maximumLODLevel: 0 + maximumLODLevelMode: 0 + maximumLODLevelQualityLevel: 0 + sssQualityMode: 0 + sssQualityLevel: 0 + sssCustomSampleBudget: 0 + sssCustomDownsampleSteps: 0 + msaaMode: 0 + materialQuality: 0 + m_ObsoleteBeforeTransparentCustomPostProcesses: [] + m_ObsoleteBeforePostProcessCustomPostProcesses: [] + m_ObsoleteAfterPostProcessCustomPostProcesses: [] + m_ObsoleteBeforeTAACustomPostProcesses: [] + m_ObsoleteShaderVariantLogLevel: 0 + m_ObsoleteLensAttenuation: 0 + m_ObsoleteDiffusionProfileSettingsList: [] + m_PrefilterUseLegacyLightmaps: 0 + m_PrefilterUseLightmapBicubicSampling: 0 diff --git a/Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Def_FSR2_Software_AfterPost.asset.meta b/Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Def_FSR2_Software_AfterPost.asset.meta new file mode 100644 index 00000000000..f190aa0e64f --- /dev/null +++ b/Tests/SRPTests/Packages/com.unity.testing.hdrp/RP_Assets/HDRP_Test_Def_FSR2_Software_AfterPost.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 36c743f54fc91714bbc9aab32334513a +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/4x_PostProcessing/4107_DRS-FSR2-Hardware.unity b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/4x_PostProcessing/4107_DRS-FSR2-Hardware.unity new file mode 100644 index 00000000000..0ce0017fffc --- /dev/null +++ b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/4x_PostProcessing/4107_DRS-FSR2-Hardware.unity @@ -0,0 +1,668 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 10 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 0 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 13 + m_BakeOnSceneLoad: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1001 &223038177 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 1132393308280272, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_Name + value: HDRP_Test_Camera + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalPosition.z + value: -10 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 20109210616973140, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: m_AllowDynamicResolution + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: m_Version + value: 9 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: clearColorMode + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: allowDynamicResolution + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: customRenderingSettings + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: allowDeepLearningSuperSampling + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: allowFidelityFX2SuperResolution + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: m_RenderingPathCustomFrameSettings.bitDatas.data1 + value: 70005819440989 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: renderingPathCustomFrameSettingsOverrideMask.mask.data1 + value: 655360 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: waitFrames + value: 64 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: frameCountMultiple + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: renderPipelineAsset + value: + objectReference: {fileID: 11400000, guid: c9851109961f5bb48976c57b58923258, + type: 2} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: xrThresholdMultiplier + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: waitForFrameCountMultiple + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: ImageComparisonSettings.TargetWidth + value: 1920 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: ImageComparisonSettings.TargetHeight + value: 1080 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: ImageComparisonSettings.AverageCorrectnessThreshold + value: 0.00005 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} +--- !u!1001 &718012768 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 1030796126420900363, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_Version + value: 14 + objectReference: {fileID: 0} + - target: {fileID: 1030796126420900363, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_ShapeWidth + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 1030796126420900363, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_ShapeHeight + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 1030796126420900363, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_InnerSpotPercent + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 3216970787397183125, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_Version + value: 14 + objectReference: {fileID: 0} + - target: {fileID: 3216970787397183125, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_ShapeWidth + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 3216970787397183125, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_ShapeHeight + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 3216970787397183125, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_InnerSpotPercent + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 3216970787578992433, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_Version + value: 14 + objectReference: {fileID: 0} + - target: {fileID: 3216970787578992433, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_ShapeWidth + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 3216970787578992433, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_ShapeHeight + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 3216970787578992433, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_InnerSpotPercent + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 3216970788645259455, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_Version + value: 14 + objectReference: {fileID: 0} + - target: {fileID: 3216970788645259455, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_ShapeWidth + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 3216970788645259455, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_ShapeHeight + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 3216970788645259455, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_InnerSpotPercent + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 4067905044715825574, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_Name + value: Scene + objectReference: {fileID: 0} + - target: {fileID: 8077502235347394545, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8077502235347394545, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8077502235347394545, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8077502235347394545, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8077502235347394545, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8077502235347394545, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8077502235347394545, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8077502235347394545, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8077502235347394545, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8077502235347394545, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8077502235347394545, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 4e92e09835e1a6b499ce3d2405462efb, type: 3} +--- !u!1 &1145805900 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1145805903} + - component: {fileID: 1145805902} + - component: {fileID: 1145805901} + m_Layer: 0 + m_Name: Directional Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1145805901 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1145805900} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7a68c43fe1f2a47cfa234b5eeaa98012, type: 3} + m_Name: + m_EditorClassIdentifier: + m_PointlightHDType: 0 + m_SpotLightShape: 0 + m_AreaLightShape: 0 + m_EnableSpotReflector: 1 + m_LightUnit: 2 + m_LuxAtDistance: 1 + m_Intensity: 0.9696518 + m_InnerSpotPercent: -1 + m_ShapeWidth: -1 + m_ShapeHeight: -1 + m_AspectRatio: 1 + m_SpotIESCutoffPercent: 100 + m_LightDimmer: 1 + m_VolumetricDimmer: 1 + m_FadeDistance: 10000 + m_VolumetricFadeDistance: 10000 + m_AffectDiffuse: 1 + m_AffectSpecular: 1 + m_NonLightmappedOnly: 0 + m_ShapeRadius: 0.025 + m_SoftnessScale: 1 + m_UseCustomSpotLightShadowCone: 0 + m_CustomSpotLightShadowCone: 30 + m_MaxSmoothness: 0.99 + m_ApplyRangeAttenuation: 1 + m_DisplayAreaLightEmissiveMesh: 0 + m_AreaLightCookie: {fileID: 0} + m_IESPoint: {fileID: 0} + m_IESSpot: {fileID: 0} + m_IncludeForRayTracing: 1 + m_IncludeForPathTracing: 1 + m_AreaLightShadowCone: 120 + m_UseScreenSpaceShadows: 0 + m_InteractsWithSky: 1 + m_AngularDiameter: 0.5 + diameterMultiplerMode: 0 + diameterMultiplier: 1 + diameterOverride: 0.5 + celestialBodyShadingSource: 1 + sunLightOverride: {fileID: 0} + sunColor: {r: 1, g: 1, b: 1, a: 1} + sunIntensity: 130000 + moonPhase: 0.2 + moonPhaseRotation: 0 + earthshine: 1 + flareSize: 2 + flareTint: {r: 1, g: 1, b: 1, a: 1} + flareFalloff: 4 + flareMultiplier: 1 + surfaceTexture: {fileID: 0} + surfaceTint: {r: 1, g: 1, b: 1, a: 1} + m_Distance: 1.5e+11 + m_UseRayTracedShadows: 0 + m_NumRayTracingSamples: 4 + m_FilterTracedShadow: 1 + m_FilterSizeTraced: 16 + m_SunLightConeAngle: 0.5 + m_LightShadowRadius: 0.5 + m_SemiTransparentShadow: 0 + m_ColorShadow: 1 + m_DistanceBasedFiltering: 0 + m_EvsmExponent: 15 + m_EvsmLightLeakBias: 0 + m_EvsmVarianceBias: 0.00001 + m_EvsmBlurPasses: 0 + m_LightlayersMask: 1 + m_LinkShadowLayers: 1 + m_ShadowNearPlane: 0.1 + m_BlockerSampleCount: 24 + m_FilterSampleCount: 16 + m_MinFilterSize: 0.1 + m_DirLightPCSSBlockerSampleCount: 24 + m_DirLightPCSSFilterSampleCount: 16 + m_DirLightPCSSMaxPenumbraSize: 0.56 + m_DirLightPCSSMaxSamplingDistance: 0.5 + m_DirLightPCSSMinFilterSizeTexels: 1.5 + m_DirLightPCSSMinFilterMaxAngularDiameter: 10 + m_DirLightPCSSBlockerSearchAngularDiameter: 12 + m_DirLightPCSSBlockerSamplingClumpExponent: 2 + m_KernelSize: 5 + m_LightAngle: 1 + m_MaxDepthBias: 0.001 + m_ShadowResolution: + m_Override: 512 + m_UseOverride: 1 + m_Level: 0 + m_ShadowDimmer: 1 + m_VolumetricShadowDimmer: 1 + m_ShadowFadeDistance: 10000 + m_UseContactShadow: + m_Override: 0 + m_UseOverride: 1 + m_Level: 0 + m_RayTracedContactShadow: 0 + m_ShadowTint: {r: 0, g: 0, b: 0, a: 1} + m_PenumbraTint: 0 + m_NormalBias: 0.75 + m_SlopeBias: 0.5 + m_ShadowUpdateMode: 0 + m_AlwaysDrawDynamicShadows: 0 + m_UpdateShadowOnLightMovement: 0 + m_CachedShadowTranslationThreshold: 0.01 + m_CachedShadowAngularThreshold: 0.5 + m_BarnDoorAngle: 90 + m_BarnDoorLength: 0.05 + m_preserveCachedShadow: 0 + m_OnDemandShadowRenderOnPlacement: 1 + m_ShadowCascadeRatios: + - 0.05 + - 0.2 + - 0.3 + m_ShadowCascadeBorders: + - 0.2 + - 0.2 + - 0.2 + - 0.2 + m_ShadowAlgorithm: 0 + m_ShadowVariant: 0 + m_ShadowPrecision: 0 + useOldInspector: 0 + useVolumetric: 1 + featuresFoldout: 1 + m_AreaLightEmissiveMeshShadowCastingMode: 0 + m_AreaLightEmissiveMeshMotionVectorGenerationMode: 0 + m_AreaLightEmissiveMeshLayer: -1 + m_Version: 14 + m_ObsoleteShadowResolutionTier: 1 + m_ObsoleteUseShadowQualitySettings: 0 + m_ObsoleteCustomShadowResolution: 512 + m_ObsoleteContactShadows: 0 +--- !u!108 &1145805902 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1145805900} + m_Enabled: 1 + serializedVersion: 12 + m_Type: 1 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 0.9696518 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 0 + m_CookieSize2D: {x: 0.5, y: 0.5} + m_Shadows: + m_Type: 0 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 4 + m_LightShadowCasterMode: 2 + m_AreaSize: {x: 0.5, y: 0.5} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 1 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + 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!4 &1145805903 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1145805900} + serializedVersion: 2 + m_LocalRotation: {x: 0.13875811, y: 0.5250831, z: -0.42723507, w: 0.72284454} + m_LocalPosition: {x: 0.26, y: 2.95, z: -6.32} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 40.487, y: 57.373, z: -38.353} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 223038177} + - {fileID: 718012768} + - {fileID: 1145805903} diff --git a/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/4x_PostProcessing/4107_DRS-FSR2-Hardware.unity.meta b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/4x_PostProcessing/4107_DRS-FSR2-Hardware.unity.meta new file mode 100644 index 00000000000..437c432b543 --- /dev/null +++ b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/4x_PostProcessing/4107_DRS-FSR2-Hardware.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 90eae0c5496f9ac4ea55280841b6efdb +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/4x_PostProcessing/4108_DRS-FSR2-Software.unity b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/4x_PostProcessing/4108_DRS-FSR2-Software.unity new file mode 100644 index 00000000000..b3c94a059f0 --- /dev/null +++ b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/4x_PostProcessing/4108_DRS-FSR2-Software.unity @@ -0,0 +1,673 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 10 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 0 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 13 + m_BakeOnSceneLoad: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1001 &223038177 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 1132393308280272, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_Name + value: HDRP_Test_Camera + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalPosition.z + value: -10 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 20109210616973140, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: m_AllowDynamicResolution + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: m_Version + value: 9 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: antialiasing + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: clearColorMode + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: allowDynamicResolution + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: customRenderingSettings + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: allowDeepLearningSuperSampling + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: allowFidelityFX2SuperResolution + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: m_RenderingPathCustomFrameSettings.bitDatas.data1 + value: 70005819440989 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: renderingPathCustomFrameSettingsOverrideMask.mask.data1 + value: 655360 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: waitFrames + value: 64 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: frameCountMultiple + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: renderPipelineAsset + value: + objectReference: {fileID: 11400000, guid: 02c1dcf00256ddc45819b6e10011cf9e, + type: 2} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: xrThresholdMultiplier + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: waitForFrameCountMultiple + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: ImageComparisonSettings.TargetWidth + value: 1920 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: ImageComparisonSettings.TargetHeight + value: 1080 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: ImageComparisonSettings.AverageCorrectnessThreshold + value: 0.00005 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} +--- !u!1001 &718012768 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 1030796126420900363, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_Version + value: 14 + objectReference: {fileID: 0} + - target: {fileID: 1030796126420900363, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_ShapeWidth + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 1030796126420900363, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_ShapeHeight + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 1030796126420900363, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_InnerSpotPercent + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 3216970787397183125, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_Version + value: 14 + objectReference: {fileID: 0} + - target: {fileID: 3216970787397183125, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_ShapeWidth + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 3216970787397183125, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_ShapeHeight + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 3216970787397183125, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_InnerSpotPercent + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 3216970787578992433, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_Version + value: 14 + objectReference: {fileID: 0} + - target: {fileID: 3216970787578992433, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_ShapeWidth + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 3216970787578992433, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_ShapeHeight + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 3216970787578992433, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_InnerSpotPercent + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 3216970788645259455, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_Version + value: 14 + objectReference: {fileID: 0} + - target: {fileID: 3216970788645259455, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_ShapeWidth + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 3216970788645259455, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_ShapeHeight + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 3216970788645259455, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_InnerSpotPercent + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 4067905044715825574, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_Name + value: Scene + objectReference: {fileID: 0} + - target: {fileID: 8077502235347394545, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8077502235347394545, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8077502235347394545, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8077502235347394545, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8077502235347394545, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8077502235347394545, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8077502235347394545, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8077502235347394545, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8077502235347394545, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8077502235347394545, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8077502235347394545, guid: 4e92e09835e1a6b499ce3d2405462efb, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 4e92e09835e1a6b499ce3d2405462efb, type: 3} +--- !u!1 &1145805900 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1145805903} + - component: {fileID: 1145805902} + - component: {fileID: 1145805901} + m_Layer: 0 + m_Name: Directional Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1145805901 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1145805900} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7a68c43fe1f2a47cfa234b5eeaa98012, type: 3} + m_Name: + m_EditorClassIdentifier: + m_PointlightHDType: 0 + m_SpotLightShape: 0 + m_AreaLightShape: 0 + m_EnableSpotReflector: 1 + m_LightUnit: 2 + m_LuxAtDistance: 1 + m_Intensity: 0.9696518 + m_InnerSpotPercent: -1 + m_ShapeWidth: -1 + m_ShapeHeight: -1 + m_AspectRatio: 1 + m_SpotIESCutoffPercent: 100 + m_LightDimmer: 1 + m_VolumetricDimmer: 1 + m_FadeDistance: 10000 + m_VolumetricFadeDistance: 10000 + m_AffectDiffuse: 1 + m_AffectSpecular: 1 + m_NonLightmappedOnly: 0 + m_ShapeRadius: 0.025 + m_SoftnessScale: 1 + m_UseCustomSpotLightShadowCone: 0 + m_CustomSpotLightShadowCone: 30 + m_MaxSmoothness: 0.99 + m_ApplyRangeAttenuation: 1 + m_DisplayAreaLightEmissiveMesh: 0 + m_AreaLightCookie: {fileID: 0} + m_IESPoint: {fileID: 0} + m_IESSpot: {fileID: 0} + m_IncludeForRayTracing: 1 + m_IncludeForPathTracing: 1 + m_AreaLightShadowCone: 120 + m_UseScreenSpaceShadows: 0 + m_InteractsWithSky: 1 + m_AngularDiameter: 0.5 + diameterMultiplerMode: 0 + diameterMultiplier: 1 + diameterOverride: 0.5 + celestialBodyShadingSource: 1 + sunLightOverride: {fileID: 0} + sunColor: {r: 1, g: 1, b: 1, a: 1} + sunIntensity: 130000 + moonPhase: 0.2 + moonPhaseRotation: 0 + earthshine: 1 + flareSize: 2 + flareTint: {r: 1, g: 1, b: 1, a: 1} + flareFalloff: 4 + flareMultiplier: 1 + surfaceTexture: {fileID: 0} + surfaceTint: {r: 1, g: 1, b: 1, a: 1} + m_Distance: 1.5e+11 + m_UseRayTracedShadows: 0 + m_NumRayTracingSamples: 4 + m_FilterTracedShadow: 1 + m_FilterSizeTraced: 16 + m_SunLightConeAngle: 0.5 + m_LightShadowRadius: 0.5 + m_SemiTransparentShadow: 0 + m_ColorShadow: 1 + m_DistanceBasedFiltering: 0 + m_EvsmExponent: 15 + m_EvsmLightLeakBias: 0 + m_EvsmVarianceBias: 0.00001 + m_EvsmBlurPasses: 0 + m_LightlayersMask: 1 + m_LinkShadowLayers: 1 + m_ShadowNearPlane: 0.1 + m_BlockerSampleCount: 24 + m_FilterSampleCount: 16 + m_MinFilterSize: 0.1 + m_DirLightPCSSBlockerSampleCount: 24 + m_DirLightPCSSFilterSampleCount: 16 + m_DirLightPCSSMaxPenumbraSize: 0.56 + m_DirLightPCSSMaxSamplingDistance: 0.5 + m_DirLightPCSSMinFilterSizeTexels: 1.5 + m_DirLightPCSSMinFilterMaxAngularDiameter: 10 + m_DirLightPCSSBlockerSearchAngularDiameter: 12 + m_DirLightPCSSBlockerSamplingClumpExponent: 2 + m_KernelSize: 5 + m_LightAngle: 1 + m_MaxDepthBias: 0.001 + m_ShadowResolution: + m_Override: 512 + m_UseOverride: 1 + m_Level: 0 + m_ShadowDimmer: 1 + m_VolumetricShadowDimmer: 1 + m_ShadowFadeDistance: 10000 + m_UseContactShadow: + m_Override: 0 + m_UseOverride: 1 + m_Level: 0 + m_RayTracedContactShadow: 0 + m_ShadowTint: {r: 0, g: 0, b: 0, a: 1} + m_PenumbraTint: 0 + m_NormalBias: 0.75 + m_SlopeBias: 0.5 + m_ShadowUpdateMode: 0 + m_AlwaysDrawDynamicShadows: 0 + m_UpdateShadowOnLightMovement: 0 + m_CachedShadowTranslationThreshold: 0.01 + m_CachedShadowAngularThreshold: 0.5 + m_BarnDoorAngle: 90 + m_BarnDoorLength: 0.05 + m_preserveCachedShadow: 0 + m_OnDemandShadowRenderOnPlacement: 1 + m_ShadowCascadeRatios: + - 0.05 + - 0.2 + - 0.3 + m_ShadowCascadeBorders: + - 0.2 + - 0.2 + - 0.2 + - 0.2 + m_ShadowAlgorithm: 0 + m_ShadowVariant: 0 + m_ShadowPrecision: 0 + useOldInspector: 0 + useVolumetric: 1 + featuresFoldout: 1 + m_AreaLightEmissiveMeshShadowCastingMode: 0 + m_AreaLightEmissiveMeshMotionVectorGenerationMode: 0 + m_AreaLightEmissiveMeshLayer: -1 + m_Version: 14 + m_ObsoleteShadowResolutionTier: 1 + m_ObsoleteUseShadowQualitySettings: 0 + m_ObsoleteCustomShadowResolution: 512 + m_ObsoleteContactShadows: 0 +--- !u!108 &1145805902 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1145805900} + m_Enabled: 1 + serializedVersion: 12 + m_Type: 1 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 0.9696518 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 0 + m_CookieSize2D: {x: 0.5, y: 0.5} + m_Shadows: + m_Type: 0 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 4 + m_LightShadowCasterMode: 2 + m_AreaSize: {x: 0.5, y: 0.5} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 1 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + 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!4 &1145805903 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1145805900} + serializedVersion: 2 + m_LocalRotation: {x: 0.13875811, y: 0.5250831, z: -0.42723507, w: 0.72284454} + m_LocalPosition: {x: 0.26, y: 2.95, z: -6.32} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 40.487, y: 57.373, z: -38.353} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 223038177} + - {fileID: 718012768} + - {fileID: 1145805903} diff --git a/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/4x_PostProcessing/4108_DRS-FSR2-Software.unity.meta b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/4x_PostProcessing/4108_DRS-FSR2-Software.unity.meta new file mode 100644 index 00000000000..493bdcdadcd --- /dev/null +++ b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/4x_PostProcessing/4108_DRS-FSR2-Software.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 7ef4a19b40d29a74492f7a1166ef9523 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/4x_PostProcessing/4109_DRS-FSR2-AfterPost.unity b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/4x_PostProcessing/4109_DRS-FSR2-AfterPost.unity new file mode 100644 index 00000000000..5c61549b46a --- /dev/null +++ b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/4x_PostProcessing/4109_DRS-FSR2-AfterPost.unity @@ -0,0 +1,658 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 10 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 0 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 13 + m_BakeOnSceneLoad: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1001 &223038177 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 1132393308280272, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_Name + value: HDRP_Test_Camera + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalPosition.z + value: -10 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 20109210616973140, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: m_AllowDynamicResolution + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: m_Version + value: 9 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: antialiasing + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: clearColorMode + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: allowDynamicResolution + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: customRenderingSettings + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: allowDeepLearningSuperSampling + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: m_RenderingPathCustomFrameSettings.bitDatas.data1 + value: 70005819440989 + objectReference: {fileID: 0} + - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: renderingPathCustomFrameSettingsOverrideMask.mask.data1 + value: 655360 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: waitFrames + value: 64 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: frameCountMultiple + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: renderPipelineAsset + value: + objectReference: {fileID: 11400000, guid: 36c743f54fc91714bbc9aab32334513a, + type: 2} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: xrThresholdMultiplier + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: waitForFrameCountMultiple + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: ImageComparisonSettings.TargetWidth + value: 1920 + objectReference: {fileID: 0} + - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, + type: 3} + propertyPath: ImageComparisonSettings.TargetHeight + value: 1080 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} +--- !u!1001 &1096010864 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 1371443633274832211, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1371443633274832211, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1371443633274832211, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1371443633274832211, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1371443633274832211, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1371443633274832211, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1371443633274832211, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1371443633274832211, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1371443633274832211, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1371443633274832211, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5743686188026106397, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_Version + value: 14 + objectReference: {fileID: 0} + - target: {fileID: 5743686188026106397, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_ShapeWidth + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 5743686188026106397, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_ShapeHeight + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 5743686188026106397, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_InnerSpotPercent + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 5743686188770884663, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_Version + value: 14 + objectReference: {fileID: 0} + - target: {fileID: 5743686188770884663, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_ShapeWidth + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 5743686188770884663, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_ShapeHeight + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 5743686188770884663, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_InnerSpotPercent + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 5743686189104958867, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_Version + value: 14 + objectReference: {fileID: 0} + - target: {fileID: 5743686189104958867, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_ShapeWidth + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 5743686189104958867, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_ShapeHeight + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 5743686189104958867, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_InnerSpotPercent + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 6585757847933498116, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_Name + value: Scene (1) + objectReference: {fileID: 0} + - target: {fileID: 7881099609835421865, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_Version + value: 14 + objectReference: {fileID: 0} + - target: {fileID: 7881099609835421865, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_ShapeWidth + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 7881099609835421865, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_ShapeHeight + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 7881099609835421865, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, + type: 3} + propertyPath: m_InnerSpotPercent + value: -1 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 8dc044776e5ab0b4aa8fcac1c8bec531, type: 3} +--- !u!1 &1145805900 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1145805903} + - component: {fileID: 1145805902} + - component: {fileID: 1145805901} + m_Layer: 0 + m_Name: Directional Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1145805901 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1145805900} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7a68c43fe1f2a47cfa234b5eeaa98012, type: 3} + m_Name: + m_EditorClassIdentifier: + m_PointlightHDType: 0 + m_SpotLightShape: 0 + m_AreaLightShape: 0 + m_EnableSpotReflector: 1 + m_LightUnit: 2 + m_LuxAtDistance: 1 + m_Intensity: 0.9696518 + m_InnerSpotPercent: -1 + m_ShapeWidth: -1 + m_ShapeHeight: -1 + m_AspectRatio: 1 + m_SpotIESCutoffPercent: 100 + m_LightDimmer: 1 + m_VolumetricDimmer: 1 + m_FadeDistance: 10000 + m_VolumetricFadeDistance: 10000 + m_AffectDiffuse: 1 + m_AffectSpecular: 1 + m_NonLightmappedOnly: 0 + m_ShapeRadius: 0.025 + m_SoftnessScale: 1 + m_UseCustomSpotLightShadowCone: 0 + m_CustomSpotLightShadowCone: 30 + m_MaxSmoothness: 0.99 + m_ApplyRangeAttenuation: 1 + m_DisplayAreaLightEmissiveMesh: 0 + m_AreaLightCookie: {fileID: 0} + m_IESPoint: {fileID: 0} + m_IESSpot: {fileID: 0} + m_IncludeForRayTracing: 1 + m_IncludeForPathTracing: 1 + m_AreaLightShadowCone: 120 + m_UseScreenSpaceShadows: 0 + m_InteractsWithSky: 1 + m_AngularDiameter: 0.5 + diameterMultiplerMode: 0 + diameterMultiplier: 1 + diameterOverride: 0.5 + celestialBodyShadingSource: 1 + sunLightOverride: {fileID: 0} + sunColor: {r: 1, g: 1, b: 1, a: 1} + sunIntensity: 130000 + moonPhase: 0.2 + moonPhaseRotation: 0 + earthshine: 1 + flareSize: 2 + flareTint: {r: 1, g: 1, b: 1, a: 1} + flareFalloff: 4 + flareMultiplier: 1 + surfaceTexture: {fileID: 0} + surfaceTint: {r: 1, g: 1, b: 1, a: 1} + m_Distance: 1.5e+11 + m_UseRayTracedShadows: 0 + m_NumRayTracingSamples: 4 + m_FilterTracedShadow: 1 + m_FilterSizeTraced: 16 + m_SunLightConeAngle: 0.5 + m_LightShadowRadius: 0.5 + m_SemiTransparentShadow: 0 + m_ColorShadow: 1 + m_DistanceBasedFiltering: 0 + m_EvsmExponent: 15 + m_EvsmLightLeakBias: 0 + m_EvsmVarianceBias: 0.00001 + m_EvsmBlurPasses: 0 + m_LightlayersMask: 1 + m_LinkShadowLayers: 1 + m_ShadowNearPlane: 0.1 + m_BlockerSampleCount: 24 + m_FilterSampleCount: 16 + m_MinFilterSize: 0.1 + m_DirLightPCSSBlockerSampleCount: 24 + m_DirLightPCSSFilterSampleCount: 16 + m_DirLightPCSSMaxPenumbraSize: 0.56 + m_DirLightPCSSMaxSamplingDistance: 0.5 + m_DirLightPCSSMinFilterSizeTexels: 1.5 + m_DirLightPCSSMinFilterMaxAngularDiameter: 10 + m_DirLightPCSSBlockerSearchAngularDiameter: 12 + m_DirLightPCSSBlockerSamplingClumpExponent: 2 + m_KernelSize: 5 + m_LightAngle: 1 + m_MaxDepthBias: 0.001 + m_ShadowResolution: + m_Override: 512 + m_UseOverride: 1 + m_Level: 0 + m_ShadowDimmer: 1 + m_VolumetricShadowDimmer: 1 + m_ShadowFadeDistance: 10000 + m_UseContactShadow: + m_Override: 0 + m_UseOverride: 1 + m_Level: 0 + m_RayTracedContactShadow: 0 + m_ShadowTint: {r: 0, g: 0, b: 0, a: 1} + m_PenumbraTint: 0 + m_NormalBias: 0.75 + m_SlopeBias: 0.5 + m_ShadowUpdateMode: 0 + m_AlwaysDrawDynamicShadows: 0 + m_UpdateShadowOnLightMovement: 0 + m_CachedShadowTranslationThreshold: 0.01 + m_CachedShadowAngularThreshold: 0.5 + m_BarnDoorAngle: 90 + m_BarnDoorLength: 0.05 + m_preserveCachedShadow: 0 + m_OnDemandShadowRenderOnPlacement: 1 + m_ShadowCascadeRatios: + - 0.05 + - 0.2 + - 0.3 + m_ShadowCascadeBorders: + - 0.2 + - 0.2 + - 0.2 + - 0.2 + m_ShadowAlgorithm: 0 + m_ShadowVariant: 0 + m_ShadowPrecision: 0 + useOldInspector: 0 + useVolumetric: 1 + featuresFoldout: 1 + m_AreaLightEmissiveMeshShadowCastingMode: 0 + m_AreaLightEmissiveMeshMotionVectorGenerationMode: 0 + m_AreaLightEmissiveMeshLayer: -1 + m_Version: 14 + m_ObsoleteShadowResolutionTier: 1 + m_ObsoleteUseShadowQualitySettings: 0 + m_ObsoleteCustomShadowResolution: 512 + m_ObsoleteContactShadows: 0 +--- !u!108 &1145805902 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1145805900} + m_Enabled: 1 + serializedVersion: 12 + m_Type: 1 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 0.9696518 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 0 + m_CookieSize2D: {x: 0.5, y: 0.5} + m_Shadows: + m_Type: 0 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 4 + m_LightShadowCasterMode: 2 + m_AreaSize: {x: 0.5, y: 0.5} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 1 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + 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!4 &1145805903 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1145805900} + serializedVersion: 2 + m_LocalRotation: {x: 0.13875811, y: 0.5250831, z: -0.42723507, w: 0.72284454} + m_LocalPosition: {x: 0.26, y: 2.95, z: -6.32} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 40.487, y: 57.373, z: -38.353} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 223038177} + - {fileID: 1096010864} + - {fileID: 1145805903} diff --git a/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/4x_PostProcessing/4109_DRS-FSR2-AfterPost.unity.meta b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/4x_PostProcessing/4109_DRS-FSR2-AfterPost.unity.meta new file mode 100644 index 00000000000..9b94f78912f --- /dev/null +++ b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/4x_PostProcessing/4109_DRS-FSR2-AfterPost.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: cbd1f7bf59ae04b46afbfcb1188b43b4 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/9x_Other/9923_CustomWaterNormalAtHighPosition.unity b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/9x_Other/9923_CustomWaterNormalAtHighPosition.unity index 4c6b41be920..b9fe407f51f 100644 --- a/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/9x_Other/9923_CustomWaterNormalAtHighPosition.unity +++ b/Tests/SRPTests/Projects/HDRP_Tests/Assets/GraphicTests/Scenes/9x_Other/9923_CustomWaterNormalAtHighPosition.unity @@ -145,14 +145,14 @@ Light: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 157207112} m_Enabled: 1 - serializedVersion: 11 + serializedVersion: 12 m_Type: 1 m_Color: {r: 1, g: 1, b: 1, a: 1} m_Intensity: 130000 m_Range: 10 m_SpotAngle: 30 - m_InnerSpotAngle: 21.80208 - m_CookieSize: 10 + m_InnerSpotAngle: 0 + m_CookieSize2D: {x: 0.5, y: 0.5} m_Shadows: m_Type: 2 m_Resolution: -1 @@ -236,7 +236,10 @@ MonoBehaviour: m_LightUnit: 2 m_LuxAtDistance: 1 m_Intensity: 130000 - m_InnerSpotPercent: 0 + m_InnerSpotPercent: -1 + m_ShapeWidth: -1 + m_ShapeHeight: -1 + m_AspectRatio: 1 m_SpotIESCutoffPercent: 100 m_LightDimmer: 1 m_VolumetricDimmer: 1 @@ -245,9 +248,6 @@ MonoBehaviour: m_AffectDiffuse: 1 m_AffectSpecular: 1 m_NonLightmappedOnly: 0 - m_ShapeWidth: 0.5 - m_ShapeHeight: 0.5 - m_AspectRatio: 1 m_ShapeRadius: 0.025 m_SoftnessScale: 1 m_UseCustomSpotLightShadowCone: 0 @@ -354,7 +354,7 @@ MonoBehaviour: m_AreaLightEmissiveMeshShadowCastingMode: 0 m_AreaLightEmissiveMeshMotionVectorGenerationMode: 0 m_AreaLightEmissiveMeshLayer: -1 - m_Version: 13 + m_Version: 14 m_ObsoleteShadowResolutionTier: 1 m_ObsoleteUseShadowQualitySettings: 0 m_ObsoleteCustomShadowResolution: 512 @@ -505,7 +505,7 @@ MonoBehaviour: largeBand0FadeToggle: 1 largeBand1FadeToggle: 1 ripplesFadeToggle: 1 - surfaceType: 2 + surfaceType: 0 geometryType: 1 meshRenderers: - {fileID: 681901391} @@ -517,8 +517,8 @@ MonoBehaviour: endSmoothness: 0.85 smoothnessFadeStart: 100 smoothnessFadeDistance: 500 - tessellation: 0 - maxTessellationFactor: 3 + tessellation: 1 + maxTessellationFactor: 5 tessellationFactorFadeStart: 150 tessellationFactorFadeRange: 1850 refractionColor: {r: 0.033104762, g: 0.26327342, b: 0.26327342, a: 1} @@ -630,7 +630,7 @@ MonoBehaviour: m_RotationOrder: 4 repetitionSize: 500 largeOrientationValue: 0 - largeWindSpeed: 30 + largeWindSpeed: 33.4 largeChaos: 0.8 largeBand0Multiplier: 1 largeBand0FadeMode: 1 @@ -663,9 +663,9 @@ Transform: m_GameObject: {fileID: 681901390} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 49.999996, y: 150, z: 0} - m_LocalScale: {x: 10, y: 1, z: 10} - m_ConstrainProportionsScale: 1 + m_LocalPosition: {x: -250, y: 150, z: 1250} + m_LocalScale: {x: 50, y: 1, z: 50} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -695,19 +695,19 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} propertyPath: m_LocalPosition.y - value: 151 + value: 170 objectReference: {fileID: 0} - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} propertyPath: m_LocalPosition.z - value: -10 + value: 1000 objectReference: {fileID: 0} - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} propertyPath: m_LocalRotation.w - value: 1 + value: 0.9659258 objectReference: {fileID: 0} - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} propertyPath: m_LocalRotation.x - value: 0 + value: 0.2588191 objectReference: {fileID: 0} - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} propertyPath: m_LocalRotation.y @@ -719,7 +719,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} propertyPath: m_LocalEulerAnglesHint.x - value: 0 + value: 30 objectReference: {fileID: 0} - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} propertyPath: m_LocalEulerAnglesHint.y @@ -803,7 +803,7 @@ PrefabInstance: - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3} propertyPath: ImageComparisonSettings.TargetHeight - value: 640 + value: 360 objectReference: {fileID: 0} m_RemovedComponents: [] m_RemovedGameObjects: [] @@ -889,7 +889,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Profile: {fileID: 11400000, guid: 8ba92e2dd7f884a0f88b98fa2d235fe7, type: 2} - m_StaticLightingSkyUniqueID: 4 + m_StaticLightingSkyUniqueID: 0 m_StaticLightingCloudsUniqueID: 0 m_StaticLightingVolumetricClouds: 0 bounces: 1 @@ -965,8 +965,8 @@ MonoBehaviour: largeBand0FadeToggle: 1 largeBand1FadeToggle: 1 ripplesFadeToggle: 1 - surfaceType: 2 - geometryType: 0 + surfaceType: 0 + geometryType: 2 meshRenderers: [] timeMultiplier: 0 scriptInteractions: 0 @@ -977,7 +977,7 @@ MonoBehaviour: smoothnessFadeStart: 100 smoothnessFadeDistance: 500 tessellation: 0 - maxTessellationFactor: 3 + maxTessellationFactor: 8 tessellationFactorFadeStart: 150 tessellationFactorFadeRange: 1850 refractionColor: {r: 0.033104762, g: 0.26327342, b: 0.26327342, a: 1} @@ -1122,9 +1122,9 @@ Transform: m_GameObject: {fileID: 2031290236} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: -50.000004, y: 150, z: 0} - m_LocalScale: {x: 100, y: 9.999999, z: 100} - m_ConstrainProportionsScale: 1 + m_LocalPosition: {x: 250, y: 150, z: 1250} + m_LocalScale: {x: 500, y: 1, z: 500} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} diff --git a/Tests/SRPTests/Projects/HDRP_Tests/Packages/manifest.json b/Tests/SRPTests/Projects/HDRP_Tests/Packages/manifest.json index 6071889ee40..616c4cf4634 100644 --- a/Tests/SRPTests/Projects/HDRP_Tests/Packages/manifest.json +++ b/Tests/SRPTests/Projects/HDRP_Tests/Packages/manifest.json @@ -18,6 +18,7 @@ "com.unity.ugui": "2.0.0", "com.unity.visualeffectgraph": "file:../../../../../Packages/com.unity.visualeffectgraph", "com.unity.modules.ai": "1.0.0", + "com.unity.modules.amd": "1.0.0", "com.unity.modules.androidjni": "1.0.0", "com.unity.modules.animation": "1.0.0", "com.unity.modules.assetbundle": "1.0.0", diff --git a/Tests/SRPTests/Projects/HDRP_Tests/ProjectSettings/EditorBuildSettings.asset b/Tests/SRPTests/Projects/HDRP_Tests/ProjectSettings/EditorBuildSettings.asset index 671a78f8266..b93028c8d5a 100644 --- a/Tests/SRPTests/Projects/HDRP_Tests/ProjectSettings/EditorBuildSettings.asset +++ b/Tests/SRPTests/Projects/HDRP_Tests/ProjectSettings/EditorBuildSettings.asset @@ -710,6 +710,15 @@ EditorBuildSettings: - enabled: 1 path: Assets/GraphicTests/Scenes/4x_PostProcessing/4106_DRS-TAAU-AfterPost.unity guid: f3545370c7a89344e8947299391ba87d + - enabled: 1 + path: Assets/GraphicTests/Scenes/4x_PostProcessing/4107_DRS-FSR2-Hardware.unity + guid: 90eae0c5496f9ac4ea55280841b6efdb + - enabled: 1 + path: Assets/GraphicTests/Scenes/4x_PostProcessing/4108_DRS-FSR2-Software.unity + guid: 7ef4a19b40d29a74492f7a1166ef9523 + - enabled: 1 + path: Assets/GraphicTests/Scenes/4x_PostProcessing/4109_DRS-FSR2-AfterPost.unity + guid: cbd1f7bf59ae04b46afbfcb1188b43b4 - enabled: 1 path: Assets/GraphicTests/Scenes/5x_SkyAndFog/5001_Fog_FogFallback.unity guid: d04c39af67e5e18449a44f6a7778862f @@ -1004,5 +1013,7 @@ EditorBuildSettings: - enabled: 1 path: Assets/GraphicTests/Scenes/9x_Other/9970-ScreenSpaceUIOverlay.unity guid: df8ad799e8a136e488cc1dc4c39a9c2c - m_configObjects: {} + m_configObjects: + com.unity.xr.management.loader_settings: {fileID: 11400000, guid: 20e925b8abdd424429b17f709e9d00f8, + type: 2} m_UseUCBPForAssetBundles: 0 diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation.unity b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation.unity index 94120ec8f4e..9cfeec472e5 100644 --- a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation.unity +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation.unity @@ -1157,7 +1157,7 @@ Transform: m_GameObject: {fileID: 1056512284} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 2, y: -2.5, z: 0} + m_LocalPosition: {x: 0.36, y: -2.53, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] @@ -1254,6 +1254,138 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1308256570 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1308256573} + - component: {fileID: 1308256571} + - component: {fileID: 1308256572} + - component: {fileID: 1308256574} + m_Layer: 0 + m_Name: Square_Color_Animated + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!212 &1308256571 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1308256570} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: -876546973899608171, guid: 282e7d68bb3909e4198ef948bc86d2dc, type: 3} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 7482667652216324306, guid: d5c9d2cd68de640458a93586c0457bfe, + type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1.9, y: 2.53} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!95 &1308256572 +Animator: + serializedVersion: 7 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1308256570} + m_Enabled: 1 + m_Avatar: {fileID: 0} + m_Controller: {fileID: 9100000, guid: 3ff3a8d67a7dacd4f910c6fcf6f59c32, type: 2} + m_CullingMode: 0 + m_UpdateMode: 1 + m_ApplyRootMotion: 0 + m_LinearVelocityBlending: 0 + m_StabilizeFeet: 0 + m_AnimatePhysics: 0 + m_WarningMessage: + m_HasTransformHierarchy: 1 + m_AllowConstantClipSamplingOptimization: 1 + m_KeepAnimatorStateOnDisable: 0 + m_WriteDefaultValuesOnDisable: 0 +--- !u!4 &1308256573 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1308256570} + 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: 1571339301} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1308256574 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1308256570} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 12866226dbc174b4e91bd7b00c3703d0, type: 3} + m_Name: + m_EditorClassIdentifier: Universal2DGraphicsTests::SetMaterialPropertyBlock + spriteRenderer: {fileID: 1308256571} + color: {r: 0, g: 0.048674583, b: 1, a: 1} + saturation: 0.3 + overwriteColor: 1 + overwriteSaturation: 1 --- !u!1 &1452826193 GameObject: m_ObjectHideFlags: 0 @@ -1345,6 +1477,38 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1571339300 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1571339301} + m_Layer: 0 + m_Name: Parent + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1571339301 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1571339300} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 2.13, y: -3.12, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1308256573} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &2103671723 GameObject: m_ObjectHideFlags: 0 @@ -1511,7 +1675,7 @@ MonoBehaviour: ImageResolution: 2 ActiveImageTests: 1 ActivePixelTests: -1 - WaitFrames: 0 + WaitFrames: 100 XRCompatible: 0 gpuDrivenCompatible: 1 CheckMemoryAllocation: 0 @@ -1543,4 +1707,5 @@ SceneRoots: - {fileID: 625315505} - {fileID: 402672546} - {fileID: 1056512287} + - {fileID: 1571339301} - {fileID: 794361100} diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/089_SpriteColorShader.shadergraph b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/089_SpriteColorShader.shadergraph new file mode 100644 index 00000000000..41b8343edae --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/089_SpriteColorShader.shadergraph @@ -0,0 +1,1281 @@ +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.GraphData", + "m_ObjectId": "946c50405d5f4964abef76197482f9f9", + "m_Properties": [ + { + "m_Id": "bb6c7b96ccf74780b552c446ed213030" + }, + { + "m_Id": "093150b2ec4f4628a1ddd1b2ce0ec4b3" + }, + { + "m_Id": "2aff8e3ec7ee4e9e8592b7aaf33d1b0f" + } + ], + "m_Keywords": [], + "m_Dropdowns": [], + "m_CategoryData": [ + { + "m_Id": "6b1be793778e442cb46b2317ffa89bbc" + } + ], + "m_Nodes": [ + { + "m_Id": "978e4667040842c994575e6bc4cccdde" + }, + { + "m_Id": "66f4525945bb4770989a4f4c27f98506" + }, + { + "m_Id": "fad59224b79045ad869132c73977edfc" + }, + { + "m_Id": "5e7b58a8e80e45a28e67d06fd1697651" + }, + { + "m_Id": "f3e77a1ca56d4f46bbd6dd483005f114" + }, + { + "m_Id": "f748a7e8bad442ce99b3705f56f14432" + }, + { + "m_Id": "f379acf84bfb4a7aae06b972f9be6af7" + }, + { + "m_Id": "63d4bde4b8f04f20b9b99182a11c56ac" + }, + { + "m_Id": "5ba9c35175a24a408cd4895bf02482b8" + }, + { + "m_Id": "0bfa88261932417aaf40089f20ae8d8f" + }, + { + "m_Id": "e29c93811c194d2b824b0879463f8777" + } + ], + "m_GroupDatas": [], + "m_StickyNoteDatas": [], + "m_Edges": [ + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "0bfa88261932417aaf40089f20ae8d8f" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "5e7b58a8e80e45a28e67d06fd1697651" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "5ba9c35175a24a408cd4895bf02482b8" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "0bfa88261932417aaf40089f20ae8d8f" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "63d4bde4b8f04f20b9b99182a11c56ac" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "5ba9c35175a24a408cd4895bf02482b8" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "e29c93811c194d2b824b0879463f8777" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "0bfa88261932417aaf40089f20ae8d8f" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "f379acf84bfb4a7aae06b972f9be6af7" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "5ba9c35175a24a408cd4895bf02482b8" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "f379acf84bfb4a7aae06b972f9be6af7" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f3e77a1ca56d4f46bbd6dd483005f114" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "f748a7e8bad442ce99b3705f56f14432" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f379acf84bfb4a7aae06b972f9be6af7" + }, + "m_SlotId": 1 + } + } + ], + "m_VertexContext": { + "m_Position": { + "x": 374.39996337890627, + "y": -204.00003051757813 + }, + "m_Blocks": [ + { + "m_Id": "978e4667040842c994575e6bc4cccdde" + }, + { + "m_Id": "66f4525945bb4770989a4f4c27f98506" + }, + { + "m_Id": "fad59224b79045ad869132c73977edfc" + } + ] + }, + "m_FragmentContext": { + "m_Position": { + "x": 374.39996337890627, + "y": -4.000025749206543 + }, + "m_Blocks": [ + { + "m_Id": "5e7b58a8e80e45a28e67d06fd1697651" + }, + { + "m_Id": "f3e77a1ca56d4f46bbd6dd483005f114" + } + ] + }, + "m_PreviewData": { + "serializedMesh": { + "m_SerializedMesh": "{\"mesh\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "preventRotation": false + }, + "m_Path": "Shader Graphs", + "m_GraphPrecision": 1, + "m_PreviewMode": 2, + "m_OutputNode": { + "m_Id": "" + }, + "m_SubDatas": [], + "m_ActiveTargets": [ + { + "m_Id": "43351345c97d4c0386105bd36806183d" + } + ] +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "093150b2ec4f4628a1ddd1b2ce0ec4b3", + "m_Guid": { + "m_GuidSerialized": "09016734-5a1d-48ee-9ef8-e66c5041c333" + }, + "m_Name": "Color", + "m_DefaultRefNameVersion": 1, + "m_RefNameGeneratedByDisplayName": "Color", + "m_DefaultReferenceName": "_Color", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 1.0, + "g": 1.0, + "b": 1.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SaturationNode", + "m_ObjectId": "0bfa88261932417aaf40089f20ae8d8f", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Saturation", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -56.80004119873047, + "y": -76.00000762939453, + "width": 174.40008544921876, + "height": 117.59996032714844 + } + }, + "m_Slots": [ + { + "m_Id": "8c9ed646dde24f88a52c0f46e7a9483a" + }, + { + "m_Id": "9e0348bf43ac4bafbf2a622fdba76848" + }, + { + "m_Id": "f3a895ae8fd74e19b23cf75fbbb39cf2" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "1033ca88d85845bc8a2d0a5441d6173a", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PositionMaterialSlot", + "m_ObjectId": "266261760afe4636804d5151bf7c1663", + "m_Id": 0, + "m_DisplayName": "Position", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Position", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "2aff8e3ec7ee4e9e8592b7aaf33d1b0f", + "m_Guid": { + "m_GuidSerialized": "c44dcf49-c866-41a5-a7e0-720d34611c38" + }, + "m_Name": "Saturation", + "m_DefaultRefNameVersion": 1, + "m_RefNameGeneratedByDisplayName": "Saturation", + "m_DefaultReferenceName": "_Saturation", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 1.0, + "m_FloatType": 0, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ColorRGBMaterialSlot", + "m_ObjectId": "2fda9f02130f4d6b81a6438ecc642ad6", + "m_Id": 0, + "m_DisplayName": "Base Color", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "BaseColor", + "m_StageCapability": 2, + "m_Value": { + "x": 0.5, + "y": 0.5, + "z": 0.5 + }, + "m_DefaultValue": { + "x": 0.5, + "y": 0.5, + "z": 0.5 + }, + "m_Labels": [], + "m_ColorMode": 0, + "m_DefaultColor": { + "r": 0.5, + "g": 0.5, + "b": 0.5, + "a": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "37fc594725cf4961b50cb096d5aa0d5b", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalTarget", + "m_ObjectId": "43351345c97d4c0386105bd36806183d", + "m_Datas": [], + "m_ActiveSubTarget": { + "m_Id": "4a649f90acf849b7bc78ca7e55107bf2" + }, + "m_AllowMaterialOverride": false, + "m_SurfaceType": 0, + "m_ZTestMode": 4, + "m_ZWriteControl": 0, + "m_AlphaMode": 0, + "m_RenderFace": 2, + "m_AlphaClip": false, + "m_CastShadows": true, + "m_ReceiveShadows": true, + "m_DisableTint": false, + "m_AdditionalMotionVectorMode": 0, + "m_AlembicMotionVectors": false, + "m_SupportsLODCrossFade": false, + "m_CustomEditorGUI": "", + "m_SupportVFX": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.TangentMaterialSlot", + "m_ObjectId": "48bde6fb29034af19ff1c56fd8eb2bd1", + "m_Id": 0, + "m_DisplayName": "Tangent", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Tangent", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalSpriteUnlitSubTarget", + "m_ObjectId": "4a649f90acf849b7bc78ca7e55107bf2" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "537469aa5b6d40bfa7292c028cd142da", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "58580501e6974de69ca8e94310fdadf2", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "5ba9c35175a24a408cd4895bf02482b8", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -375.1999816894531, + "y": -81.60002899169922, + "width": 130.39996337890626, + "height": 117.60000610351563 + } + }, + "m_Slots": [ + { + "m_Id": "537469aa5b6d40bfa7292c028cd142da" + }, + { + "m_Id": "58580501e6974de69ca8e94310fdadf2" + }, + { + "m_Id": "37fc594725cf4961b50cb096d5aa0d5b" + } + ], + "synonyms": [ + "multiplication", + "times", + "x" + ], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "5e7b58a8e80e45a28e67d06fd1697651", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.BaseColor", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "2fda9f02130f4d6b81a6438ecc642ad6" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.BaseColor" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "63d4bde4b8f04f20b9b99182a11c56ac", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -480.8000183105469, + "y": -17.600019454956056, + "width": 105.60003662109375, + "height": 33.60004425048828 + } + }, + "m_Slots": [ + { + "m_Id": "81ae9aceedd640ad91ae4f9637055ce6" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "093150b2ec4f4628a1ddd1b2ce0ec4b3" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "66f4525945bb4770989a4f4c27f98506", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Normal", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "9140a6e4ea2a46689a69c94a9148ed31" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Normal" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.CategoryData", + "m_ObjectId": "6b1be793778e442cb46b2317ffa89bbc", + "m_Name": "", + "m_ChildObjectList": [ + { + "m_Id": "bb6c7b96ccf74780b552c446ed213030" + }, + { + "m_Id": "093150b2ec4f4628a1ddd1b2ce0ec4b3" + }, + { + "m_Id": "2aff8e3ec7ee4e9e8592b7aaf33d1b0f" + } + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "73f25db8c95f428fa27b4d7b0b17ea56", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "81ae9aceedd640ad91ae4f9637055ce6", + "m_Id": 0, + "m_DisplayName": "Color", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "8c9ed646dde24f88a52c0f46e7a9483a", + "m_Id": 0, + "m_DisplayName": "In", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "In", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "90ece6510cfb4d18bca10a353e49bc36", + "m_Id": 0, + "m_DisplayName": "MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "90f208cba6bb4fc68c988dbca7f288da", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalMaterialSlot", + "m_ObjectId": "9140a6e4ea2a46689a69c94a9148ed31", + "m_Id": 0, + "m_DisplayName": "Normal", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Normal", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "978e4667040842c994575e6bc4cccdde", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Position", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "266261760afe4636804d5151bf7c1663" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Position" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "9e0348bf43ac4bafbf2a622fdba76848", + "m_Id": 1, + "m_DisplayName": "Saturation", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Saturation", + "m_StageCapability": 3, + "m_Value": 1.0, + "m_DefaultValue": 1.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "b8bddf37c6764d24b7fb36abb98e87cf", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.Texture2DShaderProperty", + "m_ObjectId": "bb6c7b96ccf74780b552c446ed213030", + "m_Guid": { + "m_GuidSerialized": "edc91e13-2b94-4407-aa09-19b1f3a2d67f" + }, + "m_Name": "MainTex", + "m_DefaultRefNameVersion": 1, + "m_RefNameGeneratedByDisplayName": "MainTex", + "m_DefaultReferenceName": "_MainTex", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "m_SerializedTexture": "", + "m_Guid": "" + }, + "isMainTexture": false, + "useTilingAndOffset": false, + "m_Modifiable": true, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "bbd6bafcc1fb4989a9bdd5c5443a991e", + "m_Id": 0, + "m_DisplayName": "Saturation", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "d5997510bea24857857d9e83d4892064", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "d6673c90a1b04f41a149f3ca761c0c1a", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "d7d193dbb07f40118726e4e9cb0d7c07", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "e29c93811c194d2b824b0879463f8777", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -186.39993286132813, + "y": -7.200003623962402, + "width": 128.8000030517578, + "height": 33.59999465942383 + } + }, + "m_Slots": [ + { + "m_Id": "bbd6bafcc1fb4989a9bdd5c5443a991e" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "2aff8e3ec7ee4e9e8592b7aaf33d1b0f" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "f379acf84bfb4a7aae06b972f9be6af7", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -707.7999877929688, + "y": -81.40000915527344, + "width": 208.0, + "height": 430.3999938964844 + } + }, + "m_Slots": [ + { + "m_Id": "d6673c90a1b04f41a149f3ca761c0c1a" + }, + { + "m_Id": "b8bddf37c6764d24b7fb36abb98e87cf" + }, + { + "m_Id": "f95324d8e2854f529a3ce5f1841da02e" + }, + { + "m_Id": "d7d193dbb07f40118726e4e9cb0d7c07" + }, + { + "m_Id": "d5997510bea24857857d9e83d4892064" + }, + { + "m_Id": "90f208cba6bb4fc68c988dbca7f288da" + }, + { + "m_Id": "73f25db8c95f428fa27b4d7b0b17ea56" + }, + { + "m_Id": "1033ca88d85845bc8a2d0a5441d6173a" + } + ], + "synonyms": [ + "tex2d" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "f3a895ae8fd74e19b23cf75fbbb39cf2", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "f3e77a1ca56d4f46bbd6dd483005f114", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.Alpha", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "f633ceea3a8046ffacc5b7ac0d51bb2a" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Alpha" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "f633ceea3a8046ffacc5b7ac0d51bb2a", + "m_Id": 0, + "m_DisplayName": "Alpha", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 2, + "m_Value": 1.0, + "m_DefaultValue": 1.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "f748a7e8bad442ce99b3705f56f14432", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -903.2000122070313, + "y": -118.39999389648438, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "90ece6510cfb4d18bca10a353e49bc36" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "bb6c7b96ccf74780b552c446ed213030" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "f95324d8e2854f529a3ce5f1841da02e", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "fad59224b79045ad869132c73977edfc", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Tangent", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "48bde6fb29034af19ff1c56fd8eb2bd1" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Tangent" +} + diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/089_SpriteColorShader.shadergraph.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/089_SpriteColorShader.shadergraph.meta new file mode 100644 index 00000000000..833d454239e --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/089_SpriteColorShader.shadergraph.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 282e7d68bb3909e4198ef948bc86d2dc +ScriptedImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 2 + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 11500000, guid: 625f186215c104763be7675aa2d941aa, type: 3} diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/ColorAnimator.controller b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/ColorAnimator.controller new file mode 100644 index 00000000000..8fa876a0360 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/ColorAnimator.controller @@ -0,0 +1,72 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1102 &-8679366818469530666 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: an_AnimateColor + m_Speed: 1 + m_CycleOffset: 0 + m_Transitions: [] + m_StateMachineBehaviours: [] + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 1 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: 7400000, guid: 7130a504cae017b42a3a4af2ebb92f66, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: +--- !u!91 &9100000 +AnimatorController: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: ColorAnimator + serializedVersion: 5 + m_AnimatorParameters: [] + m_AnimatorLayers: + - serializedVersion: 5 + m_Name: Base Layer + m_StateMachine: {fileID: 2721591129455144555} + m_Mask: {fileID: 0} + m_Motions: [] + m_Behaviours: [] + m_BlendingMode: 0 + m_SyncedLayerIndex: -1 + m_DefaultWeight: 0 + m_IKPass: 0 + m_SyncedLayerAffectsTiming: 0 + m_Controller: {fileID: 9100000} +--- !u!1107 &2721591129455144555 +AnimatorStateMachine: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Base Layer + m_ChildStates: + - serializedVersion: 1 + m_State: {fileID: -8679366818469530666} + m_Position: {x: 30, y: 230, z: 0} + m_ChildStateMachines: [] + m_AnyStateTransitions: [] + m_EntryTransitions: [] + m_StateMachineTransitions: {} + m_StateMachineBehaviours: [] + m_AnyStatePosition: {x: 50, y: 20, z: 0} + m_EntryPosition: {x: 50, y: 120, z: 0} + m_ExitPosition: {x: 800, y: 120, z: 0} + m_ParentStateMachinePosition: {x: 800, y: 20, z: 0} + m_DefaultState: {fileID: -8679366818469530666} diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/ColorAnimator.controller.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/ColorAnimator.controller.meta new file mode 100644 index 00000000000..5f67d18275c --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/ColorAnimator.controller.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3ff3a8d67a7dacd4f910c6fcf6f59c32 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 9100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/SetMaterialPropertyBlockOnAwake.cs b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/SetMaterialPropertyBlockOnAwake.cs new file mode 100644 index 00000000000..5707048cca6 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/SetMaterialPropertyBlockOnAwake.cs @@ -0,0 +1,25 @@ +using UnityEngine; + +public class SetMaterialPropertyBlockOnAwake : MonoBehaviour +{ + private static readonly int ColorPropId = Shader.PropertyToID("_Color"); + private static readonly int SaturationPropId = Shader.PropertyToID("_Saturation"); + + [SerializeField] private SpriteRenderer spriteRenderer; + [SerializeField] private Color color; + [SerializeField] private float saturation; + + [SerializeField] private bool overwriteColor; + [SerializeField] private bool overwriteSaturation; + + private MaterialPropertyBlock _props; + + public void Awake() + { + _props ??= new MaterialPropertyBlock(); + spriteRenderer.GetPropertyBlock(_props); + if (overwriteColor) _props.SetColor(ColorPropId, color); + if (overwriteSaturation) _props.SetFloat(SaturationPropId, saturation); + spriteRenderer.SetPropertyBlock(_props); + } +} \ No newline at end of file diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/SetMaterialPropertyBlockOnAwake.cs.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/SetMaterialPropertyBlockOnAwake.cs.meta new file mode 100644 index 00000000000..833b82535fc --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/SetMaterialPropertyBlockOnAwake.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 12866226dbc174b4e91bd7b00c3703d0 \ No newline at end of file diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/an_AnimateColor.anim b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/an_AnimateColor.anim new file mode 100644 index 00000000000..7a55be11255 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/an_AnimateColor.anim @@ -0,0 +1,222 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!74 &7400000 +AnimationClip: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: an_AnimateColor + serializedVersion: 7 + m_Legacy: 0 + m_Compressed: 0 + m_UseHighQualityCurve: 1 + m_RotationCurves: [] + m_CompressedRotationCurves: [] + m_EulerCurves: [] + m_PositionCurves: + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: {x: 0, y: 0, z: 0} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 0.6 + value: {x: -0.02, y: 0, z: 0} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 1.4 + value: {x: 0.02, y: 0, z: 0} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 2 + value: {x: 0, y: 0, z: 0} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + path: + m_ScaleCurves: [] + m_FloatCurves: + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0.2 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 3.6 + value: 0.2 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_Color.a + path: + classID: 212 + script: {fileID: 0} + flags: 0 + m_PPtrCurves: [] + m_SampleRate: 5 + m_WrapMode: 0 + m_Bounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 0, y: 0, z: 0} + m_ClipBindingConstant: + genericBindings: + - serializedVersion: 2 + path: 0 + attribute: 1 + script: {fileID: 0} + typeID: 4 + customType: 0 + isPPtrCurve: 0 + isIntCurve: 0 + isSerializeReferenceCurve: 0 + - serializedVersion: 2 + path: 0 + attribute: 304273561 + script: {fileID: 0} + typeID: 212 + customType: 0 + isPPtrCurve: 0 + isIntCurve: 0 + isSerializeReferenceCurve: 0 + pptrCurveMapping: [] + m_AnimationClipSettings: + serializedVersion: 2 + m_AdditiveReferencePoseClip: {fileID: 0} + m_AdditiveReferencePoseTime: 0 + m_StartTime: 0 + m_StopTime: 3.6 + m_OrientationOffsetY: 0 + m_Level: 0 + m_CycleOffset: 0 + m_HasAdditiveReferencePose: 0 + m_LoopTime: 0 + m_LoopBlend: 0 + m_LoopBlendOrientation: 0 + m_LoopBlendPositionY: 0 + m_LoopBlendPositionXZ: 0 + m_KeepOriginalOrientation: 0 + m_KeepOriginalPositionY: 1 + m_KeepOriginalPositionXZ: 0 + m_HeightFromFeet: 0 + m_Mirror: 0 + m_EditorCurves: + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0.2 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 3.6 + value: 0.2 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_Color.a + path: + classID: 212 + script: {fileID: 0} + flags: 0 + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.6 + value: -0.02 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1.4 + value: 0.02 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 2 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalPosition.x + path: + classID: 4 + script: {fileID: 0} + flags: 0 + m_EulerEditorCurves: [] + m_HasGenericRootTransform: 1 + m_HasMotionFloatCurves: 0 + m_Events: [] diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/an_AnimateColor.anim.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/an_AnimateColor.anim.meta new file mode 100644 index 00000000000..fcf7f87b6f7 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/an_AnimateColor.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7130a504cae017b42a3a4af2ebb92f66 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/an_Idle.anim b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/an_Idle.anim new file mode 100644 index 00000000000..2f681ba85dd --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/an_Idle.anim @@ -0,0 +1,53 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!74 &7400000 +AnimationClip: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: an_Idle + serializedVersion: 7 + m_Legacy: 0 + m_Compressed: 0 + m_UseHighQualityCurve: 1 + m_RotationCurves: [] + m_CompressedRotationCurves: [] + m_EulerCurves: [] + m_PositionCurves: [] + m_ScaleCurves: [] + m_FloatCurves: [] + m_PPtrCurves: [] + m_SampleRate: 10 + m_WrapMode: 0 + m_Bounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 0, y: 0, z: 0} + m_ClipBindingConstant: + genericBindings: [] + pptrCurveMapping: [] + m_AnimationClipSettings: + serializedVersion: 2 + m_AdditiveReferencePoseClip: {fileID: 0} + m_AdditiveReferencePoseTime: 0 + m_StartTime: 0 + m_StopTime: 1 + m_OrientationOffsetY: 0 + m_Level: 0 + m_CycleOffset: 0 + m_HasAdditiveReferencePose: 0 + m_LoopTime: 0 + m_LoopBlend: 0 + m_LoopBlendOrientation: 0 + m_LoopBlendPositionY: 0 + m_LoopBlendPositionXZ: 0 + m_KeepOriginalOrientation: 0 + m_KeepOriginalPositionY: 1 + m_KeepOriginalPositionXZ: 0 + m_HeightFromFeet: 0 + m_Mirror: 0 + m_EditorCurves: [] + m_EulerEditorCurves: [] + m_HasGenericRootTransform: 0 + m_HasMotionFloatCurves: 0 + m_Events: [] diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/an_Idle.anim.meta b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/an_Idle.anim.meta new file mode 100644 index 00000000000..e09b5703954 --- /dev/null +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Scenes/089_Sprite_MBP_Animation/an_Idle.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 44e8b307bf3d79a488f5bc25b4ece03d +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Test/Runtime/Renderer2DTests.cs b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Test/Runtime/Renderer2DTests.cs index dc9d06d192e..ad3a465152a 100644 --- a/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Test/Runtime/Renderer2DTests.cs +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_2D/Assets/Test/Runtime/Renderer2DTests.cs @@ -1,5 +1,6 @@ using NUnit.Framework; using UnityEngine; +using UnityEngine.TestTools; using UnityEngine.Rendering.Universal; [TestFixture] @@ -73,6 +74,7 @@ public void BaseRendererCreatesRenderTexturesIfStackIsNotEmpty() } [Test] + [UnityPlatform(exclude = new RuntimePlatform[] { RuntimePlatform.WindowsPlayer })] // Unstable: https://jira.unity3d.com/browse/UUM-112466 public void BaseRendererUsesSeparateDepthAttachmentFromColorTextureIfNoDepthStencilRequested() { m_BaseCameraData.renderPostProcessing = true; // This will make the renderer create color texture. @@ -101,6 +103,7 @@ public void OverlayRendererUsesRenderTexturesFromBase() } [Test] + [UnityPlatform(exclude = new RuntimePlatform[] { RuntimePlatform.WindowsPlayer })] // Unstable: https://jira.unity3d.com/browse/UUM-112466 public void OverlayRendererSetsTheCreateTextureFlags() { m_BaseCameraData.cameraStack.Add(m_OverlayCamera); @@ -129,6 +132,7 @@ public void PixelPerfectCameraZeroScale() } [Test] + [UnityPlatform(exclude = new RuntimePlatform[] { RuntimePlatform.WindowsPlayer })] // Unstable on StandaloneWindows64: https://jira.unity3d.com/browse/UUM-112466 public void PostProcessingEnabled_OverlayCamera() { m_BaseCameraData.cameraStack.Add(m_OverlayCamera); @@ -140,6 +144,7 @@ public void PostProcessingEnabled_OverlayCamera() [Test] + [UnityPlatform(exclude = new RuntimePlatform[] { RuntimePlatform.WindowsPlayer })] // Unstable on StandaloneWindows64: https://jira.unity3d.com/browse/UUM-112466 public void PostProcessingEnabled_BaseCamera() { m_BaseCameraData.cameraStack.Add(m_OverlayCamera); @@ -150,6 +155,7 @@ public void PostProcessingEnabled_BaseCamera() } [Test] + [UnityPlatform(exclude = new RuntimePlatform[] { RuntimePlatform.WindowsPlayer })] // Unstable on StandaloneWindows64: https://jira.unity3d.com/browse/UUM-112466 public void PostProcessingEnabled_BaseAndOverlayCamera() { m_BaseCameraData.cameraStack.Add(m_OverlayCamera); diff --git a/Tests/SRPTests/Projects/UniversalGraphicsTest_Terrain/Assets/Test/TestFilters/TestCaseFilters.asset b/Tests/SRPTests/Projects/UniversalGraphicsTest_Terrain/Assets/Test/TestFilters/TestCaseFilters.asset index 18e53a76fc6..3d6fa0cf2b3 100644 --- a/Tests/SRPTests/Projects/UniversalGraphicsTest_Terrain/Assets/Test/TestFilters/TestCaseFilters.asset +++ b/Tests/SRPTests/Projects/UniversalGraphicsTest_Terrain/Assets/Test/TestFilters/TestCaseFilters.asset @@ -98,3 +98,37 @@ MonoBehaviour: XrSdk: StereoModes: 0 Reason: https://jira.unity3d.com/browse/UUM-102120 + - FilteredScene: {fileID: 0} + FilteredScenes: + - {fileID: 102900000, guid: fa7b4e9f812398d41bdc005faebd62aa, type: 3} + ColorSpace: -1 + BuildPlatform: 19 + GraphicsDevice: 4 + Architecture: 0 + XrSdk: + StereoModes: 0 + Reason: https://jira.unity3d.com/browse/UUM-111248 + - FilteredScene: {fileID: 0} + FilteredScenes: + - {fileID: 102900000, guid: 770b86964e87d47e4bdbafa425ccd238, type: 3} + ColorSpace: -1 + BuildPlatform: 19 + GraphicsDevice: 4 + Architecture: 0 + XrSdk: + StereoModes: 0 + Reason: https://jira.unity3d.com/browse/UUM-111248 + - FilteredScene: {fileID: 0} + FilteredScenes: + - {fileID: 102900000, guid: f04023880f698465dab01fc276e5541c, type: 3} + - {fileID: 102900000, guid: cbda6333127961642bd444e8344550fe, type: 3} + - {fileID: 102900000, guid: 544f4eb2d29560146b7625a3acb0e76e, type: 3} + - {fileID: 102900000, guid: e5246ff105a819940a71fba92909923c, type: 3} + - {fileID: 102900000, guid: ec7c1932ee8b54145af7ccf4c01f7c9f, type: 3} + ColorSpace: -1 + BuildPlatform: 19 + GraphicsDevice: 4 + Architecture: 0 + XrSdk: + StereoModes: 0 + Reason: https://jira.unity3d.com/browse/UUM-111248