Skip to content

Merge 8.x.x/hd/staging #2652

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 30 commits into from
Nov 17, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
64aea03
Fix for potentially corrupted refraction result on xbox #1699
FrancescoC-unity Sep 9, 2020
7b755f9
Update HDRenderPipeline.LookDev.cs (#1740)
sebastienlagarde Sep 1, 2020
19f1427
Update Layered-Lit-Shader #1766
JordanL8 Sep 3, 2020
951c51d
Fix for assertion on undoing a mod of diffuse profile list with volum…
FrancescoC-unity Sep 4, 2020
a69f0db
Fixed two issues with sky static lighting. #1775
JulienIgnace-Unity Sep 8, 2020
cd866be
Better tooltip for exposure weight on emission fields. #1821
FrancescoC-unity Sep 11, 2020
b094bee
Fix rendering of custom passes in the Custom Pass Volume inspector #1824
adrien-de-tocqueville Sep 25, 2020
1f4be58
Updated the implementation details for pb sky (#1872)
JordanL8 Sep 14, 2020
7cdb5bb
Fixed typo in TextureCache2D.cs (#1896)
alelievr Sep 16, 2020
6a042bd
Add disclaimer about object motion vectors not working in the scene v…
JordanL8 Sep 16, 2020
0568ebf
Fix double addition to sorted volume lists #1916
FrancescoC-unity Sep 25, 2020
159f7c5
Fix issues with bloom sampling outside #1930
FrancescoC-unity Oct 1, 2020
0080e6e
fix case 1244430 removing camera comp from prefab #1953
martint-unity Oct 3, 2020
cd69898
Fix nan in the pbr sky #1983
adrien-de-tocqueville Oct 3, 2020
a80183d
[HDRP][LookDev] Ensure stylesheet are loaded before applying them on …
jenniferd-unity Oct 3, 2020
ecf93a6
Fix Custom Post Process affecting preview cameras #1988
alelievr Sep 29, 2020
3f96ed9
Fix box light disappearing when range is below 1 and no range attenua…
FrancescoC-unity Sep 30, 2020
12de2e3
Fix matcap preferences serialization issue #2013
FrancescoC-unity Sep 25, 2020
6949228
[Backport 8.x.x] Fixed error Maximum allowed thread group count is 65…
FrancescoC-unity Nov 17, 2020
db2c7c2
Update Feature-Comparison.md (#2111)
Vic-Cooper Oct 7, 2020
c5634ea
Remove XRSystemTests #2241
fabien-unity Oct 15, 2020
6fee9a3
HDRP - Fix XR shadows culling #2263
fabien-unity Oct 30, 2020
f3e9b64
Fix volument component creation via script #2369
adrien-de-tocqueville Oct 26, 2020
e583480
Adding support for CloudRendering to HDRP #2436
wackoisgod Oct 29, 2020
6da3052
Fix light resolution scalable settings in the Light Explorer #2470
adrien-de-tocqueville Oct 30, 2020
1420e96
[HDRP] Fix issue when changing FoV with the physical camera fold-out …
pmavridis Nov 10, 2020
f267d20
[Backport 8.x.x] Fix issue with previous frame exposure texture being…
FrancescoC-unity Nov 17, 2020
749a368
Added a warning when trying to bake with static lighting being in an …
JulienIgnace-Unity Nov 13, 2020
37dace1
Fix volumetric fog nan #2174
sebastienlagarde Nov 17, 2020
9789b7f
Fixed a null ref in the volume component list when there is no volume…
JulienIgnace-Unity Jul 16, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 5 additions & 2 deletions com.unity.render-pipelines.core/Editor/FilterWindow.cs
Original file line number Diff line number Diff line change
Expand Up @@ -455,8 +455,11 @@ void HandleKeyboard()

if (evt.keyCode == KeyCode.Return || evt.keyCode == KeyCode.KeypadEnter)
{
GoToChild(m_ActiveElement, true);
evt.Use();
if (m_ActiveElement != null)
{
GoToChild(m_ActiveElement, true);
evt.Use();
}
}

// Do these if we're not in search mode
Expand Down
59 changes: 40 additions & 19 deletions com.unity.render-pipelines.core/Editor/LookDev/DisplayWindow.cs
Original file line number Diff line number Diff line change
Expand Up @@ -216,24 +216,48 @@ event Action IViewDisplayer.OnUpdateRequested
StyleSheet styleSheet = null;
StyleSheet styleSheetLight = null;

void OnEnable()
void ReloadStyleSheets()
{
//Stylesheet
// Try to load stylesheet. Timing can be odd while upgrading packages (case 1219692).
// In this case, it will be fixed in OnGUI. Though it can spawn error while reimporting assets.
// Waiting for filter on stylesheet (case 1228706) to remove last error.
if (styleSheet == null || styleSheet.Equals(null))
if(styleSheet == null || styleSheet.Equals(null))
{
styleSheet = AssetDatabase.LoadAssetAtPath<StyleSheet>(Style.k_uss);
if (styleSheet != null && !styleSheet.Equals(null))
rootVisualElement.styleSheets.Add(styleSheet);
if(styleSheet == null || styleSheet.Equals(null))
{
//Debug.LogWarning("[LookDev] Could not load Stylesheet.");
return;
}
}
if (!EditorGUIUtility.isProSkin && styleSheetLight != null && !styleSheetLight.Equals(null))

if(!rootVisualElement.styleSheets.Contains(styleSheet))
rootVisualElement.styleSheets.Add(styleSheet);

//Additively load Light Skin
if(!EditorGUIUtility.isProSkin)
{
styleSheetLight = AssetDatabase.LoadAssetAtPath<StyleSheet>(Style.k_uss_personal_overload);
if (styleSheetLight != null && !styleSheetLight.Equals(null))
if(styleSheetLight == null || styleSheetLight.Equals(null))
{
styleSheetLight = AssetDatabase.LoadAssetAtPath<StyleSheet>(Style.k_uss_personal_overload);
if(styleSheetLight == null || styleSheetLight.Equals(null))
{
//Debug.LogWarning("[LookDev] Could not load Light skin.");
return;
}
}

if(!rootVisualElement.styleSheets.Contains(styleSheetLight))
rootVisualElement.styleSheets.Add(styleSheetLight);
}
}

void OnEnable()
{
//Stylesheet
// Try to load stylesheet. Timing can be odd while upgrading packages (case 1219692).
// In this case, it will be fixed in OnGUI. Though it can spawn error while reimporting assets.
// Waiting for filter on stylesheet (case 1228706) to remove last error.
// On Editor Skin change, OnEnable is called and stylesheets need to be reloaded (case 1278802).
if(EditorApplication.isUpdating)
ReloadStyleSheets();

//Call the open function to configure LookDev
// in case the window where open when last editor session finished.
Expand Down Expand Up @@ -681,14 +705,11 @@ void OnGUI()
// rootVisualElement.styleSheets.Add(styleSheetLight);
//}
}
else
{
//deal with missing style when domain reload...
if (!rootVisualElement.styleSheets.Contains(styleSheet))
rootVisualElement.styleSheets.Add(styleSheet);
if (!EditorGUIUtility.isProSkin && !rootVisualElement.styleSheets.Contains(styleSheetLight))
rootVisualElement.styleSheets.Add(styleSheetLight);
}
if(EditorApplication.isUpdating)
return;

//deal with missing style on domain reload...
ReloadStyleSheets();

// [case 1245086] Guard in case the SRP asset is set to null (or to a not supported SRP) when the lookdev window is already open
// Note: After an editor reload, we might get a null OnUpdateRequestedInternal and null SRP for a couple of frames, hence the check.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -119,8 +119,14 @@ void OnUndoRedoPerformed()

// Dumb hack to make sure the serialized object is up to date on undo (else there'll be
// a state mismatch when this class is used in a GameObject inspector).
m_SerializedObject.Update();
m_SerializedObject.ApplyModifiedProperties();
if (m_SerializedObject != null
&& !m_SerializedObject.Equals(null)
&& m_SerializedObject.targetObject != null
&& !m_SerializedObject.targetObject.Equals(null))
{
m_SerializedObject.Update();
m_SerializedObject.ApplyModifiedProperties();
}

// Seems like there's an issue with the inspector not repainting after some undo events
// This will take care of that
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,8 @@ public void Register(Volume volume, int layer)
// Look for existing cached layer masks and add it there if needed
foreach (var kvp in m_SortedVolumes)
{
if ((kvp.Key & (1 << layer)) != 0)
// We add the volume to sorted lists only if the layer match and if it doesn't contain the volume already.
if ((kvp.Key & (1 << layer)) != 0 && !kvp.Value.Contains(volume))
kvp.Value.Add(volume);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,10 @@ public VolumeComponent Add(Type type, bool overrides = false)
throw new InvalidOperationException("Component already exists in the volume");

var component = (VolumeComponent)CreateInstance(type);
#if UNITY_EDITOR
component.hideFlags = HideFlags.HideInInspector | HideFlags.HideInHierarchy;
component.name = type.Name;
#endif
component.SetAllOverridesTo(overrides);
components.Add(component);
isDirty = true;
Expand Down
26 changes: 26 additions & 0 deletions com.unity.render-pipelines.high-definition/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.

## [8.3.1] - 2020-07-23

### Added
- Added a warning when trying to bake with static lighting being in an invalid state.

### Fixed
- Fixed issue in Material Postprocess which may fail due to empty SubAsset.
- Fixed a null ref exception when baking reflection probes.
Expand All @@ -25,10 +28,33 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
- Fixed "Screen position out of view frustum" error when camera is at exactly the planar reflection probe location.
- Fixed issue with diffusion profile not being updated upon reset of the editor.
- Fixed Amplitude -> Min/Max parametrization conversion
- Fixed an issue that lead to corrupted refraction in some scenarios on xbox.
- Fixed issue when undoing a change in diffuse profile list after deleting the volume profile.
- Fixed a static lighting flickering issue caused by having an active planar probe in the scene while rendering inspector preview.
- Fixed an issue where even when set to OnDemand, the sky lighting would still be updated when changing sky parameters.
- Fixed SSS materials appearing black in matcap mode.
- Fixed rendering of custom passes in the Custom Pass Volume inspector
- Fixed issue with volume manager trying to access a null volume.
- Fixed issue with bloom showing a thin black line after rescaling window.
- Fixed an issue that caused a null reference when deleting camera component in a prefab. (case 1244430)
- Fixed nan in pbr sky
- Fixed Light skin not properly applied on the LookDev when switching from Dark Skin (case 1278802)
- Fixed Custom Post Processes affecting preview cameras.
- Fixed issue with box light not visible if range is below one and range attenuation is off.
- Fixed serialization issue with matcap scale intensity.
- Fixed error Maximum allowed thread group count is 65535 when resolution is very high.
- Fixed XR shadows culling
- Fixed volument component creation via script.
- Fixed shadow resolution settings level in the light explorer.
- Fixed issue when changing FoV with the physical camera fold-out closed.
- Fixed issue with exposure history being uninitialized on second frame.
- Fixed nan in reflection probe when volumetric fog filtering is enabled, causing the whole probe to be invalid.
- Fixed a null ref in the volume component list when there is no volume components in the project.

### Changed
- Remove MSAA debug mode when renderpipeline asset has no MSAA
- Reduced the number of global keyword used in deferredTile.shader
- Removed XRSystemTests. The GC verification is now done during playmode tests (case 1285012).

## [8.2.0] - 2020-07-08

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -365,7 +365,7 @@ The tables that follow provide an overview of the **Features** that the High Def

| **Feature** | **Built-in Render Pipeline** | **High Definition Render Pipeline (HDRP)** |
| ------------- | ------------------------ | ------------------------------- |
| AR Foundation | No | No |
| AR Foundation | Yes | No |

## Debug

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -90,19 +90,19 @@ Unity exposes up to four Material layers for you to use in your Layered Material
| **Smoothness Remapping** | Use this min-max slider to remap the smoothness values from the **Mask Map** to the range you specify. Rather than [clamping](https://docs.unity3d.com/ScriptReference/Mathf.Clamp.html) values to the new range, Unity condenses the original range down to the new range uniformly.<br />This property only appears when you assign a **Mask Map**. |
| **Ambient Occlusion Remapping** | Use this min-max slider to remap the ambient occlusion values from the **Mask Map** to the range you specify. Rather than [clamping](https://docs.unity3d.com/ScriptReference/Mathf.Clamp.html) values to the new range, Unity condenses the original range down to the new range uniformly.<br />This property only appears when you assign a **Mask Map**. |
| **Mask Map** | Assign a [channel-packed Texture](Glossary.html#ChannelPacking) with the following Material maps in its RGBA channels.<br />&#8226; **Red**: Stores the metallic map. <br />&#8226; **Green**: Stores the ambient occlusion map.<br />&#8226; **Blue**: Stores the detail mask map.<br />&#8226; **Alpha**: Stores the smoothness map.<br />For more information on channel-packed Textures and the mask map, see [mask map](Mask-Map-and-Detail-Map.html#MaskMap). |
| **Normal Map Space** | Use this drop-down to select the type of Normal Map space that this Material uses.**TangentSpace**: Defines the normal map in UV space; use this to tile a Texture on a Mesh. The normal map Texture must be BC7, BC5, or DXT5nm format. **ObjectSpace**: Defines the normal maps in world space. Use this for planar-mapping objects like the terrain. The normal map must be an RGB Texture . |
| **Normal Map Space** | Use this drop-down to select the type of Normal Map space that this Material uses.<br />&#8226; **TangentSpace**: Defines the normal map in UV space; use this to tile a Texture on a Mesh. The normal map Texture must be BC7, BC5, or DXT5nm format.<br />&#8226; **ObjectSpace**: Defines the normal maps in world space. Use this for planar-mapping objects like the terrain. The normal map must be an RGB Texture . |
| **Normal Map** | Assign a Texture that defines the normal map for this Material in tangent space. Use the slider to modulate the normal intensity between 0 and 8.<br />This property only appears when you select **TangentSpace** from the **Normal Map Space** drop-down. |
| **Normal Map OS** | Assign a Texture that defines the object space normal map for this Material. Use the handle to modulate the normal intensity between 0 and 8.<br />This property only appears when you select **ObjectSpace** from the **Normal Map Space** drop-down. |
| **Bent Normal Map** | Assign a Texture that defines the bent normal map for this Material in tangent space. HDRP uses bent normal maps to simulate more accurate ambient occlusion. Note: Bent normal maps only work with diffuse lighting.<br />This property only appears when you select **TangentSpace** from the **Normal Map Space** drop-down.. |
| **Bent Normal Map OS** | Assign a Texture that defines the bent normal map for this Material in object space. HDRP uses bent normal maps to simulate more accurate ambient occlusion. Note: Bent normal maps only work with diffuse lighting.<br />This property only appears when you select **ObjectSpace** from the **Normal Map Space** drop-down. |
| **Height Map** | Assign a Texture that defines the heightmap for this Material. Unity uses this map to blend this layer. |
| **- Parametrization** | Use the drop-down to select the parametrization method for the to use for the **Height Map**.**Min/Max**: HDRP compares the **Min** and **Max** value to calculate the peak, trough, and base position of the heightmap. If the **Min** is -1 and the **Max** is 3, then the base is at the Texture value 0.25. This uses the full range of the heightmap.**Amplitude**: Allows you to manually set the amplitude and base position of the heightmap. This uses the full range of the heightmap. |
| **- Parametrization** | Use the drop-down to select the parametrization method for the to use for the **Height Map**.<br />&#8226; **Min/Max**: HDRP compares the **Min** and **Max** value to calculate the peak, trough, and base position of the heightmap. If the **Min** is -1 and the **Max** is 3, then the base is at the Texture value 0.25. This uses the full range of the heightmap.<br />&#8226; **Amplitude**: Allows you to manually set the amplitude and base position of the heightmap. This uses the full range of the heightmap. In this mode, **Amplitude** sets the range of values and **Base** defines how far through the range the zero value (base) is. For example, if **Amplitude** is 100 and **Base** is 0.5 (the default value), the minimum value is -50 and the maximum value if 50. If you then set **Base** to 0, the minimum value becomes 0 and the maximum value becomes 100. |
| **- Min** | Set the minimum value in the **Height Map**. |
| **- Max** | Set the maximum value in the **Height Map**. |
| **- Offset** | Set the offset that HDRP applies to the **Height Map**. |
| **- Amplitude** | Set the amplitude of the **Height Map**. |
| **- Base** | Use the slider to set the base for the **Height Map**. |
| **Base UV Mapping** | Use the drop-down to select the type of UV mapping that HDRP uses to map Textures to this Material’s surface.Unity manages four UV channels for a vertex: **UV0**, **UV1**, **UV2**, and **UV3**.**Planar:** A planar projection from top to bottom. **Triplanar**: A planar projection in three directions:X-axis: Left to rightY-axis: Top to bottomZ-axis: Front to back Unity blends these three projections together to produce the final result. |
| **- Amplitude** | Set the amplitude of the **Height Map**. This is the range of values the height map represents. |
| **- Base** | Use the slider to set the base for the **Height Map**. This is the value of the level 0 in the height map. If you set this to 0.5 and set **Amplitude** to 100, the minimum value is -50 and the maximum value is 50. |
| **Base UV Mapping** | Use the drop-down to select the type of UV mapping that HDRP uses to map Textures to this Material’s surface.<br />&#8226; Unity manages four UV channels for a vertex: **UV0**, **UV1**, **UV2**, and **UV3**.<br />&#8226; **Planar:** A planar projection from top to bottom.<br />&#8226; **Triplanar**: A planar projection in three directions:X-axis: Left to rightY-axis: Top to bottomZ-axis: Front to back Unity blends these three projections together to produce the final result. |
| **Tiling** | Set an **X** and **Y** UV tile rate for all of the Textures in the **Surface Inputs** section. HDRP uses the **X** and **Y** values to tile these Textures across the Material’s surface, in object space. |
| **Offset** | Set an **X** and **Y** UV offset for all of the Textures in the **Surface Inputs** section. HDRP uses the **X** and **Y** values to offset these Textures across the Material’s surface, in object. |

Expand All @@ -128,7 +128,7 @@ Unity exposes up to four Material layers for you to use in your Layered Material
| **Emission UV Mapping** | Use the drop-down to select the type of UV mapping that HDRP uses for the **Emission Map**.• Unity manages four UV channels for a vertex: **UV0**, **UV1**, **UV2**, and **UV3**.• **Planar:** A planar projection from top to bottom.• **Triplanar**: A planar projection in three directions:X-axis: Left to rightY-axis: Top to bottomZ-axis: Front to back Unity blends these three projections together to produce the final result. |
| **- Tiling** | Set an **X** and **Y** tile rate for the **Emission Map** UV. HDRP uses the **X** and **Y** values to tile the Texture assigned to the **Emission Map** across the Material’s surface, in object space. |
| **- Offset** | Set an **X** and **Y** offset for the **Emission Map** UV. HDRP uses the **X** and **Y** values to offset the Texture assigned to the **Emission Map** across the Material’s surface, in object space. |
| **Emission Intensity** | Set the overall strength of the emission effect for this Material.Use the drop-down to select one of the following [physical light units](Physical-Light-Units.html) to use for intensity:[Nits](Physical-Light-Units.html#Nits)[EV<sub>100</sub>](Physical-Light-Units.html#EV) |
| **Emission Intensity** | Set the overall strength of the emission effect for this Material.Use the drop-down to select one of the following [physical light units](Physical-Light-Units.md) to use for intensity:<br />&#8226; [Nits](Physical-Light-Units.md#Nits)<br />&#8226; [EV<sub>100</sub>](Physical-Light-Units.md#EV) |
| **Exposure Weight** | Use the slider to set how much effect the exposure has on the emission power. For example, if you create a neon tube, you would want to apply the emissive glow effect at every exposure. |
| **Emission Multiply with Base** | Enable the checkbox to make HDRP use the base color of the Material when it calculates the final color of the emission. When enabled, HDRP multiplies the emission color by the base color to calculate the final emission color. |
| **Emission** | Toggles whether emission affects global illumination. |
Expand Down
Loading