Skip to content

Commit 3b28ecd

Browse files
sebastienlagardepmavridisFrancescoC-unityjohnparsanisunity
authored
Merge Hd/bugfix (#6213)
* [HDRP] Fix AxF debug output in certain configurations (#4641) * Fix AxF debug output in certain configurations. * Update comment * Fix SSR accumulation white flash (#4648) * Fix white flash * changelog Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Display Info Box when MSAA + ray tracing is onr (#4627) * Show info box when ray tracing is enabled. * Changelog * Move below MSAA Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fix distortion when resizing the window in player builds with the Graphics Compositor enabled (#4593) Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Add support for the camera bridge in the graphics compositor (#4599) * Fix Jittered Project Matrix Infinite Far Clip Plane (#4638) * Reconstruct jittered projection matrix far plane (for Infinite ) * Changelog Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fixed a memory leak related to not disposing of the RTAS at the end HDRP's lifecycle. (#4688) Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fix custom pass utils Blur + Copy overdraw. (#4623) * Fix overdraw in custom pass utils blur function * Updated changelog Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fix draw procedural invalid pass idx 1 on first template load (#4632) * Fix * changelog * Force sync compilation for TAA Co-authored-by: CifaCia <f.cifariellociardi@gmail.com> Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Changed light reset to preserve type (#4624) Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Revert "Add support for the camera bridge in the graphics compositor (#4599)" This reverts commit 2325e3f. * AxF carpaint: Fix a compilation issue on Vulkan until the cpp HLSLcc side is updated. (case 1335737, related to 1314040) (#4691) Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Revert "Revert "Add support for the camera bridge in the graphics compositor (#4599)"" This reverts commit 30fffd5. * revert: Fix distortion when resizing the window in player builds with the Graphi * Fixed the ray traced sub subsurface scattering debug mode not displaying only the RTSSS Data (case 1332904). (#4626) * Fixed the ray traced sub subsurface scattering debug mode not displaying only the RTSSS Data (case 1332904). * Add test scene Co-authored-by: Remi Chapelain <remi.chapelain@unity3d.com> Co-authored-by: Sebastien Lagarde <sebastien@unity3d.com> * Fix for discrepancies in saturation and intensity between screen space refraction and probe refraction (#4653) * Delete the second transmittance mul * Changelog Co-authored-by: Sebastien Lagarde <sebastien@unity3d.com> * Fix a Divide-by-Zero Warning for some Anisotropic Models (Fabric, Lit) (#4636) * Initialize the shading normal to a non-zero value for anisotropy * Changelog Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * [HDRP] Fix VfX lit particle AOV output color space (#4646) * Fix VfX lit particle aov output color space * Update comment Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * [HDRP][Path Tracing] Fixed transparent unlit (#4605) * Fixed issue with transparent unlit. * Updated changelog. * Reverted accidental change to default mtl. Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fix distortion with MSAA (#4711) * Fix contact shadow debug views (#4720) * Fix * changelog Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Update Decal-Projector.md (#4695) * [HDRP] Fixed nullref when deleting the texture asset assigned in a local volumetric fog volume (#4728) * Fixed nullref when deleting the 3D mask of a density volume (case 1339330) * Updated changelog Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fix decal layer enum (#4753) * Fix typo * Fixed reflection probes being injected into the ray tracing light cluster even if not baked (case 1329083). (#4640) Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Ignore hybrid duplicated reflection probes during light baking (#4663) * Ignore hybrid duplicated reflection probes during light baking * test path instead of scene Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fix double sided option moving when toggling it in the material UI (#4725) * Fix double sided option moving when toggling it in the material UI (case 1328877) * Updated changelog Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fix formatting * Fix volumetric fog in planar reflections (#4736) * Fix planar reflection * changelog Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fix motion blur compute dispatch size (#4737) Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * - Updated the recursive rendering documentation (case 1338639). (#4759) * - Updated the recursive rendering documentation (case 1338639). * review fixes Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fix issue with OnDemand directional shadow map being corrupted when reflection probe are updated same frame (#4812) * Don't mark as rendered for reflection probes as we want the cached version to be from main view * Do the thing just for directional * Doc update * changelog Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fix cropping issue with the compositor camera bridge (#4802) Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fix for unused resources in depth of field (#4796) * Removing the word Radii from exposure settings (#4854) * Rename in UX * Update docs * [HDRP][Path Tracing] Support for shadow mattes (#4745) * Shadow matte support. * Updated changelog. * Only take occluders into account, closer match to raster mode. * Added test scene. Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Revert "[HDRP][Path Tracing] Support for shadow mattes (#4745)" This reverts commit 85ebbc2. * Fixed the transparent cutoff not working properly in semi-transparent and color shadows (case 1340234). (#4756) * Fixed the transparent cutoff not working properly in semi-transparent and color shadows (case 1340234). * Update test ref image Co-authored-by: Remi Chapelain <remi.chapelain@unity3d.com> Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Use non jittered projection in outline pass (#4836) Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * [HDRP][Path Tracing] Sky settings now properly taken into account when using recorder (#4856) * Make sure sky settings are correctly set when recording. * Updated changelog. Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fix Resolution Issues for Physically Based Depth of Field (#4848) * Add the necesarry texture coordinate clamping for RTHandle for color pyramid sampling * Add some resolution independence, fitted for 1920x1080 * Changelog * Switch back to point sampling from trilinear, with commentary * Update test reference images * Small correction to the point sampling, always sample mip 0. * Re-update the test images, for mip 0 color sampling * Use a simpler UV scaling/clamping since we are now point sampling. Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fixed bug introduced by sky-for-recorder support. (#4906) * [Fogbugz 1341576] Memory leaks when the player is paused, and the user changes pipeline… (#4845) * Memory leaks when the player is paused, and the user changes pipeline settings * changelog * [HDRP] Fixed shadergraph double save (#4916) * Don't need to save twice shadergraph the first time we create a graph * Updated changelog * Write 0 instead of micro sized motion vectors + fix extremely fast velocities (#4820) * Kill micromovements. * Do same for camera * Debug view update * Changelog * Remove unnecessary comment * Fix excessive velocity end up marked as no velocity Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * [HDRP] Fix material upgrader (#4821) * Fix HDRP material upgrade failing when there is a texture inside the builtin resources assigned in the material * Updated changelog Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * [HDRP] Fix custom pass volume not executed in scene view (#4860) * Fix custom pass volume not executed in scene view because of the volume culling mask * Updated changelog Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fix reflection probe tootltip (#4890) Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Updated the Physically Based Sky documentation for baked lights (#4891) * Updated the Physically Based Sky documentation for baked lights * Rewrite Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fixed remapping of depth pyramid debug (#4893) * Fixed remapping of depth pyramid debug * Removed debug pragma * Update changelog * Updated tooltip * Fix wobble-like (or tearing-like) SSAO issues when temporal reprojection is enabled. (#4895) * Fix AO perceived wobble * changelog Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fix Asymmetric Projection Matrices and Fog / Pathtracing (#4926) * Check for asymmetric projections and choose the generic path if so. * Fix asymmetric projections for the pathtracer ray generation. * Changelog * Simplify the matrix multiplication for computing the generic matrix. Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Revert: Fix wobble-like (or tearing-like) SSAO issues when temporal reprojection… * Fix GBuffer depth debug mode (#5054) * Fixed Volume Gizmo size when rescaling parent GameObject (#4915) * Fix Vertex Color Mode documentation (#4976) * Fix wobble-like (or tearing-like) SSAO issues when temporal reprojection is enabled. (#4986) * Fix AO perceived wobble * changelog * Update screenshots Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fix formatting in NestedOverrideCameraRendering * [HDRP] Fix white flash with SSR when resetting camera history (#5089) * Fix white flash with SSR when resetting camera history * Move branch login inside GetPreviousExposureTexture * Fix for fixed exposure * [Fobguz # 1348357] VFX Particle templates missing stencil flags (#5080) * Adding missing macro for stencil flags in particle forward shaders. This will let flags like TAA Reject be useful * Changelog * Fix object disappearing from lookdev (#5063) * Fixed objects disappearing from Lookdev window when entering playmode (case 1309368). * Updated changelog * Added hideflags in Lookdev context * [HDRP] Fix render object after taa jittering (#5088) * Add a pass after TAA to restore non jittered matrices * updated changelog Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fix GC alloc in hd/bugfix branch (#5134) * Fixed GC alloc on hd/bugfix branch * Fix GC alloc again * Fix refraction tile artifacts near reflection probe edges (#4727) * Pick the right probe at object center instead of tile granularity. * changelog * Missing commit * Move stuff in lightloop and out of prelightData * Update LightLoop.hlsl * Formatting Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fix camera rotation uncontrollable with low framerate (#5076) * Fix camera rotation uncontrollable with low framerate. * updated changelog * Clearing out render targets and randmo write targets on pipeline destruction (#5176) Changelog Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fixed a null ref exception when adding a new environment to the library. (#5131) * Fixed a null ref exception when adding a new environment to the library. * Update changelog Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * FogBugz#1348462 - Wait for accessing the HDProjectSettings instance as it was before. (#5141) * Fix nullref in volume system after deleting a volume object (#5161) * Fix nullref in volume system after deleting a volume object (case 1348374) * Updated changelog Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * [HDRP] Fix APV UI loosing focus when changing a param (#5219) * Fixed the APV UI losing focus when the helpbox about baking appears in the probe volume. * Small changes (#5220) * Fix update order in Graphics Compositor causing jumpy camera updates (#5235) * Prevent material from having infinite intensity (#5132) * Prevent material from having infinite intensity * Fix switching from ldr to hdr emissive * Fix input field precision * Round the max value * Make two variables Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * [HDRP] Adding limitations of decal emissive positive contribution to the documentation (#5237) * Add emissive positive contribution limitation to the doc * changelog * Update CHANGELOG.md * Update Decal-Projector.md * Update Decal-Shader.md Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * [HDRP] Fix issue with path tracing when switching between non-persistent cameras (#5246) * Fix issue with path traceing accumulation when switching between cameras. * Check if camera history is persistent Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * removed undesired files * Fix log base (#5260) * [HDRP] Fixed mask value stored by the LayerMaskParameter class (#5250) * Fixed value stored by the layer mask parameter class. * Updated changelog. Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * [HDRP][DXR] Make vertex color default to 1.0 instead of 0.0 (#5268) * When raytracing, make vertex color default to white if not present. * Updated Changelog. * Added comment. * Fix issue with 0-sized dispatch with extremely low resolutions (#5272) * Ceil to int instead. * changelog * [HDRP] Fix incorrect light list indexing when TAA is enabled (#5287) * Fix incorrect light list indexing when TAA is enabled * Better handle XR Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fix incorrect additiona velocity for alembic (#5304) * Fixed LUT initialization in Wireframe mode (#5156) Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * [HDRP] [LightExplorer] Fix missing refreshwhen editing property with a running paused editor. (#5321) * Update HDLightExplorerExtension.cs * Update CHANGELOG.md * Changed Ambient Mode to Dynamic by default (#5350) * Visual Environment component ambient mode now defaults to Dynamic. * Update changelog * Updated test scene with correct ambient mode after the change * Missing files * Last scene fix * Hd/fix framesettings ordering (#5323) * Fix strange entry in the FrameSettings and add comments for better readability * Update CHANGELOG.md Co-authored-by: JulienIgnace-Unity <julien@unity3d.com> * Bugfix 1357311: Fixed old ray tracing material conversion (#5364) * - fixed crash in material conversion where material used old raytracing render queue (3900) * - changelog update # Conflicts: # com.unity.render-pipelines.high-definition/CHANGELOG.md * Bugfix 1358480: Fixed missing tooltip for "Tessellation Mode" (#5365) * - fixed missing "Tessellation Mode" tooltip * - update changelog * - updated "Tessellation Mode" tooltip Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * [HDRP] Fix HD template (particularly visible in path tracing) (#5319) * Made the 3 light bulbs non shadow-casting. * Revert "Made the 3 light bulbs non shadow-casting." This reverts commit f32ba7d. * Changed bulb prefab (shadow caster off). * Revert: Changed Ambient Mode to Dynamic by default #5350 * Fixed a null ref exception when no opaque objects are rendered. (#5463) * Fixed a null ref exception when no opaque objects are rendered. * Update changelog * Fix slope scale depth bias when depth offset is ON (#5466) * Fix slope scale bias being broken when depth offset was enabled * changelog Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * [HDRP] Fix spot shadow sampling when using custom spot angle (#5439) * Fixed shadow sampling artifact when using the spot light shadow option 'custom spot angle' * Updated changelog Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fix darkening in SSR fade (#5472) * Fix * Changelog Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * [HDRP] Improve path traced subsurface scattering for transmissive surfaces (#5485) * Improve subsurface scatering for transmissive surfaces * Add changelog + fix throughput multiplication Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fix missing context menu for 'Post Anti-Aliasing' in Camera (1357283) (#5497) Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Force allocate texture if no fallback is available (#5130) Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Update path tracer screenshots * Update 2314_Shadow_CustonAngle.png * Fix range compression factor clamping (#5892) Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fixed tooltip not showing on labels in ShaderGraphs (#5877) Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Proper format for copy history (#5796) * Fix shadow mask fade and optimize it at same time (#5911) * Fix shadow mask fade and optimize. * changelog * Fix wrong format for contact shadows and shadow atlas default textures (#5912) * Fix contact shadows not being bound in debug and good default shadow * changelog * Rename * Handle more edge cases where shadows are not drawn to atlas (disabled scene view lighting) Co-authored-by: John Parsaie <johnpa@unity3d.com> Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fixed an issue where probe being forced realtime would cause perf to degrade greatly when manipulating them in editor. (#5901) * Mark anchor override as not supported for probes (#5939) * Revert: Fix shadow mask fade and optimize it at same time #5911 * Add info on After post-process info box (#6125) * Add info on info box * Clarify a bit better * Dynamic Ambient improvement and doc update (#5951) * Avoided unnecessary ambient probe updates Updated doc with dynamic ambient probe limitations * Update Environment-Lighting.md Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * [SRP] Fix issue when changing volume profiles at runtime with a script (#5882) * Fix issue when changing volume profiles in runtime with a script * Add new kine in changelog * Improve comment * Changelog typo Co-authored-by: sebastienlagarde <sebastien@unity3d.com> * Fix NaN on Intel GPU when using PBR Sky and rendering sun disk (#6145) * Enable debug symbols * tentative * test using cos from cpu * Finalize fix * Missing file * Remove debug symbols. * Fix Luminance/EV conversion when LightMeterCalibrationConstant is changed (#6115) * Fix formmating Co-authored-by: Pavlos Mavridis <pavlos.mavridis@unity3d.com> Co-authored-by: FrancescoC-unity <43168857+FrancescoC-unity@users.noreply.github.com> Co-authored-by: John Parsaie <johnpa@unity3d.com> Co-authored-by: anisunity <42026998+anisunity@users.noreply.github.com> Co-authored-by: Antoine Lelievre <antoinel@unity3d.com> Co-authored-by: CifaCia <f.cifariellociardi@gmail.com> Co-authored-by: Adrien de Tocqueville <adrien.tocqueville@unity3d.com> Co-authored-by: slunity <37302815+slunity@users.noreply.github.com> Co-authored-by: Remi Chapelain <remi.chapelain@unity3d.com> Co-authored-by: Emmanuel Turquin <emmanuel@turquin.org> Co-authored-by: Adrian1066 <44636759+Adrian1066@users.noreply.github.com> Co-authored-by: Kleber Garcia <kleber.garcia@unity3d.com> Co-authored-by: Julien Ignace <julien@unity3d.com> Co-authored-by: alex-vazquez <76204843+alex-vazquez@users.noreply.github.com> Co-authored-by: Rémi Chapelain <57442369+remi-chapelain@users.noreply.github.com> Co-authored-by: Remi Slysz <40034005+RSlysz@users.noreply.github.com> Co-authored-by: Jarkko Lempiäinen <79095390+JarkkoUnity@users.noreply.github.com>
1 parent 1925c76 commit 3b28ecd

File tree

13 files changed

+64
-12
lines changed

13 files changed

+64
-12
lines changed

com.unity.render-pipelines.core/CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,9 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
1212
- Added new DebugUI widget types: ProgressBarValue and ValueTuple
1313
- Added common support code for FSR
1414

15+
### Fixed
16+
- Fixed issue when changing volume profiles at runtime with a script (case 1364256).
17+
1518
## [13.1.0] - 2021-09-24
1619

1720
### Added

com.unity.render-pipelines.core/Editor/Volume/VolumeEditor.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,8 @@ void RefreshEffectListEditor(VolumeProfile asset)
7171
{
7272
m_ComponentList.Clear();
7373

74+
asset.Sanitize();
75+
7476
if (asset != null)
7577
m_ComponentList.Init(asset, new SerializedObject(asset));
7678
}

com.unity.render-pipelines.core/Runtime/Volume/VolumeProfile.cs

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -313,5 +313,15 @@ internal int GetComponentListHashCode()
313313
return hash;
314314
}
315315
}
316+
317+
/// <summary>
318+
/// Removes any components that were destroyed externally from the iternal list of components
319+
/// </summary>
320+
internal void Sanitize()
321+
{
322+
for (int i = components.Count - 1; i >= 0; i--)
323+
if (components[i] == null)
324+
components.RemoveAt(i);
325+
}
316326
}
317327
}

com.unity.render-pipelines.high-definition/CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
5858
- Fixed Shadow Matte not appearing in ray tracing effects (case 1364005).
5959
- Fixed Crash issue when adding an area light on its own.
6060
- Fixed rendertarget ColorMask in Forward with virtual texturing and transparent motion vectors.
61+
- Fixed light unit conversion after changing mid gray value.
6162

6263
### Changed
6364
- Use RayTracingAccelerationStructure.CullInstances to filter Renderers and populate the acceleration structure with ray tracing instances for improved CPU performance on the main thread.

com.unity.render-pipelines.high-definition/Documentation~/Environment-Lighting.md

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ In the High Definition Render Pipeline (HDRP), there are two parts to environmen
99
Essentially, you use the visual environment to control how the sky looks in your Scene and use the lighting environment to control how the sky contributes to indirect ambient lighting.
1010

1111
## Visual Environment
12-
The Visual Environment is a Volume override that tells HDRP what type of [sky](HDRP-Features.md#sky) and [fog](HDRP-Features.md#fog) you want to see through Cameras that the Volume affects. For information on how to customize Visual Environments, see the [Visual Environment](Override-Visual-Environment.md) documentation.
12+
The Visual Environment is a Volume override that tells HDRP what type of [sky](HDRP-Features.md#sky) you want to see through Cameras that the Volume affects. For information on how to customize Visual Environments, see the [Visual Environment](Override-Visual-Environment.md) documentation.
1313

1414
Your Unity Project’s [HDRP Asset](HDRP-Asset.md) has the following properties that also affect all Visual Environments:
1515

@@ -66,7 +66,15 @@ HDRP uses the ambient Light Probe as the final fallback for indirect diffuse lig
6666
- Mesh Renderers that have their **Light Probe Mode** set to **Off**
6767
- Volumetric fog if the Global Light Probe dimmer is set to a value above 0
6868

69-
The ambient Light Probe can be static (generated only once) or dynamic (updated at runtime).**Note**: If there is a **Light Probe group** in your Scene and you have computed indirect ambient lighting, then the Ambient Light Probe only affects Mesh Renderers that have their **Light Probe Mode** set to **Off**, and that have **Volumetric fog** (if it’s enabled in the Scene).
69+
The ambient Light Probe can be static (generated only once from the static lighting sky set in the HDRP **Environment (HDRP)**panel) or dynamic (updated at runtime from the sky currently in use).
70+
71+
***\*Note\****: If there is a ***\*Light Probe group\**** in your Scene and you have computed indirect ambient lighting, then the Ambient Light Probe only affects Mesh Renderers that have their ***\*Light Probe Mode\**** set to ***\*Off\****, and that have ***\*Volumetric fog\**** (if it’s enabled in the Scene).
72+
73+
### Limitation of Dynamic Ambient mode
74+
75+
The Ambient Light Probe always affects your scene one frame late after HDRP calculates it. This is because HDRP calculates Ambient Light Probes on the GPU and then uses asynchronous readback on the CPU.
76+
77+
As a result, the ambient lighting might not match the actual lighting and cause visual artifacts. This can happen when you use the dynamic ambient mode and use reflection probes that update on demand.
7078

7179
## Ambient Reflection Probe
7280

com.unity.render-pipelines.high-definition/Editor/Material/UIBlocks/EmissionUIBlock.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,9 @@ namespace UnityEditor.Rendering.HighDefinition
1515
/// </summary>
1616
public class EmissionUIBlock : MaterialUIBlock
1717
{
18-
static float s_MaxEvValue = Mathf.Floor(LightUtils.ConvertLuminanceToEv(float.MaxValue)) - 1;
18+
// Max EV Value. Equals to LightUtils.ConvertLuminanceToEv(float.MaxValue)
19+
// Literal value to avoid precision issue with max float and to be independent of ColorUtils.s_LightMeterCalibrationConstant.
20+
static float s_MaxEvValue = 130.0f;
1921

2022
/// <summary>Options for emission block features. Use this to control which fields are visible.</summary>
2123
[Flags]

com.unity.render-pipelines.high-definition/Editor/Material/UIBlocks/SurfaceOptionUIBlock.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,7 @@ internal static class Styles
142142

143143
public static GUIContent opaqueCullModeText = new GUIContent("Cull Mode", "For opaque objects, change the cull mode of the object.");
144144

145-
public static string afterPostProcessZTestInfoBox = "After post-process material wont be ZTested. Enable the \"ZTest For After PostProcess\" checkbox in the Frame Settings to force the depth-test if the TAA is disabled.";
145+
public static string afterPostProcessInfoBox = "If After post-process objects don't render, make sure to enable \"After Post-process\" in the frame settings.\nAfter post-process material wont be ZTested. Enable the \"ZTest For After PostProcess\" checkbox in the Frame Settings to force the depth-test if the TAA is disabled.";
146146

147147
public static readonly GUIContent[] displacementModeLitNames = new GUIContent[] { new GUIContent("None"), new GUIContent("Vertex displacement"), new GUIContent("Pixel displacement") };
148148
public static readonly int[] displacementModeLitValues = new int[] { (int)DisplacementMode.None, (int)DisplacementMode.Vertex, (int)DisplacementMode.Pixel };
@@ -590,7 +590,7 @@ protected void DrawSurfaceGUI()
590590

591591
void ShowAfterPostProcessZTestInfoBox()
592592
{
593-
EditorGUILayout.HelpBox(Styles.afterPostProcessZTestInfoBox, MessageType.Info);
593+
EditorGUILayout.HelpBox(Styles.afterPostProcessInfoBox, MessageType.Info);
594594
}
595595

596596
void SurfaceTypePopup()

com.unity.render-pipelines.high-definition/Runtime/Lighting/LightUtils.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ namespace UnityEngine.Rendering.HighDefinition
88
/// </summary>
99
class LightUtils
1010
{
11-
static float s_LuminanceToEvFactor = Mathf.Log(100f / ColorUtils.s_LightMeterCalibrationConstant, 2);
12-
static float s_EvToLuminanceFactor = -Mathf.Log(100f / ColorUtils.s_LightMeterCalibrationConstant, 2);
11+
static float s_LuminanceToEvFactor => Mathf.Log(100f / ColorUtils.s_LightMeterCalibrationConstant, 2);
12+
static float s_EvToLuminanceFactor => -Mathf.Log(100f / ColorUtils.s_LightMeterCalibrationConstant, 2);
1313

1414
// Physical light unit helper
1515
// All light unit are in lumen (Luminous power)

com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/HDStringConstants.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -581,6 +581,7 @@ static class HDShaderIDs
581581
public static readonly int _SpaceEmissionMultiplier = Shader.PropertyToID("_SpaceEmissionMultiplier");
582582

583583
public static readonly int _RenderSunDisk = Shader.PropertyToID("_RenderSunDisk");
584+
public static readonly int _SunDiskCosines = Shader.PropertyToID("_SunDiskCosines");
584585

585586
public static readonly int _ColorSaturation = Shader.PropertyToID("_ColorSaturation");
586587
public static readonly int _AlphaSaturation = Shader.PropertyToID("_AlphaSaturation");

com.unity.render-pipelines.high-definition/Runtime/Sky/PhysicallyBasedSky/PhysicallyBasedSky.shader

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ Shader "Hidden/HDRP/Sky/PbrSky"
44

55
#pragma vertex Vert
66

7-
// #pragma enable_d3d11_debug_symbols
87
#pragma editor_sync_compilation
98
#pragma target 4.5
109
#pragma only_renderers d3d11 playstation xboxone xboxseries vulkan metal switch
@@ -26,6 +25,13 @@ Shader "Hidden/HDRP/Sky/PbrSky"
2625
float _GroundEmissionMultiplier;
2726
float _SpaceEmissionMultiplier;
2827

28+
// Inner and outer cosine computed as:
29+
// float radInner = 0.5 * light.angularDiameter
30+
// float cosInner = cos(radInner); // (In _SunDiskCosines.x)
31+
// float cosOuter = cos(radInner + light.flareSize); // (In _SunDiskCosines.y)
32+
// We need to pass it over instead of computing it here because on some vendors trigonometry has very bad precision, so we precompute what we can on CPU to have better precision.
33+
float4 _SunDiskCosines;
34+
2935
// Sky framework does not set up global shader variables (even per-view ones),
3036
// so they can contain garbage. It's very difficult to not include them, however,
3137
// since the sky framework includes them internally in many header files.
@@ -111,8 +117,9 @@ Shader "Hidden/HDRP/Sky/PbrSky"
111117
float LdotV = -dot(L, V);
112118
float rad = acos(LdotV);
113119
float radInner = 0.5 * light.angularDiameter;
114-
float cosInner = cos(radInner);
115-
float cosOuter = cos(radInner + light.flareSize);
120+
121+
float cosInner = _SunDiskCosines.x;
122+
float cosOuter = _SunDiskCosines.y;
116123

117124
float solidAngle = TWO_PI * (1 - cosInner);
118125

0 commit comments

Comments
 (0)