From d8819b6461dda786e6924d83471ec6a4b4935a77 Mon Sep 17 00:00:00 2001 From: Lewis Jordan Date: Tue, 20 Apr 2021 21:48:44 +0100 Subject: [PATCH 1/8] Added 11.x/2021.1 to the package version/unity version list (#4066) --- .../Documentation~/System-Requirements.md | 1 + .../Documentation~/System-Requirements.md | 2 ++ 2 files changed, 3 insertions(+) diff --git a/com.unity.render-pipelines.high-definition/Documentation~/System-Requirements.md b/com.unity.render-pipelines.high-definition/Documentation~/System-Requirements.md index 1f90455530b..3034e141573 100644 --- a/com.unity.render-pipelines.high-definition/Documentation~/System-Requirements.md +++ b/com.unity.render-pipelines.high-definition/Documentation~/System-Requirements.md @@ -8,6 +8,7 @@ The following table shows the compatibility of the High Definition Render Pipeli | **Package version** | **Minimum Unity version** | **Maximum Unity version** | | ------------------- | ------------------------- | ------------------------- | +| 11.x | 2021.1 | 2021.1 | | 10.x | 2020.2 | 2020.2 | | 8.x / 9.x-preview | 2020.1 | 2020.1 | | 7.x | 2019.3 | 2019.4 | diff --git a/com.unity.visualeffectgraph/Documentation~/System-Requirements.md b/com.unity.visualeffectgraph/Documentation~/System-Requirements.md index 6e1ebabf5c3..f88b2909f5e 100644 --- a/com.unity.visualeffectgraph/Documentation~/System-Requirements.md +++ b/com.unity.visualeffectgraph/Documentation~/System-Requirements.md @@ -8,6 +8,7 @@ The following table shows the compatibility of the Visual Effect Graph versions | **Package version** | **Minimum Unity version** | **Maximum Unity version** | | ------------------- | ------------------------- | ------------------------- | +| 11.x | 2021.1 | 2021.1 | | 10.x | 2020.2 | 2020.2 | | 8.x / 9.x-preview | 2020.1 | 2020.1 | | 7.x | 2019.3 | 2019.4 | @@ -19,6 +20,7 @@ The Visual Effect Graph varies in compatibility between the High Definition Rend | **Package version** | **HDRP** | **URP** | | ------------------- | -------------- | ------------- | +| 11.x | Out of preview | In preview | | 10.x | Out of preview | In preview | | 8.x / 9.x-preview | Out of preview | In preview | | 7.x | Out of preview | In preview | From b4c729164f3ce2a04c4a04bd8f1befc474011344 Mon Sep 17 00:00:00 2001 From: Emmanuel Turquin Date: Wed, 21 Apr 2021 22:42:57 +0200 Subject: [PATCH 2/8] [HDRP][Ray Tracing] Only meshes with HDRP materials are added to the acceleration structure #4091 --- .../CHANGELOG.md | 1 + .../Raytracing/HDRaytracingManager.cs | 39 ++++++++++++++++++- 2 files changed, 38 insertions(+), 2 deletions(-) diff --git a/com.unity.render-pipelines.high-definition/CHANGELOG.md b/com.unity.render-pipelines.high-definition/CHANGELOG.md index fa4523fb432..5c5041d57f4 100644 --- a/com.unity.render-pipelines.high-definition/CHANGELOG.md +++ b/com.unity.render-pipelines.high-definition/CHANGELOG.md @@ -189,6 +189,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. - The default LookDev volume profile is now copied and referened in the Asset folder instead of the package folder. - Changed normal used in path tracing to create a local light list from the geometric to the smooth shading one. - Assets going through the migration system are now dirtied. +- Changed ray tracing acceleration structure build, so that only meshes with HDRP materials are included (case 1322365). ## [10.3.0] - 2020-12-01 diff --git a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/HDRaytracingManager.cs b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/HDRaytracingManager.cs index 53086afc0b8..3b85c6a0004 100644 --- a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/HDRaytracingManager.cs +++ b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/HDRaytracingManager.cs @@ -76,6 +76,7 @@ public partial class HDRenderPipeline bool[] subMeshTransparentArray = new bool[maxNumSubMeshes]; ReflectionProbe reflectionProbe = new ReflectionProbe(); List materialArray = new List(maxNumSubMeshes); + Dictionary m_ShaderValidityCache = new Dictionary(); // Used to detect material and transform changes for Path Tracing Dictionary m_MaterialCRCs = new Dictionary(); @@ -116,6 +117,40 @@ internal void ReleaseRayTracingManager() m_DiffuseDenoiser.Release(); } + bool IsValidRayTracedMaterial(Material currentMaterial) + { + if (currentMaterial == null || currentMaterial.shader == null) + return false; + + bool isValid; + + // We use a cache, to speed up the case where materials/shaders are reused many times + int shaderId = currentMaterial.shader.GetInstanceID(); + if (m_ShaderValidityCache.TryGetValue(shaderId, out isValid)) + return isValid; + + // For the time being, we only consider non-decal HDRP materials as valid + isValid = currentMaterial.GetTag("RenderPipeline", false) == "HDRenderPipeline" && !DecalSystem.IsDecalMaterial(currentMaterial); + + m_ShaderValidityCache.Add(shaderId, isValid); + + return isValid; + } + + static bool IsTransparentMaterial(Material currentMaterial) + { + return currentMaterial.IsKeywordEnabled("_SURFACE_TYPE_TRANSPARENT") + || (HDRenderQueue.k_RenderQueue_Transparent.lowerBound <= currentMaterial.renderQueue + && HDRenderQueue.k_RenderQueue_Transparent.upperBound >= currentMaterial.renderQueue); + } + + static bool IsAlphaTestedMaterial(Material currentMaterial) + { + return currentMaterial.IsKeywordEnabled("_ALPHATEST_ON") + || (HDRenderQueue.k_RenderQueue_OpaqueAlphaTest.lowerBound <= currentMaterial.renderQueue + && HDRenderQueue.k_RenderQueue_OpaqueAlphaTest.upperBound >= currentMaterial.renderQueue); + } + AccelerationStructureStatus AddInstanceToRAS(Renderer currentRenderer, bool rayTracedShadow, bool aoEnabled, int aoLayerValue, @@ -172,8 +207,8 @@ AccelerationStructureStatus AddInstanceToRAS(Renderer currentRenderer, // Grab the material for the current sub-mesh Material currentMaterial = materialArray[meshIdx]; - // Make sure that the material is both non-null and non-decal - if (currentMaterial != null && !DecalSystem.IsDecalMaterial(currentMaterial)) + // Make sure that the material is HDRP's and non-decal + if (IsValidRayTracedMaterial(currentMaterial)) { // Mesh is valid given that all requirements are ok validMesh = true; From 9cfbeb3233d081e05f27046e21f2d7b56312e493 Mon Sep 17 00:00:00 2001 From: Adrien de Tocqueville Date: Fri, 9 Apr 2021 19:53:52 +0200 Subject: [PATCH 3/8] Update refraction documentation (#4101) --- .../ShaderLibrary/Refraction.hlsl | 2 +- .../Documentation~/Refraction-in-HDRP.md | 12 ++++++------ .../Editor/Material/UIBlocks/RefractionUIBlock.cs | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/com.unity.render-pipelines.core/ShaderLibrary/Refraction.hlsl b/com.unity.render-pipelines.core/ShaderLibrary/Refraction.hlsl index 5ad1d16ee23..66059e3af34 100644 --- a/com.unity.render-pipelines.core/ShaderLibrary/Refraction.hlsl +++ b/com.unity.render-pipelines.core/ShaderLibrary/Refraction.hlsl @@ -17,7 +17,7 @@ RefractionModelResult RefractionModelSphere(real3 V, float3 positionWS, real3 no // Sphere shape model: // We approximate locally the shape of the object as sphere, that is tangent to the shape. // The sphere has a diameter of {thickness} - // The center of the sphere is at {positionWS} - {normalWS} * {thickness} + // The center of the sphere is at {positionWS} - {normalWS} * {thickness} * 0.5 // // So the light is refracted twice: in and out of the tangent sphere diff --git a/com.unity.render-pipelines.high-definition/Documentation~/Refraction-in-HDRP.md b/com.unity.render-pipelines.high-definition/Documentation~/Refraction-in-HDRP.md index ef8b4b3c7a0..7c3a9756c46 100644 --- a/com.unity.render-pipelines.high-definition/Documentation~/Refraction-in-HDRP.md +++ b/com.unity.render-pipelines.high-definition/Documentation~/Refraction-in-HDRP.md @@ -58,7 +58,7 @@ This means that, if screen space refraction does not return information for a pi The first tier of the refraction hierarchy is a screen space solution. To calculate screen space refraction, the algorithm traces a ray starting from the refractive object. It then refracts the ray according to the properties of the material. To compute the refracted ray, the algorithm assumes that the refractive object can be approximated as a simple shape ([Refraction Model](#RefractionModel)) . -The refracted ray will be then intersected against the proxy volume to find the right pixel in screen space that best approximates the result of the refracted ray. +The refracted ray will be then intersected against the closest probe proxy volume to find the pixel in screen space that best approximates the result of the refracted ray. If there is no reflection probe proxy available, HDRP will fallback to a projection at infinite. @@ -82,15 +82,15 @@ For more information on Reflection Probes, see: HDRP uses simple shapes to approximate the surface of GameObjects: - **Sphere**: Approximates the surface as a sphere. -- **Box**: Approximates the surface as an hollow box. In this case think of the thickness as being the distance between two parallel faces of the box. -- **Thin**: Approximated the surface as a box with a fixed thickness of 5cm. +- **Box**: Approximates the surface as a hollow box. In this case think of the thickness as being the distance between two parallel faces of the box. +- **Thin**: Approximates the surface as a hollow box with a fixed thickness of 5cm. ### Examples -- For a filled GameObject, use a **Sphere** Refraction Model with a thickness that is approximately the size of the GameObject that the Material is for. To set the thickness, use the **Refraction Thickness**. +- For a solid GameObject, use the **Sphere** Refraction Model with a thickness that is approximately the size of the GameObject that the Material is for. To set the thickness, use the **Refraction Thickness**. ![](Images/RefractionInHDRP1.png) -- For a hollow refractive GameObject (for example, a bubble), use a **Box** refraction Mode with a small value for thickness. To set the thickness, use the **Refraction Thickness**. +- For a hollow refractive GameObject (for example, a bubble), use the **Thin** refraction Model, or **Box** with a small thickness value. To set the thickness, use the **Refraction Thickness**. -![](Images/RefractionInHDRP2.png) + ![](Images/RefractionInHDRP2.png) diff --git a/com.unity.render-pipelines.high-definition/Editor/Material/UIBlocks/RefractionUIBlock.cs b/com.unity.render-pipelines.high-definition/Editor/Material/UIBlocks/RefractionUIBlock.cs index 8b78290fc5d..36d42d39dc8 100644 --- a/com.unity.render-pipelines.high-definition/Editor/Material/UIBlocks/RefractionUIBlock.cs +++ b/com.unity.render-pipelines.high-definition/Editor/Material/UIBlocks/RefractionUIBlock.cs @@ -19,7 +19,7 @@ internal static class Styles { public static string refractionModelText = "Refraction Model"; public static GUIContent refractionIorText = new GUIContent("Index Of Refraction", "Controls the index of refraction for this Material."); - public static GUIContent refractionThicknessText = new GUIContent("Thickness", "Controls the thickness for rough refraction."); + public static GUIContent refractionThicknessText = new GUIContent("Thickness", "Controls the thickness for rough refraction.\nFor a Sphere model, this is the diameter of the sphere."); public static GUIContent refractionThicknessMapText = new GUIContent("Thickness Map", "Specifies the Refraction Thickness Map (R) for this Material - This acts as a thickness multiplier map."); public static GUIContent refractionThicknessRemappingText = new GUIContent("Thickness Remapping", "Controls the maximum thickness for rough refraction."); public static GUIContent thicknessMapText = new GUIContent("Thickness Map", "Specifies the Thickness Map (R) for this Material - This map describes the thickness of the object. When subsurface scattering is enabled, low values allow some light to transmit through the object."); From d56bdad36453e8f42e932809555b9b6f302f9db7 Mon Sep 17 00:00:00 2001 From: FrancescoC-unity <43168857+FrancescoC-unity@users.noreply.github.com> Date: Wed, 21 Apr 2021 08:47:55 +0200 Subject: [PATCH 4/8] Fix issue with OnDemand shadows assert getting incorrectly triggered #4121 --- com.unity.render-pipelines.high-definition/CHANGELOG.md | 1 + .../Runtime/Lighting/Shadow/HDCachedShadowAtlas.cs | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/com.unity.render-pipelines.high-definition/CHANGELOG.md b/com.unity.render-pipelines.high-definition/CHANGELOG.md index 5c5041d57f4..ac451902081 100644 --- a/com.unity.render-pipelines.high-definition/CHANGELOG.md +++ b/com.unity.render-pipelines.high-definition/CHANGELOG.md @@ -154,6 +154,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. - Fixed a bug with Reflection Probe baking would result in an incorrect baking reusing other's Reflection Probe baking - Fixed volumetric fog being visually chopped or missing when using hardware Dynamic Resolution Scaling. - Fixed generation of the packed depth pyramid when hardware Dynamic Resolution Scaling is enabled. +- Fixed issue with an assert getting triggered with OnDemand shadows. ### Changed - Removed the material pass probe volumes evaluation mode. diff --git a/com.unity.render-pipelines.high-definition/Runtime/Lighting/Shadow/HDCachedShadowAtlas.cs b/com.unity.render-pipelines.high-definition/Runtime/Lighting/Shadow/HDCachedShadowAtlas.cs index 5c968626fd5..7f0f139e7f3 100644 --- a/com.unity.render-pipelines.high-definition/Runtime/Lighting/Shadow/HDCachedShadowAtlas.cs +++ b/com.unity.render-pipelines.high-definition/Runtime/Lighting/Shadow/HDCachedShadowAtlas.cs @@ -618,7 +618,8 @@ internal void MarkAsRendered(int shadowIdx) if (m_ShadowsPendingRendering.ContainsKey(shadowIdx)) { m_ShadowsPendingRendering.Remove(shadowIdx); - m_ShadowsWithValidData.Add(shadowIdx, shadowIdx); + if (!m_ShadowsWithValidData.ContainsKey(shadowIdx)) + m_ShadowsWithValidData.Add(shadowIdx, shadowIdx); } } From 8ed442339b7f911f6bcd15215bc4f6ea5fe1659f Mon Sep 17 00:00:00 2001 From: Antoine Lelievre Date: Tue, 20 Apr 2021 23:29:06 +0200 Subject: [PATCH 5/8] Changed default HDRP post process shader name to match C# volume name (#4125) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Hd/fix 1299116 tesselation cull (#3057) * Fixed Render Graph immediate mode. (#3033) Co-authored-by: Sebastien Lagarde * Fix issue with shadow mask and area lights (#3019) * Not checking NdotL since it's not really valid for area lights (We have multiple valid light directions, not one) * Changelog Co-authored-by: sebastienlagarde * Fix issue with capture callback (now includes post processing results) (#3035) Co-authored-by: sebastienlagarde * [HDRP] Fix decal draw order for ShaderGraph decal materials (#3018) * Fixed ShaderGraph decal draw order * Updated changelog Co-authored-by: sebastienlagarde * Fixed various Look Dev issues after exiting Playmode (#2956) * Fixed access to invalid Contexts references after exiting playmode. * Fixed comparison gizmo after playmode. * Fixes from PR feedback * StackLit: Fix SG surface option property block to only display energy conserving specular color option for the specular input parametrization (similar to case 1257050) (#3060) * Fixed missing BeginCameraRendering call for custom render mode of a Camera (#3063) * Implement custom drawer for layer mask parameters (#3066) * Adding mixed light baking shadowmask test (#3052) * adding a shadow mask test * Update reference images * Fixing hull constant shader's tesselation cull algorithm. Before it was comparing edges being out of the frustum. This is wrong because the camera could be inside a triangle, in which case the edges could be out of at least 1 frustum plane. Correct fix is to check all three vertices if they are out of at least 1 plane. Result packed tightly into the functions w return component. * Renamed to a new function so we keep backwards compatibility. Restored the shadow shader pass path, accidentally changed it to bool4 and use near plane. * Fixing type back to bool, instead of bool4 * Merging changelog information from rebase. * Making sure scene declaration pass is a bool4 * Adding new test for tesselation culling, with a weird camera angle which fails previous setup. * Fixing formatting of code, rearranging order of test in editor build settings. * Adding reference images for test. * Missing meta file for new tests * Fix bad merge issue * fix bad merge issue * fix bad merge issue Co-authored-by: JulienIgnace-Unity Co-authored-by: Sebastien Lagarde Co-authored-by: FrancescoC-unity <43168857+FrancescoC-unity@users.noreply.github.com> Co-authored-by: Pavlos Mavridis Co-authored-by: Antoine Lelievre Co-authored-by: slunity <37302815+slunity@users.noreply.github.com> Co-authored-by: Adrien de Tocqueville Co-authored-by: Rémi Chapelain <57442369+remi-chapelain@users.noreply.github.com> * Change the source value for the ray tracing frame index iterator from m_FrameCount to the camera frame count (case 1301356). (#3032) Co-authored-by: sebastienlagarde * [HDRP] Added a RenderGraph pass that resets the camera size after the dynamic res upscale (#3070) * Added a RenderGraph pass that resets the camera size after the dynamic res upscale * Updated changelog # Conflicts: # com.unity.render-pipelines.high-definition/CHANGELOG.md * fixed class name * update class name * PR fix * Fixed RTHandle scale Co-authored-by: sebastienlagarde * Fix Light Intensity UI Prefab Override Application (1299563) (#3061) * Fixed Render Graph immediate mode. (#3033) Co-authored-by: Sebastien Lagarde * Fix issue with shadow mask and area lights (#3019) * Not checking NdotL since it's not really valid for area lights (We have multiple valid light directions, not one) * Changelog Co-authored-by: sebastienlagarde * Fix issue with capture callback (now includes post processing results) (#3035) Co-authored-by: sebastienlagarde * [HDRP] Fix decal draw order for ShaderGraph decal materials (#3018) * Fixed ShaderGraph decal draw order * Updated changelog Co-authored-by: sebastienlagarde * Fixed various Look Dev issues after exiting Playmode (#2956) * Fixed access to invalid Contexts references after exiting playmode. * Fixed comparison gizmo after playmode. * Fixes from PR feedback * Apply the fix * Changelog * Mofified approach to the fix, this time also fixing override saving of light unit * Use more precise rect line offset calculation * Update CHANGELOG.md Co-authored-by: JulienIgnace-Unity Co-authored-by: Sebastien Lagarde Co-authored-by: FrancescoC-unity <43168857+FrancescoC-unity@users.noreply.github.com> Co-authored-by: Pavlos Mavridis Co-authored-by: Antoine Lelievre * Fix Undo/Redo Stability for Light Temperature (1304176, 1301076) (#3079) * Fixed Render Graph immediate mode. (#3033) Co-authored-by: Sebastien Lagarde * Fix issue with shadow mask and area lights (#3019) * Not checking NdotL since it's not really valid for area lights (We have multiple valid light directions, not one) * Changelog Co-authored-by: sebastienlagarde * Fix issue with capture callback (now includes post processing results) (#3035) Co-authored-by: sebastienlagarde * [HDRP] Fix decal draw order for ShaderGraph decal materials (#3018) * Fixed ShaderGraph decal draw order * Updated changelog Co-authored-by: sebastienlagarde * Fixed various Look Dev issues after exiting Playmode (#2956) * Fixed access to invalid Contexts references after exiting playmode. * Fixed comparison gizmo after playmode. * Fixes from PR feedback * StackLit: Fix SG surface option property block to only display energy conserving specular color option for the specular input parametrization (similar to case 1257050) (#3060) * Fixed missing BeginCameraRendering call for custom render mode of a Camera (#3063) * Implement custom drawer for layer mask parameters (#3066) * Adding mixed light baking shadowmask test (#3052) * adding a shadow mask test * Update reference images * Apply the fix * Changelog * Update CHANGELOG.md * fix merge issue Co-authored-by: JulienIgnace-Unity Co-authored-by: Sebastien Lagarde Co-authored-by: FrancescoC-unity <43168857+FrancescoC-unity@users.noreply.github.com> Co-authored-by: Pavlos Mavridis Co-authored-by: Antoine Lelievre Co-authored-by: slunity <37302815+slunity@users.noreply.github.com> Co-authored-by: Adrien de Tocqueville Co-authored-by: Rémi Chapelain <57442369+remi-chapelain@users.noreply.github.com> * Fix labels style (#3046) * Fixed Render Graph immediate mode. (#3033) Co-authored-by: Sebastien Lagarde * Fix issue with shadow mask and area lights (#3019) * Not checking NdotL since it's not really valid for area lights (We have multiple valid light directions, not one) * Changelog Co-authored-by: sebastienlagarde * Fix issue with capture callback (now includes post processing results) (#3035) Co-authored-by: sebastienlagarde * [HDRP] Fix decal draw order for ShaderGraph decal materials (#3018) * Fixed ShaderGraph decal draw order * Updated changelog Co-authored-by: sebastienlagarde * Fixed various Look Dev issues after exiting Playmode (#2956) * Fixed access to invalid Contexts references after exiting playmode. * Fixed comparison gizmo after playmode. * Fixes from PR feedback * Fix labels style * Update CHANGELOG.md Co-authored-by: JulienIgnace-Unity Co-authored-by: Sebastien Lagarde Co-authored-by: FrancescoC-unity <43168857+FrancescoC-unity@users.noreply.github.com> Co-authored-by: Pavlos Mavridis Co-authored-by: Antoine Lelievre * Fixed side effect on styles during compositor rendering. (#3081) * Fixed Render Graph immediate mode. (#3033) Co-authored-by: Sebastien Lagarde * Fix issue with shadow mask and area lights (#3019) * Not checking NdotL since it's not really valid for area lights (We have multiple valid light directions, not one) * Changelog Co-authored-by: sebastienlagarde * Fix issue with capture callback (now includes post processing results) (#3035) Co-authored-by: sebastienlagarde * [HDRP] Fix decal draw order for ShaderGraph decal materials (#3018) * Fixed ShaderGraph decal draw order * Updated changelog Co-authored-by: sebastienlagarde * Fixed various Look Dev issues after exiting Playmode (#2956) * Fixed access to invalid Contexts references after exiting playmode. * Fixed comparison gizmo after playmode. * Fixes from PR feedback * StackLit: Fix SG surface option property block to only display energy conserving specular color option for the specular input parametrization (similar to case 1257050) (#3060) * Fixed missing BeginCameraRendering call for custom render mode of a Camera (#3063) * Implement custom drawer for layer mask parameters (#3066) * Adding mixed light baking shadowmask test (#3052) * adding a shadow mask test * Update reference images * Changed the clamping approach for RTR and RTGI (in both perf and quality) to improve visual quality. (#3020) Co-authored-by: sebastienlagarde * Fixed the condition on temporal accumulation in the reflection denoiser (case 1303504). (#3027) Co-authored-by: sebastienlagarde * Changed the warning message for ray traced area shadows (case 1303410). (#3029) * - Changed the warning message for ray traced area shadows (case 1303410). * Adds approximation information about ray-traced area shadows Co-authored-by: Lewis Jordan Co-authored-by: sebastienlagarde * Fixed side effect on styles during compositor rendering. * Update CHANGELOG.md * fix merge issue Co-authored-by: JulienIgnace-Unity Co-authored-by: Sebastien Lagarde Co-authored-by: FrancescoC-unity <43168857+FrancescoC-unity@users.noreply.github.com> Co-authored-by: Pavlos Mavridis Co-authored-by: Antoine Lelievre Co-authored-by: slunity <37302815+slunity@users.noreply.github.com> Co-authored-by: Rémi Chapelain <57442369+remi-chapelain@users.noreply.github.com> Co-authored-by: anisunity <42026998+anisunity@users.noreply.github.com> Co-authored-by: Lewis Jordan * [HDRP][Compositor] Fix size and spacing of compositor info boxes (#3101) * Fixed Render Graph immediate mode. (#3033) Co-authored-by: Sebastien Lagarde * Fix issue with shadow mask and area lights (#3019) * Not checking NdotL since it's not really valid for area lights (We have multiple valid light directions, not one) * Changelog Co-authored-by: sebastienlagarde * Fix issue with capture callback (now includes post processing results) (#3035) Co-authored-by: sebastienlagarde * [HDRP] Fix decal draw order for ShaderGraph decal materials (#3018) * Fixed ShaderGraph decal draw order * Updated changelog Co-authored-by: sebastienlagarde * Fixed various Look Dev issues after exiting Playmode (#2956) * Fixed access to invalid Contexts references after exiting playmode. * Fixed comparison gizmo after playmode. * Fixes from PR feedback * StackLit: Fix SG surface option property block to only display energy conserving specular color option for the specular input parametrization (similar to case 1257050) (#3060) * Fixed missing BeginCameraRendering call for custom render mode of a Camera (#3063) * Implement custom drawer for layer mask parameters (#3066) * Adding mixed light baking shadowmask test (#3052) * adding a shadow mask test * Update reference images * Changed the clamping approach for RTR and RTGI (in both perf and quality) to improve visual quality. (#3020) Co-authored-by: sebastienlagarde * Fixed the condition on temporal accumulation in the reflection denoiser (case 1303504). (#3027) Co-authored-by: sebastienlagarde * Changed the warning message for ray traced area shadows (case 1303410). (#3029) * - Changed the warning message for ray traced area shadows (case 1303410). * Adds approximation information about ray-traced area shadows Co-authored-by: Lewis Jordan Co-authored-by: sebastienlagarde * Disabled specular occlusion for what we consider medium and larger scale rtao > 1.25 with a 25cm falloff interval. (#3023) Co-authored-by: sebastienlagarde * Removed 2505_Area_Light_ShadowMask_Baking from baking queue (#3087) * Lightmaps / Removed scene from baking queue + meta files * update reference screenshots Co-authored-by: Sebastien Lagarde * Fix size and spacing of compositor info boxes * Fix typo in changelog Co-authored-by: JulienIgnace-Unity Co-authored-by: Sebastien Lagarde Co-authored-by: FrancescoC-unity <43168857+FrancescoC-unity@users.noreply.github.com> Co-authored-by: Antoine Lelievre Co-authored-by: slunity <37302815+slunity@users.noreply.github.com> Co-authored-by: Adrien de Tocqueville Co-authored-by: Rémi Chapelain <57442369+remi-chapelain@users.noreply.github.com> Co-authored-by: anisunity <42026998+anisunity@users.noreply.github.com> Co-authored-by: Lewis Jordan * [HDRP][Compositor] Fix color picker UI glitch in the Graphics Compositor (#3105) * Fixed Render Graph immediate mode. (#3033) Co-authored-by: Sebastien Lagarde * Fix issue with shadow mask and area lights (#3019) * Not checking NdotL since it's not really valid for area lights (We have multiple valid light directions, not one) * Changelog Co-authored-by: sebastienlagarde * Fix issue with capture callback (now includes post processing results) (#3035) Co-authored-by: sebastienlagarde * [HDRP] Fix decal draw order for ShaderGraph decal materials (#3018) * Fixed ShaderGraph decal draw order * Updated changelog Co-authored-by: sebastienlagarde * Fixed various Look Dev issues after exiting Playmode (#2956) * Fixed access to invalid Contexts references after exiting playmode. * Fixed comparison gizmo after playmode. * Fixes from PR feedback * StackLit: Fix SG surface option property block to only display energy conserving specular color option for the specular input parametrization (similar to case 1257050) (#3060) * Fixed missing BeginCameraRendering call for custom render mode of a Camera (#3063) * Implement custom drawer for layer mask parameters (#3066) * Adding mixed light baking shadowmask test (#3052) * adding a shadow mask test * Update reference images * Changed the clamping approach for RTR and RTGI (in both perf and quality) to improve visual quality. (#3020) Co-authored-by: sebastienlagarde * Fixed the condition on temporal accumulation in the reflection denoiser (case 1303504). (#3027) Co-authored-by: sebastienlagarde * Changed the warning message for ray traced area shadows (case 1303410). (#3029) * - Changed the warning message for ray traced area shadows (case 1303410). * Adds approximation information about ray-traced area shadows Co-authored-by: Lewis Jordan Co-authored-by: sebastienlagarde * Disabled specular occlusion for what we consider medium and larger scale rtao > 1.25 with a 25cm falloff interval. (#3023) Co-authored-by: sebastienlagarde * Removed 2505_Area_Light_ShadowMask_Baking from baking queue (#3087) * Lightmaps / Removed scene from baking queue + meta files * update reference screenshots Co-authored-by: Sebastien Lagarde * Removed unused index parameter * Fix box light attenuation (#3056) * Fix box light attenuation * Update screenshots Co-authored-by: sebastienlagarde * Revert "Disabled specular occlusion for what we consider medium and larger scale rtao > 1.25 with a 25cm falloff interval. (#3023)" This reverts commit 55bb6ff781233350ca8f3db747b8593acfbda4a3. * Revert "Revert "Disabled specular occlusion for what we consider medium and larger scale rtao > 1.25 with a 25cm falloff interval. (#3023)"" This reverts commit 57ee23b9177c581f50c8a8ac4e3dfd166646acc7. * Fix default value of _SpecularOcclusionBlend * Fix color picker UI glitch in the Graphics Compositor Co-authored-by: JulienIgnace-Unity Co-authored-by: Sebastien Lagarde Co-authored-by: FrancescoC-unity <43168857+FrancescoC-unity@users.noreply.github.com> Co-authored-by: Antoine Lelievre Co-authored-by: slunity <37302815+slunity@users.noreply.github.com> Co-authored-by: Adrien de Tocqueville Co-authored-by: Rémi Chapelain <57442369+remi-chapelain@users.noreply.github.com> Co-authored-by: anisunity <42026998+anisunity@users.noreply.github.com> Co-authored-by: Lewis Jordan * Fix 1299233 ies resize bug (#3094) * Fixed Render Graph immediate mode. (#3033) Co-authored-by: Sebastien Lagarde * Fix issue with shadow mask and area lights (#3019) * Not checking NdotL since it's not really valid for area lights (We have multiple valid light directions, not one) * Changelog Co-authored-by: sebastienlagarde * Fix issue with capture callback (now includes post processing results) (#3035) Co-authored-by: sebastienlagarde * [HDRP] Fix decal draw order for ShaderGraph decal materials (#3018) * Fixed ShaderGraph decal draw order * Updated changelog Co-authored-by: sebastienlagarde * Fixed various Look Dev issues after exiting Playmode (#2956) * Fixed access to invalid Contexts references after exiting playmode. * Fixed comparison gizmo after playmode. * Fixes from PR feedback * StackLit: Fix SG surface option property block to only display energy conserving specular color option for the specular input parametrization (similar to case 1257050) (#3060) * Fixed missing BeginCameraRendering call for custom render mode of a Camera (#3063) * Implement custom drawer for layer mask parameters (#3066) * Adding mixed light baking shadowmask test (#3052) * adding a shadow mask test * Update reference images * Changed the clamping approach for RTR and RTGI (in both perf and quality) to improve visual quality. (#3020) Co-authored-by: sebastienlagarde * Fixed the condition on temporal accumulation in the reflection denoiser (case 1303504). (#3027) Co-authored-by: sebastienlagarde * Changed the warning message for ray traced area shadows (case 1303410). (#3029) * - Changed the warning message for ray traced area shadows (case 1303410). * Adds approximation information about ray-traced area shadows Co-authored-by: Lewis Jordan Co-authored-by: sebastienlagarde * Disabled specular occlusion for what we consider medium and larger scale rtao > 1.25 with a 25cm falloff interval. (#3023) Co-authored-by: sebastienlagarde * Fix 1299233 ies resize bug * change log * Update CHANGELOG.md * fix merge issue Co-authored-by: JulienIgnace-Unity Co-authored-by: Sebastien Lagarde Co-authored-by: FrancescoC-unity <43168857+FrancescoC-unity@users.noreply.github.com> Co-authored-by: Pavlos Mavridis Co-authored-by: Antoine Lelievre Co-authored-by: slunity <37302815+slunity@users.noreply.github.com> Co-authored-by: Adrien de Tocqueville Co-authored-by: Rémi Chapelain <57442369+remi-chapelain@users.noreply.github.com> Co-authored-by: anisunity <42026998+anisunity@users.noreply.github.com> Co-authored-by: Lewis Jordan * filter for xbone addded (#3116) * [Yamato] Enable cache server for standalone build jobs (#3106) * create standalone_cache jobs * use cache jobs for trunk verification * fix commands so linux can recognise them need to wrap each string around "extra-editor-arg" * Fix undo redo on layered lit editor (#3059) * Fixed Render Graph immediate mode. (#3033) Co-authored-by: Sebastien Lagarde * Fix issue with shadow mask and area lights (#3019) * Not checking NdotL since it's not really valid for area lights (We have multiple valid light directions, not one) * Changelog Co-authored-by: sebastienlagarde * Fix issue with capture callback (now includes post processing results) (#3035) Co-authored-by: sebastienlagarde * [HDRP] Fix decal draw order for ShaderGraph decal materials (#3018) * Fixed ShaderGraph decal draw order * Updated changelog Co-authored-by: sebastienlagarde * Fixed various Look Dev issues after exiting Playmode (#2956) * Fixed access to invalid Contexts references after exiting playmode. * Fixed comparison gizmo after playmode. * Fixes from PR feedback * Fix undo redo on layered lit editor * Update CHANGELOG.md Co-authored-by: JulienIgnace-Unity Co-authored-by: Sebastien Lagarde Co-authored-by: FrancescoC-unity <43168857+FrancescoC-unity@users.noreply.github.com> Co-authored-by: Pavlos Mavridis Co-authored-by: Antoine Lelievre * [HDRP] Added Vulkan install in system requirements (#3122) * Added vulkan install in system requirements * Reworded content Co-authored-by: Lewis Jordan * [HDRP] Fix issue with compositor related custom passes (#3055) * Fixed Render Graph immediate mode. (#3033) Co-authored-by: Sebastien Lagarde * Fix issue with shadow mask and area lights (#3019) * Not checking NdotL since it's not really valid for area lights (We have multiple valid light directions, not one) * Changelog Co-authored-by: sebastienlagarde * Fix issue with capture callback (now includes post processing results) (#3035) Co-authored-by: sebastienlagarde * [HDRP] Fix decal draw order for ShaderGraph decal materials (#3018) * Fixed ShaderGraph decal draw order * Updated changelog Co-authored-by: sebastienlagarde * Fixed various Look Dev issues after exiting Playmode (#2956) * Fixed access to invalid Contexts references after exiting playmode. * Fixed comparison gizmo after playmode. * Fixes from PR feedback * Fix issue with compositor related custom passes still active after disabling the compositor Co-authored-by: JulienIgnace-Unity Co-authored-by: Sebastien Lagarde Co-authored-by: FrancescoC-unity <43168857+FrancescoC-unity@users.noreply.github.com> Co-authored-by: Antoine Lelievre * Fixed some render texture leaks. (#3050) * Fixed Render Graph immediate mode. (#3033) Co-authored-by: Sebastien Lagarde * Fix issue with shadow mask and area lights (#3019) * Not checking NdotL since it's not really valid for area lights (We have multiple valid light directions, not one) * Changelog Co-authored-by: sebastienlagarde * Fix issue with capture callback (now includes post processing results) (#3035) Co-authored-by: sebastienlagarde * [HDRP] Fix decal draw order for ShaderGraph decal materials (#3018) * Fixed ShaderGraph decal draw order * Updated changelog Co-authored-by: sebastienlagarde * Fixed various Look Dev issues after exiting Playmode (#2956) * Fixed access to invalid Contexts references after exiting playmode. * Fixed comparison gizmo after playmode. * Fixes from PR feedback * Fixed a few render texture memory leaks. * Update changelog * Added comment * Update CHANGELOG.md Co-authored-by: Sebastien Lagarde Co-authored-by: FrancescoC-unity <43168857+FrancescoC-unity@users.noreply.github.com> Co-authored-by: Pavlos Mavridis Co-authored-by: Antoine Lelievre * Hd/fix wizard runtime resources (#3123) * Fix runtim resource wizard fix regression * Update CHANGELOG.md Co-authored-by: sebastienlagarde * [HDRP] Fixed lookdev reload bug when viewing a scene object (#3108) * Fixed lookdev reload bug when viewing a scene object * Updated changelog * Re-added lookdev fix Co-authored-by: sebastienlagarde * [HDRP] Fix error in Depth Of Field near radius blur calculation (#3131) * Fix error in Depth Of Field near radius blur calculation * Fix typo Co-authored-by: sebastienlagarde * [HDRP] Fix GC allocs (#3136) * Fix gc alloc errors * Avoid setting the name of an object during render (gc alloc) * Avoid gc allocs (for real this time) * Revert: Fix 1299233 ies resize bug (#3094) * Hide light shadow near plane gizmo when shadows are disabled (#3114) Co-authored-by: sebastienlagarde * Hd/fix backplate globalcubemap2 (#3111) * Removed backplate from rendering of lighting cubemap as it did not really work conceptually and caused artefacts. * Update changelog * Remove useless code * Compilation fix. * Update doc * Update Override-HDRI-Sky.md Co-authored-by: sebastienlagarde * [HDRP][Path Tracing] Added alpha channel to path traced results (#3127) * Added alpha support changes for path tracing in bugfix branch. * Updated changelog and added doc. Co-authored-by: sebastienlagarde * Doc update (#3160) * Fix various shader warnings (#3158) * Histogram and scalarization warnings. * Fix warning in probe * Changelog * Update CHANGELOG.md Co-authored-by: Sebastien Lagarde * Update Override-Screen-Space-GI.md * Fixed shadow matte not working with ambient occlusion when MSAA is en… (#3157) * Fixed shadow matte not working with ambient occlusion when MSAA is enabled * Add MSAA test * update refrence screenshots win dx11 * update DX12 and win vulkan screen * update screenshots for mac * update screen of linux vulkan * Update HDLightUI.cs (#3203) * [HDRP] fix nullref when chaging RP from HDRP to URP (#3191) * Fixed volume atlas release * Updated changelog * fix case 1307653 (#3205) * Fix LookDev env library assignment after leaving playmode. (#3214) * Fixed LookDev environment library assignement after leaving playmode. * Update changelog * Update Hair Shader Preset Documentation (#3208) * Correct the language for hair shader documentation. * Update hair-shader.md * Update hair-shader.md Co-authored-by: sebastienlagarde * [HDRP] Fix locale diffusion profile shader property value in ShaderGraph (#3213) * Fixed diffusion profile shader property float values using the current culture instead of invariant * Updated changelog Co-authored-by: sebastienlagarde * Fix error in the RTHandle scale of Depth Of Field when TAA is enabled (#3182) Co-authored-by: sebastienlagarde * Reset to current quality settings after preprocess build in HDRP (#3218) Co-authored-by: sebastienlagarde * Have bilinear default (#3223) Co-authored-by: Sebastien Lagarde * Update CHANGELOG.md * Added missing character to the layered lit document (#3310) * Fix needs of exposure for debug display "SSR Transparent" (#3308) * Fix needs of exposure for debug display "SSR Transparent" * Add Change Log * [HDRP] Fix GUI exception in material UI (#3315) * Fixed an exception when opening the color picker in a material UI * Updated changelog * [HDRP] Update decal angle fade tooltip (#3322) * Added tooltip in decal fade angle prop * Updated changelog * Mention in TAA doc that a certain use case will lead to problems. (#3317) * Doc update. * Review feedback. * Hide shadow resolution value (#3335) * Bump timer of 2nd runtime test to make it work on all platforms. (#3314) * Bump wait * Bump timer again * Revert "Bump timer again" This reverts commit 6bfc7943a6173025d8d268477e3985b0479e6922. * Fix light frustum planes (#3341) * Project skybox without perspective for ortho cameras (#2955) * [HDRP] Fix coat normal space (#2888) * Fix coat normal space * Update CHANGELOG.md Co-authored-by: Sebastien Lagarde * Avoid issues causing faulty transitions in shadows (resulting in no shadows with unconventional aspect ratio) (#2776) * Fixed volume component tooltips using the same parameter name (#2754) * Use the proper history info for Bicubic resampling in TAA (#2759) * Use proper info for previous buffer info * changelog * Fixed lookdev movement (#2757) Co-authored-by: sebastienlagarde * [HDRP] Fix issue with saving some quality settings in volume overrides (#2758) * Fix issue with saving some quality settings volume overrides * Fix typo in changelog Co-authored-by: sebastienlagarde * [HDRP] Fixed NullReferenceException in HDRenderPipeline.UpgradeResourcesIfNeeded (case 1292524) (#2765) * fix issue with confusing text (#2766) * Fix * Fix white dots * Changelog * Rename the sunrise icon to fix typo, causing issue with 2x resolution loading. (#2809) * [HDRP] Rename HDRP to HD Render Pipeline in menu item (#2819) * [HDRP] Update HDRP menu in shader graph * Update CHANGELOG.md * HDRP/Fix package version showing package after the last "verified" package (#2783) * Fix typo * Remove last version checker from wizard and add link to package manager instead * Update CHANGELOG.md * Update documentation * Update Render-Pipeline-Wizard.md Co-authored-by: Sebastien Lagarde * Revert bad changelog merge * Update CHANGELOG.md * Update CHANGELOG.md Co-authored-by: Adrien de Tocqueville Co-authored-by: sebastienlagarde Co-authored-by: Pavlos Mavridis Co-authored-by: John Parsaie Co-authored-by: Remi Slysz <40034005+RSlysz@users.noreply.github.com> * Fixed invalid loop length for probe baking (case 1289680) (#2830) * Fixed invalid loop length for probe baking (case 1289680) # Conflicts: # com.unity.render-pipelines.high-definition/CHANGELOG.md # Conflicts: # com.unity.render-pipelines.high-definition/CHANGELOG.md * Update CHANGELOG.md Co-authored-by: sebastienlagarde * Fix volumetric fog with XR single-pass (#2823) * fix volumetric fog with XR single-pass rendering * update changelog Co-authored-by: sebastienlagarde * [HDRP] Fix rendering issues for the first frame (#2836) * Fix first frame exposure, depth pyramid / AO * Update changelog * Comment * Typo * Add missing RenderGraphBuilder.ReadTexture call * Move ComputePackedMipChainInfo at the beginning of ExecuteWithRenderGraph Co-authored-by: sebastienlagarde * Update 5001_Fog_FogFallback.png * Revert "Update 5001_Fog_FogFallback.png" This reverts commit 2653b9c6f42670ba1c46090b1d1e0118f7d0fe6a. * Update 5001_Fog_FogFallback.unity * Fix AOV API for render graph (#2909) * Fix AOV api in rendergraph # Conflicts: # com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDRenderPipeline.RenderGraph.cs * Update changelog * Fix a small discrepancy in the marker placement in light intensity sliders (#2924) * Update CHANGELOG.md * Fix issue with VT spewing errors when transparent and opaque are disabled (#2925) * Fix * Changelog Co-authored-by: sebastienlagarde * Fixed a bug in the sphere-aabb light cluster (case 1294767). (#2920) Co-authored-by: sebastienlagarde * Move EndCameraRendering callback out of the profiling scope (#2917) * Move EndCameraRendering callback out of the profiling scope * added a comment Co-authored-by: sebastienlagarde * Fixed baked light being included into the ray tracing light cluster (case 1296203). (#2915) Co-authored-by: sebastienlagarde * Handle all enums the same way for UI (#2913) Co-authored-by: sebastienlagarde * Changed the message when the graphics device doesn't support ray tracing (case 1287355). (#2916) * [HDRP] Fix default blocks for Hair and Eye shader graphs (#2919) * Fixed default eye shader blocks * Fix missing emission block in hair shader * Updated changelog Co-authored-by: sebastienlagarde * Init scene camera debug framesettings (#2931) * Fixed using the wrong method to define if a light should be included in the light cluster depending on its baking status. (#2932) * - Fixed using the wrong method to define if a light should be included in the light cluster depending on its baking status. * Update CHANGELOG.md Co-authored-by: sebastienlagarde * [HDRP] Change the behavior of custom passes when the volume is disabled (#2930) * Changed the behavior of custom passes when the Custom Pass Volume component is disabled * Updated changelog * Fixed display of LOD Bias and maximum level in frame settings when using Quality Levels (#2921) * Fixed display of LOD Bias and maximum level in frame settings when using Quality Levels * Update changelog Co-authored-by: sebastienlagarde * Fixed an issue when trying to open a look dev env library when Look Dev is not supported. (#2929) * Fixed an issue when trying to open a look dev env library when Look Dev is not supported. * Update changelog Co-authored-by: sebastienlagarde * Enable Reflector for Spotlight by default * - Fixed shader graph not supporting indirectdxr multibounce (case 1294694). (#2933) Co-authored-by: sebastienlagarde * Fixed the planar depth texture not being properly created and rendered to (case 1299617). (#2926) * Fixed the planar depth texture not being properly created and rendered to (case 1299617). * adding comment Co-authored-by: sebastienlagarde * Fixed C# 8 compilation issue with turning on nullable checks (case 1300167) (#2949) * Fixed C# 8 compilation issue with turning on nullable checks - bis (#2951) * Fixed C# 8 compilation issue with turning on nullable checks (case 1300167) * Update MaterialDebug.cs * Fix scripting light test with enableReflector true by default * Project skybox without perspective for ortho cameras * Explicit orthographic argument Co-authored-by: Antoine Lelievre Co-authored-by: Sebastien Lagarde Co-authored-by: FrancescoC-unity <43168857+FrancescoC-unity@users.noreply.github.com> Co-authored-by: Pavlos Mavridis Co-authored-by: John Parsaie Co-authored-by: Remi Slysz <40034005+RSlysz@users.noreply.github.com> Co-authored-by: Frédéric Vauchelles <55485372+fredericv-unity3d@users.noreply.github.com> Co-authored-by: Fabien Houlmann <44069206+fabien-unity@users.noreply.github.com> Co-authored-by: anisunity <42026998+anisunity@users.noreply.github.com> Co-authored-by: JulienIgnace-Unity * Fix non temporal SSAO issues with the rendergraph pass (#3351) * Fix * changelog * Reset ambient probe upon switching to very different skies (#3340) * Set ambient probe to black when there is a big difference * Changelog * Fix a couple of things * Change name Co-authored-by: sebastienlagarde * Fix white flash on camera cuts with volumetric (#3354) * Have two frames with reprojection off on cut (due to exposure) * changelog Co-authored-by: sebastienlagarde * Fix issues with light layers issues when editing multiple lights (#3323) * Avoid syncing light layers when we have multiple values. * Changelog Co-authored-by: sebastienlagarde * Maximum of reflection distance must be bound by the min of all dimensions, (#3329) not the maximum. * Fixed debug panel reseting when going through enum items (#3370) * tentative fix for enum navigation in the runtime debug UI * Update changelog Co-authored-by: sebastienlagarde * Fix keywords with fbx importer (#3350) Co-authored-by: sebastienlagarde * Fixed lightmaps not working properly with shader graphs in ray traced reflections (case 1305335). (#3352) Co-authored-by: sebastienlagarde * revert: Reset ambient probe upon switching to very different skies (#3340) * Hdrp/fix tesselation wireframe (#3355) * SCENEPICKING pass was utilizing a camera that had relative rendering on, however world positions in SCENEPICKING are absolute. This causes inconsystencies in tesselation wireframe view. This fix corrects the offset of worldspace on tesselation for SCENEPICKING pass. * Correct range (0 to 1) in order to get pixel accurage projection value. * Moving function to LitDataMeshModification.hlsl for clarity. * Changing CameraView matrix instead of offsetting the position using macro forwarding. * Redirecting camera matrix more cleanly. * Reordering picking transforms include for proper macro order. * Changelog description Co-authored-by: sebastienlagarde * Adding missing meta from HDRP_test * Hd/fix input registering domain reload (#3373) * Update InputRegistering.cs * Remove asset modification if InputSystem package is in use * Prevent missuse of InputRegistering while InputSystem package is in use * Update CHANGELOG.md * cleaning * more cleaning * Update code to use Next instead of GetArrayElementAtIndex * Fix nullref (#3460) Co-authored-by: sebastienlagarde * Fix DepthOfField CoC debug view (#3466) * Push stuff for debug * changelog Co-authored-by: sebastienlagarde * Fixed an issue with first frame of ao causing some kind of ghosting e… (#3457) * Fixed an issue with first frame of ao causing some kind of ghosting effect. * Update changelog * Fix mipmap generation internal format (#3470) Co-authored-by: sebastienlagarde * Change wizard check to be ok with -force api (#3422) * Delete Volumes.meta * revert: Hd/fix input registering domain reload #3373 * update Vulkan win reference screenshots * Fixed performance issue with ShaderGraph and Alpha Test * Fixed dimensionality of a couple vectors (from 3 to 2). (#3395) * Fix error when increasing the maximum planar reflection limit (#3332) Co-authored-by: sebastienlagarde * Updated documentation of RequestRenderNextUpdate (#3368) * Updated documentation of RequestRenderNextUpdate * Fixed documentation * Update HDProbe.cs * Update HDAdditionalReflectionData.cs Co-authored-by: Lewis Jordan * Fix alpha output in AOVs and debug views when using shadow matte (#3593) * Fix shader compile error with debug output and shadow matte * Correct alpha output in AOVs and material debug when using shadow matte * Update changelog * Added an additional check in the "check scene for ray tracing" (case 1314963). (#3616) * Fixed an issue with transparent meshes writing their depths and recursive rendering (case 1314409). (#3619) * Fixed issue with compositor custom pass hooks added/removed repeatedly (#3613) Co-authored-by: sebastienlagarde * [HDRP] Fixed SSR with SSR_Transparent (#3603) * Fixed SSR used with transparent: Keyword overrided * Change Log Co-authored-by: sebastienlagarde * Decal in material debug display (#3608) Co-authored-by: sebastienlagarde * Formatting * Hd/fix pivot size ratio percistency through 0 (#3600) * Change default pivot * Fix ratio persistency through 0 size (case 1308338) * Update CHANGELOG.md * Added multi edition support * Add missing Undo recording * Fix multi edition initialization and multiple state display and targets used in OnSceneGUI * Add missing projection update * Fix inspector refresh when there is multiple different value and we edit them (remove multiple state) Co-authored-by: sebastienlagarde * [HDRP] Fix volume component nullref (#3644) * Fixed nullref when adding a volume component in a Volume profile asset * Updated changelog * Fixed decal normal for double sided materials (case 1312065) (#3610) * Fixed decal normal for double sided materials (case 1312065) * Simplify mirror mode * Update DecalUtilities.hlsl * Update DecalUtilities.hlsl * Updates graphic test * Update screenshots Co-authored-by: sebastienlagarde * Fixed render graph resource log to display properly MB and improved readability. (#3638) * Display a warning help box when decal atlas is out of size (#3634) Co-authored-by: sebastienlagarde * Improved render texture debug names (#3631) * Fixing ordering of UI Frame settings [Fogbugz 1315452] (#3628) * Fixing wrong ordering of frame settings on the UI. Ignoring enums that are tagged as obsolete. * Moving reflection call to its own utility function, and caching frame settings names. * Adding changelog changes. Co-authored-by: sebastienlagarde * Port change. (#3656) * Fix issue with velocity rejection in post-DoF TAA (#3672) * Unify Emissive mapping options on lit shaders (#3606) * Add POM to emissive on tessellated shaders * Fix uv1 for lit shaders * Updated graphic test * reenable test * Update screenshots (test for linux) Co-authored-by: sebastienlagarde * Fix a leak cause for area light cookies (#3614) * Add border around texture when blitting * Comments * tentative fix * Actual fix. * Update 5001_PathTracing.png * Update 1202_Lit_DoubleSideNormalMode.unity * Hd/alpha to mask frame setting fix 1315452 (#3681) * OverridableFrameSettingsArea.Field.overrideable and OverridableFrameSettingsArea.Field.customOverrideable are duplicate delegates: - They are only called in OverridableFrameSettingsArea.Field.IsOverrideableWithDependencies. - overrideable first gets a chance to declare the field as not overridable, and then customOverrideable gets a chance to override the final result. - customOverrideable is called once for each FrameSettingsFieldAttribute.dependencies, sometimes resulting in duplicate run of the same function with the same input multiple times. - customOverrideable is also coupled with some "positive / negative dependency" system making it hard to understand unnecessarily. It is neater to keep only OverridableFrameSettingsArea.Field.overrideable and delete OverridableFrameSettingsArea.Field.customOverrideable, while adding a ignoreOverride boolean. * With the previous commit, declaring a field with both positive and negative dependency no longer has weird problem with custom override-able delegate. So we give AlphaToMask a positive and a negative dependency as is needed. But still the AlphaToMask field needs a custom override-able delegate to handle cases like when HDRP Asset force deferred while frame setting has forward Lit Shader Mode, so we added a custom override-able delegate too. * update CHANGELOG.md * Update CHANGELOG.md Co-authored-by: sebastienlagarde * Hd/rough distortion fix 1317952 (#3683) * Fix Rough Distortion frame setting not greyed out when Distortion is disabled in HDRP Asset * update CHANGELOG.md * Fix issue with physically-based DoF computation and transparent materials with depth-writes ON. (#3689) Co-authored-by: Sebastien Lagarde * Update RaytracingIntersection.hlsl (#3703) * Hd/fix access current hdrp asset for default frame settings 1317968 (#3695) * Fix issue of accessing default frame setting stored in current HDRPAsset instead fo the default HDRPAsset * Update CHANGELOG.md Co-authored-by: sebastienlagarde * Fix SSGI frame setting not greyed out while SSGI is disabled in HDRP Asset (#3693) * Fix SSGI frame setting not greyed out while SSGI is disabled in HDRP Asset * Update CHANGELOG.md Co-authored-by: sebastienlagarde * Reduced the maximal number of bounces for both RTGI and RTR (case 1318876). (#3864) * Fix scene being fully grey on playstation when histogram exposure is used but not curve remapping (#3867) * Allocate the curve texture always * Changelog * fix faulty lights (#3870) * Fixed indent level on material Global Illumination field (#3881) * [HDRP] Disc light realtime gi UI error (#3866) * Added an error in the UI when trying to use disk lights with realtime GI * Updated changelog * Remove useless shaders from the creation menu (#3893) * Fixed HDRPAsset loosing its reference to the ray tracing resources when clicking on a different quality level that doesn't have ray tracing (case 1320304). (#3894) * Fixed error message when having MSAA and Screen Space Shadows (case 1318698). (#3865) Co-authored-by: sebastienlagarde * Fixed Nans happening in RTR when the history render target is bigger than the current viewport (case 1321139). (#3876) Co-authored-by: sebastienlagarde * [HDRP] Fix tube light mode (#3871) * Fixed tube light mode selection (case 1317776) * Updated changelog * PR fixes Co-authored-by: sebastienlagarde * Added tooltips for features being disabled because of MSAA/Raytracing (#3879) * Added tooltips to warn when some features may be disabled. * Update change log * Formatting * Update CHANGELOG.md * Changed the behavior of the clear coat and SSR/RTR for the stack lit to mimic the Lit's behavior (case 1320154). (#3872) * Changed the behavior of the clear coat and SSR/RTR for the stack lit to mimic the Lit's behavior (case 1320154). * Added information about using clear coat with rtr * Reference image meta file (long time oversight) * Modifying test 1302_03 Stacklit to make it fail with new fix * Update reference images Co-authored-by: Lewis Jordan Co-authored-by: Remi Chapelain * Fix warning for ShadowLoop (#3885) * Fix warning and changelog * Fix formating * Remove unused variable * Unused variable Co-authored-by: SoufianeKHIAT * Fix SSR for 4K Render Target (#3874) * Fix SSR for 4K (tested on volumetric cloud demo) * Add ChangeLog Co-authored-by: sebastienlagarde * Fix GBuffer debug view when using virtual texturing (#3880) * Fix gbuffer debug view * changelog Co-authored-by: sebastienlagarde * Bugfix 1319005: Fix fog noise issues (#3891) * Fix fog noise issues * Code comment + changelog update * Proper fix for near-plane issue * Updated reference images Co-authored-by: Sebastien Lagarde * Fix Decal Normal Blending NaN (Case #1317162) (#3883) * Apply the nan guard fix * Changelog * Move the epsilon onto the same line * Remove the nan fix via normal blend weight epsilon * Suppress the nan via safe normalize for the zero length normal Co-authored-by: sebastienlagarde * Fixed issue in wizard when resource folder not exist (#3907) Co-authored-by: sebastienlagarde * Fix for Xbox device types in SubSurfaceScattering (#3942) * [CI] Updated pinned editor versions * Fix for Xbox device types in SubSurfaceScattering Co-authored-by: noreply@unity3d.com * Fixed issue with Decal projector edge on Metal (case 1286074) (#3941) * Fix normal and update ref images. (#3928) Co-authored-by: sebastienlagarde * Fix diffusion profile doc (#3968) * Fixed a potential issue causing the custom pass UI drawers to not render correctly when using custom properties. (#3898) * Moved the leaf example from sss to translucent (#3990) * Merge branch 'master' into hd/bugfix * Added rough distortion to the frame settings (#3991) Co-authored-by: Sebastien Lagarde * Fix Render Graph UI bug in Render Pipeline Debugger (#3992) * Fix * Changelog Co-authored-by: Sebastien Lagarde * Fixed formatting issue and reworded some bits in the motion vectors page (#3987) * Fixed image formatting * Attempted to reorder information to make it clearer * Added a more explicit note for object motion vectors * Added a fallback for the ray traced directional shadow in case of a transmission (case 1307870). (#3882) * Added a fallback for the ray traced directional shadow in case of a transmission (case 1307870). * Changes requested by the review * Documented fix. Documented this bugfix in the Light Types guide section of Light-component.md. * Typo fix (whoops) * Moved fix documentation Moved documentation to the Ray-Traced-Shadows.md page. * fixing old typo Co-authored-by: Vic-Cooper Co-authored-by: Remi Chapelain * Fix sss in planar reflections planar (#3919) * Fix SSS materials in planar reflections * Proper fix * Undo matrix rename Co-authored-by: sebastienlagarde * Added note about SSGI and RTGI replacing all lightmap and light probe data (#3913) * fix pivot edit mode 2D slider gizmo not supporting multi-edition (decal) (#3908) Co-authored-by: sebastienlagarde * Merge branch 'master' into hd/bugfix * [HDRP][Fogbugz 1325312] Hdrp/fix inverted y on cas (#4027) * Fixing missing of inverted Y on non dev player builds for CAS with DRS * Changelog updates * SceneObjectIDMap: Fix a nasty bug where game object to entry index dictionary would get out of sync from the entries list (#4038) * SceneObjectIDMap: Fix a nasty bug where gameobject to entry index dictionary would get out of sync from the entries list after an insertion occurred to fill a hole. This resulted in a nasty bug where reflection probes would occasionally generate the same bake texture filename as eachother, would overwrite eachothers textures, and would point to the same texture after the bake completed. Issue can be reproduced by baking, removing reflection probes, adding new reflection probes, and baking again. * Update CHANGELOG.md Co-authored-by: pastasfuture * Fix shader compil issue on PS4 in Stacklit.hlsl (#4064) * [Fogbugz 1325700] Fixing volumetric screen zmask & depth pyramid for hw drs (#4050) * FIxing volumetric drs tmp screen zmask textures and also the depth pyramid, to consider hardware DRS when its on * Changelog * Added todo comment. * Update StackLit.hlsl * HD/Decals: allows negative UV (#4083) Decals: allows negative UV (#4083) * Added an info box for micro shadow editor (#4086) * Changed default HDRP post process shader name to match C# volume name Co-authored-by: Kleber Garcia Co-authored-by: JulienIgnace-Unity Co-authored-by: Sebastien Lagarde Co-authored-by: FrancescoC-unity <43168857+FrancescoC-unity@users.noreply.github.com> Co-authored-by: Pavlos Mavridis Co-authored-by: slunity <37302815+slunity@users.noreply.github.com> Co-authored-by: Adrien de Tocqueville Co-authored-by: Rémi Chapelain <57442369+remi-chapelain@users.noreply.github.com> Co-authored-by: anisunity <42026998+anisunity@users.noreply.github.com> Co-authored-by: John Parsaie Co-authored-by: Lewis Jordan Co-authored-by: skhiat <55133890+skhiat@users.noreply.github.com> Co-authored-by: Martin Thorzen <35328557+martint-unity@users.noreply.github.com> Co-authored-by: Sophia <16596228+sophiaaar@users.noreply.github.com> Co-authored-by: Remi Slysz <40034005+RSlysz@users.noreply.github.com> Co-authored-by: Emmanuel Turquin Co-authored-by: jenniferd-unity <71718938+jenniferd-unity@users.noreply.github.com> Co-authored-by: Frédéric Vauchelles <55485372+fredericv-unity3d@users.noreply.github.com> Co-authored-by: Fabien Houlmann <44069206+fabien-unity@users.noreply.github.com> Co-authored-by: victorsclui <34995714+victorsclui@users.noreply.github.com> Co-authored-by: Remi Chapelain Co-authored-by: SoufianeKHIAT Co-authored-by: Jarkko Lempiäinen <79095390+JarkkoUnity@users.noreply.github.com> Co-authored-by: Adrian1066 <44636759+Adrian1066@users.noreply.github.com> Co-authored-by: noreply@unity3d.com Co-authored-by: Vic-Cooper Co-authored-by: pastasfuture --- .../Editor/RenderPipeline/HDRenderPipelineMenuItems.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineMenuItems.cs b/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineMenuItems.cs index 4a642f0985a..5d3c96e0cf9 100644 --- a/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineMenuItems.cs +++ b/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineMenuItems.cs @@ -213,7 +213,7 @@ static void MenuCreateCSharpPostProcessVolume() static void MenuCreatePostProcessShader() { string templatePath = $"{HDUtils.GetHDRenderPipelinePath()}/Editor/PostProcessing/Templates/CustomPostProcessingShader.template"; - ProjectWindowUtil.CreateScriptAssetFromTemplateFile(templatePath, "New Post Process Shader.shader"); + ProjectWindowUtil.CreateScriptAssetFromTemplateFile(templatePath, "New Post Process Volume.shader"); } //[MenuItem("Internal/HDRP/Add \"Additional Light-shadow Data\" (if not present)")] From d456be4f84a9692053771afbaf544d675d6cc492 Mon Sep 17 00:00:00 2001 From: sebastienlagarde Date: Thu, 15 Apr 2021 17:49:15 +0200 Subject: [PATCH 6/8] Merge Hd/bugfix #4192 --- .../Vulkan/None/9800_Compositor.png | 4 +- .../OSXEditor/Metal/None/9800_Compositor.png | 4 +- .../Direct3D11/None/9800_Compositor.png | 4 +- .../Direct3D12/None/9800_Compositor.png | 4 +- .../Vulkan/None/9800_Compositor.png | 4 +- .../CHANGELOG.md | 6 ++ .../Lighting/Shadow/MicroShadowingEditor.cs | 16 +++++ .../Shadow/MicroShadowingEditor.cs.meta | 11 ++++ .../Material/Decal/DecalProjectorEditor.cs | 2 +- .../Material/Decal/DisplacableRectHandles.cs | 12 ++-- .../Camera/HDCameraEditor.Handlers.cs | 28 ++++++--- .../RenderPipeline/Camera/HDCameraEditor.cs | 28 ++++++--- .../Runtime/Debug/DebugDisplay.cs | 4 +- .../Runtime/Debug/DebugDisplay.cs.hlsl | 4 +- .../Runtime/RenderPipeline/Camera/HDCamera.cs | 63 +++++++++++++++++++ .../RenderPipeline/HDRenderPipeline.cs | 15 ++++- .../RenderPipeline/PathTracing/PathTracing.cs | 2 +- .../RenderPass/AOV/AOVRequest.cs | 52 +++++++++++++++ .../RenderPass/AOV/AOVRequestData.cs | 39 ++++++++++++ .../ShaderPass/ShaderPassForward.hlsl | 4 +- .../ShaderPass/ShaderPassForwardUnlit.hlsl | 4 +- 21 files changed, 268 insertions(+), 42 deletions(-) create mode 100644 com.unity.render-pipelines.high-definition/Editor/Lighting/Shadow/MicroShadowingEditor.cs create mode 100644 com.unity.render-pipelines.high-definition/Editor/Lighting/Shadow/MicroShadowingEditor.cs.meta diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/LinuxEditor/Vulkan/None/9800_Compositor.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/LinuxEditor/Vulkan/None/9800_Compositor.png index c3444fce114..9b0ae3cfb84 100644 --- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/LinuxEditor/Vulkan/None/9800_Compositor.png +++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/LinuxEditor/Vulkan/None/9800_Compositor.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fae7334c0189de563adff3d2547c5eee8f750f8f0587722389615c42cfd057f8 -size 90574 +oid sha256:560f65375036eb1901a2b397609c4f2b766fe4f4a769cbbdf61fc66ca065a4f0 +size 90859 diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/OSXEditor/Metal/None/9800_Compositor.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/OSXEditor/Metal/None/9800_Compositor.png index 4d32dde27c3..4e8c7627221 100644 --- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/OSXEditor/Metal/None/9800_Compositor.png +++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/OSXEditor/Metal/None/9800_Compositor.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:77ab31f6262195834e8335063a62b06804476ef5bf4f41ed7ff1d721558b498b -size 89682 +oid sha256:242f316c9e40115f0d0447dd3545a7716f1fb16f852fc32b04d13b8482a22747 +size 90530 diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/9800_Compositor.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/9800_Compositor.png index 882d40bac50..9914ab7cad1 100644 --- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/9800_Compositor.png +++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/9800_Compositor.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b64cf2b79e284812084bcadfa8f5252860cf7d8710b5db3a18f833d1a371b4c9 -size 90576 +oid sha256:5c8a47ab2d42a002ece2727b11177144db13278f39b1b3e49fb5e8b6fc3a019d +size 90912 diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/9800_Compositor.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/9800_Compositor.png index 882d40bac50..9914ab7cad1 100644 --- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/9800_Compositor.png +++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/9800_Compositor.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b64cf2b79e284812084bcadfa8f5252860cf7d8710b5db3a18f833d1a371b4c9 -size 90576 +oid sha256:5c8a47ab2d42a002ece2727b11177144db13278f39b1b3e49fb5e8b6fc3a019d +size 90912 diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Vulkan/None/9800_Compositor.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Vulkan/None/9800_Compositor.png index c3444fce114..9914ab7cad1 100644 --- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Vulkan/None/9800_Compositor.png +++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Vulkan/None/9800_Compositor.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fae7334c0189de563adff3d2547c5eee8f750f8f0587722389615c42cfd057f8 -size 90574 +oid sha256:5c8a47ab2d42a002ece2727b11177144db13278f39b1b3e49fb5e8b6fc3a019d +size 90912 diff --git a/com.unity.render-pipelines.high-definition/CHANGELOG.md b/com.unity.render-pipelines.high-definition/CHANGELOG.md index ac451902081..1749fbd5785 100644 --- a/com.unity.render-pipelines.high-definition/CHANGELOG.md +++ b/com.unity.render-pipelines.high-definition/CHANGELOG.md @@ -30,6 +30,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. - API to allow OnDemand shadows to not render upon placement in the Cached Shadow Atlas. - Exposed update upon light movement for directional light shadows in UI. - Added a fallback for the ray traced directional shadow in case of a transmission (case 1307870). +- Added an info box for micro shadow editor (case 1322830). ### Fixed - Fixed probe volumes debug views. @@ -155,6 +156,10 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. - Fixed volumetric fog being visually chopped or missing when using hardware Dynamic Resolution Scaling. - Fixed generation of the packed depth pyramid when hardware Dynamic Resolution Scaling is enabled. - Fixed issue with an assert getting triggered with OnDemand shadows. +- Fixed Decal's UV edit mode with negative UV +- Fixed issue with the color space of AOVs (case 1324759) +- Fixed issue with history buffers when using multiple AOVs (case 1323684). +- Fixed camera preview with multi selection (case 1324126). ### Changed - Removed the material pass probe volumes evaluation mode. @@ -191,6 +196,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. - Changed normal used in path tracing to create a local light list from the geometric to the smooth shading one. - Assets going through the migration system are now dirtied. - Changed ray tracing acceleration structure build, so that only meshes with HDRP materials are included (case 1322365). +- Increased path tracing max samples from 4K to 16K (case 1327729). ## [10.3.0] - 2020-12-01 diff --git a/com.unity.render-pipelines.high-definition/Editor/Lighting/Shadow/MicroShadowingEditor.cs b/com.unity.render-pipelines.high-definition/Editor/Lighting/Shadow/MicroShadowingEditor.cs new file mode 100644 index 00000000000..2a499e83914 --- /dev/null +++ b/com.unity.render-pipelines.high-definition/Editor/Lighting/Shadow/MicroShadowingEditor.cs @@ -0,0 +1,16 @@ +using UnityEngine.Rendering.HighDefinition; + +namespace UnityEditor.Rendering.HighDefinition +{ + [VolumeComponentEditor(typeof(MicroShadowing))] + sealed class MicroShadowingEditor : VolumeComponentEditor + { + static public readonly string k_DirectionnalWarning = "Micro Shadows only works with directional Lights"; + + public override void OnInspectorGUI() + { + base.OnInspectorGUI(); + EditorGUILayout.HelpBox(k_DirectionnalWarning, MessageType.Info); + } + } +} diff --git a/com.unity.render-pipelines.high-definition/Editor/Lighting/Shadow/MicroShadowingEditor.cs.meta b/com.unity.render-pipelines.high-definition/Editor/Lighting/Shadow/MicroShadowingEditor.cs.meta new file mode 100644 index 00000000000..47292dbeae0 --- /dev/null +++ b/com.unity.render-pipelines.high-definition/Editor/Lighting/Shadow/MicroShadowingEditor.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: faceeca3ea8e9664bbd1485f9966da7a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/com.unity.render-pipelines.high-definition/Editor/Material/Decal/DecalProjectorEditor.cs b/com.unity.render-pipelines.high-definition/Editor/Material/Decal/DecalProjectorEditor.cs index b8fb3eb13fb..bb7750b3313 100644 --- a/com.unity.render-pipelines.high-definition/Editor/Material/Decal/DecalProjectorEditor.cs +++ b/com.unity.render-pipelines.high-definition/Editor/Material/Decal/DecalProjectorEditor.cs @@ -134,7 +134,7 @@ static DisplacableRectHandles uvHandles get { if (s_uvHandles == null || s_uvHandles.Equals(null)) - s_uvHandles = new DisplacableRectHandles(s_LastColor); + s_uvHandles = new DisplacableRectHandles(s_LastColor, allowsNegative: true); return s_uvHandles; } } diff --git a/com.unity.render-pipelines.high-definition/Editor/Material/Decal/DisplacableRectHandles.cs b/com.unity.render-pipelines.high-definition/Editor/Material/Decal/DisplacableRectHandles.cs index 6579041a564..b3e12138ddf 100644 --- a/com.unity.render-pipelines.high-definition/Editor/Material/Decal/DisplacableRectHandles.cs +++ b/com.unity.render-pipelines.high-definition/Editor/Material/Decal/DisplacableRectHandles.cs @@ -15,6 +15,7 @@ enum NamedEdge { Right, Top, Left, Bottom, None } Color m_MonochromeHandleColor; Color m_WireframeColor; Color m_WireframeColorBehind; + bool allowsNegative; /// The position of the center of the box in Handle.matrix space. On plane z=0. public Vector2 center { get; set; } @@ -58,9 +59,10 @@ public Color baseColor } } - public DisplacableRectHandles(Color baseColor) + public DisplacableRectHandles(Color baseColor, bool allowsNegative = false) { this.baseColor = baseColor; + this.allowsNegative = allowsNegative; } /// Draw the rect. @@ -258,7 +260,8 @@ public void DrawHandle() case NamedEdge.Bottom: topPosition.y -= delta; break; } - EnsureEdgeFacesOutsideForSymetry(theChangedEdge, ref leftPosition, ref rightPosition, ref topPosition, ref bottomPosition); + if (!allowsNegative) + EnsureEdgeFacesOutsideForSymetry(theChangedEdge, ref leftPosition, ref rightPosition, ref topPosition, ref bottomPosition); } if (useHomothety) @@ -278,13 +281,14 @@ public void DrawHandle() break; } - EnsureEdgeFacesOutsideForHomothety(theChangedEdge, ref leftPosition, ref rightPosition, ref topPosition, ref bottomPosition); + if (!allowsNegative) + EnsureEdgeFacesOutsideForHomothety(theChangedEdge, ref leftPosition, ref rightPosition, ref topPosition, ref bottomPosition); } var max = new Vector2(rightPosition.x, topPosition.y); var min = new Vector2(leftPosition.x, bottomPosition.y); - if (!useSymetry && !useHomothety) + if (!useSymetry && !useHomothety && !allowsNegative) EnsureEdgeFacesOutsideForOtherTransformation(ref max, ref min); center = (max + min) * .5f; diff --git a/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/Camera/HDCameraEditor.Handlers.cs b/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/Camera/HDCameraEditor.Handlers.cs index 2be99125948..db52abd15b3 100644 --- a/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/Camera/HDCameraEditor.Handlers.cs +++ b/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/Camera/HDCameraEditor.Handlers.cs @@ -28,20 +28,32 @@ void OnOverlayGUI(Object target, SceneView sceneView) Camera InitializePreviewCamera(Camera c, Vector2 previewSize) { - m_PreviewCamera.CopyFrom(c); - EditorUtility.CopySerialized(c, m_PreviewCamera); + Camera previewCamera = null; + HDAdditionalCameraData previewAdditionalCameraData = null; + for (int i = 0; i < serializedObject.targetObjects.Length; i++) + { + if (serializedObject.targetObjects[i] == c) + { + previewCamera = m_PreviewCameras[i]; + previewAdditionalCameraData = m_PreviewAdditionalCameraDatas[i]; + break; + } + } + + previewCamera.CopyFrom(c); + EditorUtility.CopySerialized(c, previewCamera); var cameraData = c.GetComponent(); - EditorUtility.CopySerialized(cameraData, m_PreviewAdditionalCameraData); + EditorUtility.CopySerialized(cameraData, previewAdditionalCameraData); // We need to explicitly reset the camera type here // It is probably a CameraType.Game, because we copied the source camera's properties. - m_PreviewCamera.cameraType = CameraType.Preview; - m_PreviewCamera.gameObject.SetActive(false); + previewCamera.cameraType = CameraType.Preview; + previewCamera.gameObject.SetActive(false); var previewTexture = GetPreviewTextureWithSize((int)previewSize.x, (int)previewSize.y); - m_PreviewCamera.targetTexture = previewTexture; - m_PreviewCamera.pixelRect = new Rect(0, 0, previewSize.x, previewSize.y); + previewCamera.targetTexture = previewTexture; + previewCamera.pixelRect = new Rect(0, 0, previewSize.x, previewSize.y); - return m_PreviewCamera; + return previewCamera; } static Type k_SceneViewOverlay_WindowFunction = Type.GetType("UnityEditor.SceneViewOverlay+WindowFunction,UnityEditor"); diff --git a/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/Camera/HDCameraEditor.cs b/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/Camera/HDCameraEditor.cs index 94f012b6345..72d657dee3d 100644 --- a/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/Camera/HDCameraEditor.cs +++ b/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/Camera/HDCameraEditor.cs @@ -14,19 +14,25 @@ partial class HDCameraEditor : Editor SerializedHDCamera m_SerializedCamera; RenderTexture m_PreviewTexture; - Camera m_PreviewCamera; - HDAdditionalCameraData m_PreviewAdditionalCameraData; + Camera[] m_PreviewCameras; + HDAdditionalCameraData[] m_PreviewAdditionalCameraDatas; void OnEnable() { m_SerializedCamera = new SerializedHDCamera(serializedObject); - m_PreviewCamera = EditorUtility.CreateGameObjectWithHideFlags("Preview Camera", HideFlags.HideAndDontSave, typeof(Camera)).GetComponent(); - m_PreviewCamera.enabled = false; - m_PreviewCamera.cameraType = CameraType.Preview; // Must be init before adding HDAdditionalCameraData - m_PreviewAdditionalCameraData = m_PreviewCamera.gameObject.AddComponent(); - // Say that we are a camera editor preview and not just a regular preview - m_PreviewAdditionalCameraData.isEditorCameraPreview = true; + var targetCount = serializedObject.targetObjects.Length; + m_PreviewCameras = new Camera[targetCount]; + m_PreviewAdditionalCameraDatas = new HDAdditionalCameraData[targetCount]; + for (int i = 0; i < targetCount; i++) + { + m_PreviewCameras[i] = EditorUtility.CreateGameObjectWithHideFlags("Preview " + serializedObject.targetObject.name, HideFlags.HideAndDontSave, typeof(Camera)).GetComponent(); + m_PreviewCameras[i].enabled = false; + m_PreviewCameras[i].cameraType = CameraType.Preview; // Must be init before adding HDAdditionalCameraData + m_PreviewAdditionalCameraDatas[i] = m_PreviewCameras[i].gameObject.AddComponent(); + // Say that we are a camera editor preview and not just a regular preview + m_PreviewAdditionalCameraDatas[i].isEditorCameraPreview = true; + } } void OnDisable() @@ -36,8 +42,10 @@ void OnDisable() m_PreviewTexture.Release(); m_PreviewTexture = null; } - DestroyImmediate(m_PreviewCamera.gameObject); - m_PreviewCamera = null; + for (int i = 0; i < serializedObject.targetObjects.Length; i++) + DestroyImmediate(m_PreviewCameras[i].gameObject); + m_PreviewCameras = null; + m_PreviewAdditionalCameraDatas = null; } public override void OnInspectorGUI() diff --git a/com.unity.render-pipelines.high-definition/Runtime/Debug/DebugDisplay.cs b/com.unity.render-pipelines.high-definition/Runtime/Debug/DebugDisplay.cs index f9bc192d79f..a3875fd8347 100644 --- a/com.unity.render-pipelines.high-definition/Runtime/Debug/DebugDisplay.cs +++ b/com.unity.render-pipelines.high-definition/Runtime/Debug/DebugDisplay.cs @@ -41,7 +41,9 @@ unsafe struct ShaderVariablesDebugDisplay public int _DebugSingleShadowIndex; public int _DebugProbeVolumeMode; - public Vector3 _DebugDisplayPad0; + public int _DebugAOVOutput; + public int _DebugDisplayPad0; + public int _DebugDisplayPad1; } /// diff --git a/com.unity.render-pipelines.high-definition/Runtime/Debug/DebugDisplay.cs.hlsl b/com.unity.render-pipelines.high-definition/Runtime/Debug/DebugDisplay.cs.hlsl index f23e6568552..01f7a9a59ca 100644 --- a/com.unity.render-pipelines.high-definition/Runtime/Debug/DebugDisplay.cs.hlsl +++ b/com.unity.render-pipelines.high-definition/Runtime/Debug/DebugDisplay.cs.hlsl @@ -68,7 +68,9 @@ CBUFFER_START(ShaderVariablesDebugDisplay) float _MatcapViewScale; int _DebugSingleShadowIndex; int _DebugProbeVolumeMode; - float3 _DebugDisplayPad0; + int _DebugAOVOutput; + int _DebugDisplayPad0; + int _DebugDisplayPad1; CBUFFER_END diff --git a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Camera/HDCamera.cs b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Camera/HDCamera.cs index fd3b58b867d..ebc5bd7818a 100644 --- a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Camera/HDCamera.cs +++ b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Camera/HDCamera.cs @@ -705,6 +705,16 @@ internal void Update(FrameSettings currentFrameSettings, HDRenderPipeline hdrp, if (numColorPyramidBuffersRequired != 0) { AllocHistoryFrameRT((int)HDCameraFrameHistoryType.ColorBufferMipChain, HistoryBufferAllocatorFunction, numColorPyramidBuffersRequired); + + // Handle the AOV history buffers + var cameraHistory = GetHistoryRTHandleSystem(); + foreach (var aovRequest in aovRequests) + { + var aovHistory = GetHistoryRTHandleSystem(aovRequest); + BindHistoryRTHandleSystem(aovHistory); + AllocHistoryFrameRT((int)HDCameraFrameHistoryType.ColorBufferMipChain, HistoryBufferAllocatorFunction, numColorPyramidBuffersRequired); + } + BindHistoryRTHandleSystem(cameraHistory); } if (numVolumetricBuffersRequired != 0) @@ -768,6 +778,12 @@ internal void SetReferenceSize() { RTHandles.SetReferenceSize(actualWidth, actualHeight, msaaSamples); m_HistoryRTSystem.SwapAndSetReferenceSize(actualWidth, actualHeight, msaaSamples); + + foreach (var aovHistory in m_AOVHistoryRTSystem) + { + var historySystem = aovHistory.Value; + historySystem.SwapAndSetReferenceSize(actualWidth, actualHeight, msaaSamples); + } } // Updating RTHandle needs to be done at the beginning of rendering (not during update of HDCamera which happens in batches) @@ -856,6 +872,12 @@ internal static void ResetAllHistoryRTHandleSystems(int width, int height) if (width < currentHistorySize.x || height < currentHistorySize.y) { hdCamera.m_HistoryRTSystem.ResetReferenceSize(width, height); + + foreach (var aovHistory in hdCamera.m_AOVHistoryRTSystem) + { + var historySystem = aovHistory.Value; + historySystem.ResetReferenceSize(width, height); + } } } } @@ -1118,6 +1140,10 @@ public RTHandle Allocator(string id, int frameIndex, RTHandleSystem rtHandleSyst int m_NumVolumetricBuffersAllocated = 0; float m_AmbientOcclusionResolutionScale = 0.0f; // Factor used to track if history should be reallocated for Ambient Occlusion float m_ScreenSpaceAccumulationResolutionScale = 0.0f; // Use another scale if AO & SSR don't have the same resolution + + Dictionary m_AOVHistoryRTSystem = new Dictionary(new AOVRequestDataComparer()); + + /// /// Store current algorithm which help to know if we trigger to reset history SSR Buffers. /// @@ -1565,6 +1591,13 @@ void Dispose() m_HistoryRTSystem = null; } + foreach (var aovHistory in m_AOVHistoryRTSystem) + { + var historySystem = aovHistory.Value; + historySystem.Dispose(); + } + m_AOVHistoryRTSystem.Clear(); + if (lightingSky != null && lightingSky != visualSky) lightingSky.Cleanup(); @@ -1586,6 +1619,12 @@ static RTHandle HistoryBufferAllocatorFunction(string viewName, int frameIndex, void ReleaseHistoryBuffer() { m_HistoryRTSystem.ReleaseAll(); + + foreach (var aovHistory in m_AOVHistoryRTSystem) + { + var historySystem = aovHistory.Value; + historySystem.ReleaseAll(); + } } Rect GetPixelRect() @@ -1596,6 +1635,30 @@ Rect GetPixelRect() return new Rect(camera.pixelRect.x, camera.pixelRect.y, camera.pixelWidth, camera.pixelHeight); } + internal BufferedRTHandleSystem GetHistoryRTHandleSystem() + { + return m_HistoryRTSystem; + } + + internal void BindHistoryRTHandleSystem(BufferedRTHandleSystem historyRTSystem) + { + m_HistoryRTSystem = historyRTSystem; + } + + internal BufferedRTHandleSystem GetHistoryRTHandleSystem(AOVRequestData aovRequest) + { + if (m_AOVHistoryRTSystem.TryGetValue(aovRequest, out var aovHistory)) + { + return aovHistory; + } + else + { + var newHistory = new BufferedRTHandleSystem(); + m_AOVHistoryRTSystem.Add(aovRequest, newHistory); + return newHistory; + } + } + #endregion } } diff --git a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDRenderPipeline.cs b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDRenderPipeline.cs index b6322f553b4..81b3f395f42 100644 --- a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDRenderPipeline.cs +++ b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDRenderPipeline.cs @@ -1907,11 +1907,17 @@ ref _cullingResults probe.SetRenderData(ProbeSettings.Mode.Realtime, probeRenderData); } + // Save the camera history before rendering the AOVs + var cameraHistory = renderRequest.hdCamera.GetHistoryRTHandleSystem(); + // var aovRequestIndex = 0; foreach (var aovRequest in renderRequest.hdCamera.aovRequests) { using (new ProfilingScope(cmd, ProfilingSampler.Get(HDProfileId.HDRenderPipelineRenderAOV))) { + // Before rendering the AOV, bind the correct history buffers + var aovHistory = renderRequest.hdCamera.GetHistoryRTHandleSystem(aovRequest); + renderRequest.hdCamera.BindHistoryRTHandleSystem(aovHistory); cmd.SetInvertCulling(renderRequest.cameraSettings.invertFaceCulling); ExecuteRenderRequest(renderRequest, renderContext, cmd, aovRequest); cmd.SetInvertCulling(false); @@ -1921,6 +1927,9 @@ ref _cullingResults cmd.Clear(); } + // We are now going to render the main camera, so bind the correct HistoryRTHandleSystem (in case we previously render an AOV) + renderRequest.hdCamera.BindHistoryRTHandleSystem(cameraHistory); + using (new ProfilingScope(cmd, renderRequest.hdCamera.profilingSampler)) { cmd.SetInvertCulling(renderRequest.cameraSettings.invertFaceCulling); @@ -2087,7 +2096,7 @@ AOVRequestData aovRequest Resize(hdCamera); m_PostProcessSystem.BeginFrame(cmd, hdCamera, this); - ApplyDebugDisplaySettings(hdCamera, cmd); + ApplyDebugDisplaySettings(hdCamera, cmd, aovRequest.isValid); if (DebugManager.instance.displayRuntimeUI #if UNITY_EDITOR @@ -3342,7 +3351,7 @@ static void RenderSSR(in RenderSSRParameters parameters, } } - unsafe void ApplyDebugDisplaySettings(HDCamera hdCamera, CommandBuffer cmd) + unsafe void ApplyDebugDisplaySettings(HDCamera hdCamera, CommandBuffer cmd, bool aovOutput) { // See ShaderPassForward.hlsl: for forward shaders, if DEBUG_DISPLAY is enabled and no DebugLightingMode or DebugMipMapMod // modes have been set, lighting is automatically skipped (To avoid some crashed due to lighting RT not set on console). @@ -3426,6 +3435,8 @@ unsafe void ApplyDebugDisplaySettings(HDCamera hdCamera, CommandBuffer cmd) cb._DebugSingleShadowIndex = m_CurrentDebugDisplaySettings.data.lightingDebugSettings.shadowDebugUseSelection ? m_DebugSelectedLightShadowIndex : (int)m_CurrentDebugDisplaySettings.data.lightingDebugSettings.shadowMapIndex; + cb._DebugAOVOutput = aovOutput ? 1 : 0; + ConstantBuffer.PushGlobal(cmd, m_ShaderVariablesDebugDisplayCB, HDShaderIDs._ShaderVariablesDebugDisplay); cmd.SetGlobalTexture(HDShaderIDs._DebugFont, defaultResources.textures.debugFontTex); diff --git a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/PathTracing/PathTracing.cs b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/PathTracing/PathTracing.cs index e2141b22044..6f1c240d5e0 100644 --- a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/PathTracing/PathTracing.cs +++ b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/PathTracing/PathTracing.cs @@ -31,7 +31,7 @@ public sealed class PathTracing : VolumeComponent /// Defines the maximum number of paths cast within each pixel, over time (one per frame). /// [Tooltip("Defines the maximum number of paths cast within each pixel, over time (one per frame).")] - public ClampedIntParameter maximumSamples = new ClampedIntParameter(256, 1, 4096); + public ClampedIntParameter maximumSamples = new ClampedIntParameter(256, 1, 16384); /// /// Defines the minimum number of bounces for each path, in [1, 10]. diff --git a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/RenderPass/AOV/AOVRequest.cs b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/RenderPass/AOV/AOVRequest.cs index 27e3e946286..738e041164b 100644 --- a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/RenderPass/AOV/AOVRequest.cs +++ b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/RenderPass/AOV/AOVRequest.cs @@ -176,5 +176,57 @@ public void FillDebugData(DebugDisplaySettings debug) throw new ArgumentException("Unknown DebugFullScreen"); } } + + /// + /// Equality operator. + /// + /// The AOV request to compare to. + /// True if the provided AOV request is equal to this. + public override bool Equals(object obj) + { + return obj is AOVRequest && ((AOVRequest)obj) == this; + } + + /// + /// Compares if two AOV requests have the same settings. + /// + /// The first AOVRequest to compare. + /// The second AOVRequest to compare. + /// True if the two AOV requests have the same settings. + public static bool operator==(AOVRequest a, AOVRequest b) + { + return a.m_DebugFullScreen == b.m_DebugFullScreen && + a.m_LightFilterProperty == b.m_LightFilterProperty && + a.m_LightingProperty == b.m_LightingProperty && + a.m_MaterialProperty == b.m_MaterialProperty && + a.m_OverrideRenderFormat == b.m_OverrideRenderFormat; + } + + /// + /// Compares if two AOV requests have the same settings. + /// + /// The first AOVRequest to compare. + /// The second AOVRequest to compare. + /// True if the two AOV requests have not the same settings. + public static bool operator!=(AOVRequest a, AOVRequest b) + { + return !(a == b); + } + + /// + /// Computes a hash code for the AOV Request. + /// + /// A hash code for the AOV Request. + public override int GetHashCode() + { + int hash = 17; + hash = hash * 23 + (int)m_DebugFullScreen; + hash = hash * 23 + (int)m_LightFilterProperty; + hash = hash * 23 + (int)m_LightingProperty; + hash = hash * 23 + (int)m_MaterialProperty; + hash = m_OverrideRenderFormat ? hash * 23 + 1 : hash; + + return hash; + } } } diff --git a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/RenderPass/AOV/AOVRequestData.cs b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/RenderPass/AOV/AOVRequestData.cs index ef494431e1e..26d790d4fa8 100644 --- a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/RenderPass/AOV/AOVRequestData.cs +++ b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/RenderPass/AOV/AOVRequestData.cs @@ -313,5 +313,44 @@ public void SetupDebugData(ref DebugDisplaySettings debugDisplaySettings) /// The game object of the light to be rendered. /// true when the light must be rendered, false when it should be ignored. public bool IsLightEnabled(GameObject gameObject) => m_LightFilter == null || m_LightFilter.Contains(gameObject); + + internal int GetHash() + { + int hash = m_Settings.GetHashCode(); + + if (m_LightFilter != null) + { + foreach (var obj in m_LightFilter) + { + hash += obj.GetHashCode(); + } + } + + return hash; + } + + internal bool HasSameSettings(AOVRequestData other) + { + if (m_Settings != other.m_Settings) + return false; + + if (m_LightFilter != null) + return m_LightFilter.Equals(other.m_LightFilter); + + return true; + } + } + + internal class AOVRequestDataComparer : IEqualityComparer + { + public bool Equals(AOVRequestData x, AOVRequestData y) + { + return x.HasSameSettings(y); + } + + public int GetHashCode(AOVRequestData obj) + { + return obj.GetHash(); + } } } diff --git a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassForward.hlsl b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassForward.hlsl index b4b8f76bc69..1810134ed59 100644 --- a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassForward.hlsl +++ b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassForward.hlsl @@ -183,8 +183,8 @@ void Frag(PackedVaryingsToPS packedInput, // TEMP! // For now, the final blit in the backbuffer performs an sRGB write - // So in the meantime we apply the inverse transform to linear data to compensate. - if (!needLinearToSRGB) + // So in the meantime we apply the inverse transform to linear data to compensate, unless we output to AOVs. + if (!needLinearToSRGB && _DebugAOVOutput == 0) result = SRGBToLinear(max(0, result)); outColor = float4(result, 1.0); diff --git a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassForwardUnlit.hlsl b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassForwardUnlit.hlsl index 66cf2247af9..093b8fe4464 100644 --- a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassForwardUnlit.hlsl +++ b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassForwardUnlit.hlsl @@ -147,8 +147,8 @@ void Frag(PackedVaryingsToPS packedInput, // TEMP! // For now, the final blit in the backbuffer performs an sRGB write - // So in the meantime we apply the inverse transform to linear data to compensate. - if (!needLinearToSRGB) + // So in the meantime we apply the inverse transform to linear data to compensate, unless we output to AOVs. + if (!needLinearToSRGB && _DebugAOVOutput == 0) result = SRGBToLinear(max(0, result)); outResult = float4(result, 1.0); From 71267a31c21c35264c382099fc4f80ed8032144b Mon Sep 17 00:00:00 2001 From: Sebastien Lagarde Date: Tue, 27 Apr 2021 15:54:34 +0200 Subject: [PATCH 7/8] Update AOVRequest.cs --- .../Runtime/RenderPipeline/RenderPass/AOV/AOVRequest.cs | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/RenderPass/AOV/AOVRequest.cs b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/RenderPass/AOV/AOVRequest.cs index 738e041164b..c16151ec9f7 100644 --- a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/RenderPass/AOV/AOVRequest.cs +++ b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/RenderPass/AOV/AOVRequest.cs @@ -198,8 +198,7 @@ public override bool Equals(object obj) return a.m_DebugFullScreen == b.m_DebugFullScreen && a.m_LightFilterProperty == b.m_LightFilterProperty && a.m_LightingProperty == b.m_LightingProperty && - a.m_MaterialProperty == b.m_MaterialProperty && - a.m_OverrideRenderFormat == b.m_OverrideRenderFormat; + a.m_MaterialProperty == b.m_MaterialProperty; } /// @@ -224,7 +223,6 @@ public override int GetHashCode() hash = hash * 23 + (int)m_LightFilterProperty; hash = hash * 23 + (int)m_LightingProperty; hash = hash * 23 + (int)m_MaterialProperty; - hash = m_OverrideRenderFormat ? hash * 23 + 1 : hash; return hash; } From edfca1d9d2ebdc63760d6bd0625ba26d4bf984a7 Mon Sep 17 00:00:00 2001 From: Sebastien Lagarde Date: Tue, 27 Apr 2021 15:58:11 +0200 Subject: [PATCH 8/8] Formatting --- .../Runtime/Debug/DebugDisplay.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/com.unity.render-pipelines.high-definition/Runtime/Debug/DebugDisplay.cs b/com.unity.render-pipelines.high-definition/Runtime/Debug/DebugDisplay.cs index a3875fd8347..69fe7f63ac9 100644 --- a/com.unity.render-pipelines.high-definition/Runtime/Debug/DebugDisplay.cs +++ b/com.unity.render-pipelines.high-definition/Runtime/Debug/DebugDisplay.cs @@ -43,7 +43,7 @@ unsafe struct ShaderVariablesDebugDisplay public int _DebugProbeVolumeMode; public int _DebugAOVOutput; public int _DebugDisplayPad0; - public int _DebugDisplayPad1; + public int _DebugDisplayPad1; } ///