Skip to content

Commit 9c18204

Browse files
Internal/master
Internal/master
2 parents c085dd1 + e354586 commit 9c18204

File tree

918 files changed

+26660
-22275
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

918 files changed

+26660
-22275
lines changed

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

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,11 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
1010
Version Updated
1111
The version number for this package has increased due to a version update of a related graphics package.
1212

13+
## [17.4.0] - 2025-10-22
14+
15+
This version is compatible with Unity 6000.4.0a4.
16+
For the release notes, refer to the [Unity download archive](https://unity.com/releases/editor/archive).
17+
1318
## [17.3.0] - 2025-08-27
1419

1520
This version is compatible with Unity 6000.3.0b1.
6.9 KB
Loading

Packages/com.unity.render-pipelines.core/Documentation~/TableOfContents.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@
3636
* [Customize the UI of a setting](customize-ui-for-a-setting.md)
3737
* [Get custom graphics settings](get-custom-graphics-settings.md)
3838
* [Include or exclude a setting in your build](choose-whether-unity-includes-a-graphics-setting-in-your-build.md)
39+
* [Advanced Properties](advanced-properties.md)
3940
* [Shaders](shaders.md)
4041
* [Use shader methods from the SRP Core shader library](built-in-shader-methods.md)
4142
* [Synchronizing shader code and C#](generating-shader-includes.md)

Packages/com.unity.render-pipelines.core/Documentation~/advanced-properties.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,29 +12,29 @@ There is a global state per user that stores if Unity displays **advanced proper
1212
## Exposing advanced properties within the inspector
1313

1414
Not every component or Volume Override includes advanced properties.
15-
If one does, it has a contextual menu to the right of each property section header that includes additional properties. To expose advanced properties for that section, open the contextual menu and click **Advanced Properties**.
15+
If one does, it has a contextual menu to the right of each property section header that includes additional properties. To expose advanced properties for that section, open the contextual menu and click **Show All Advanced Properties**.
1616

1717
For an example, refer to the **Water Surface** component in [High Definition Render Pipeline (HDRP)](https://docs.unity3d.com/Packages/com.unity.render-pipelines.high-definition@latest?subfolder=/manual/settings-and-properties-related-to-the-water-system.html).
1818

1919
By default only standard properties are shown.
2020

2121
![](Images/Preferences/HDRP_WaterSurface_General.png)
2222

23-
When you select **Advanced Properties**:
23+
When you select **Show All Advanced Properties**:
2424

2525
![](Images/Preferences/PopUpAdvanced.png)
2626

2727
**Advanced Properties** become visible:
2828

2929
![](Images/Preferences/HDRP_WaterSurface_General_Visible.png)
3030

31-
For Volume Overrides, the already existing contextual menu has a **Advanced Properties** toggle as well.
31+
For Volume Overrides, the already existing contextual menu has a **Show All Advanced Properties** toggle as well.
3232

3333
## Exposing advanced properties on preferences
3434

3535
You can also access to this global preference by:
3636

37-
1. Open the **Graphics** tab in the **Preferences** window (menu: **Edit > Preferences > Graphics**).
38-
2. Under **Properties**. Set **Advanced Properties** to **All Visible**.
37+
1. Open the **Graphics** tab in the **Preferences** window (menu: **Edit > Preferences**, macOS: **Unity > Settings**).
38+
2. Under **Graphics**, select **Properties**. Set **Advanced Properties** to **All Visible**.
3939

4040
![](Images/Preferences/AdvancedProperties_Settings.png)
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
using System;
2+
using UnityEngine.UIElements;
3+
4+
namespace UnityEditor.Rendering.Converter
5+
{
6+
// This is the serialized class that stores the state of each item in the list of items to convert
7+
[Serializable]
8+
class ConverterItemState
9+
{
10+
public Action<bool> onIsSelectedChanged;
11+
private bool m_IsSelected;
12+
public bool isSelected
13+
{
14+
get => m_IsSelected;
15+
set
16+
{
17+
if (m_IsSelected != value)
18+
{
19+
m_IsSelected = value;
20+
onIsSelectedChanged?.Invoke(m_IsSelected);
21+
}
22+
}
23+
}
24+
public IRenderPipelineConverterItem item;
25+
public (Status Status, string Message) conversionResult = (Status.Pending, string.Empty);
26+
internal bool hasConverted => conversionResult.Status != Status.Pending;
27+
28+
public void OnSelectionChanged(ClickEvent _)
29+
{
30+
isSelected = !isSelected;
31+
}
32+
33+
public void OnClicked(ClickEvent _)
34+
{
35+
item.OnClicked();
36+
}
37+
}
38+
}

Packages/com.unity.render-pipelines.core/Editor-PrivateShared/Tools/Converter/ConverterItemState.cs.meta

Lines changed: 2 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 118 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,118 @@
1+
using System;
2+
using System.Collections.Generic;
3+
using UnityEngine;
4+
using UnityEngine.UIElements;
5+
6+
namespace UnityEditor.Rendering.Converter
7+
{
8+
[Flags]
9+
internal enum DisplayFilter
10+
{
11+
None = 0,
12+
Pending = (1 << Status.Pending),
13+
Warnings = (1 << Status.Warning),
14+
Errors = (1 << Status.Error),
15+
Success = (1 << Status.Success),
16+
All = Pending | Warnings | Errors | Success
17+
}
18+
19+
// Each converter uses the active bool
20+
// Each converter has a list of active items/assets
21+
// We do this so that we can use the binding system of the UI Elements
22+
[Serializable]
23+
class ConverterState
24+
{
25+
public bool isExpanded;
26+
public bool isSelected;
27+
public bool isLoading; // to name
28+
public bool isInitialized;
29+
public List<ConverterItemState> items = new List<ConverterItemState>();
30+
[SerializeReference]
31+
public IRenderPipelineConverter converter;
32+
33+
public DisplayFilter currentFilter = DisplayFilter.All;
34+
public IList<TreeViewItemData<ConverterItemState>> filteredItems = new List<TreeViewItemData<ConverterItemState>>();
35+
36+
private int CountItemWithFlag(Status status)
37+
{
38+
int count = 0;
39+
foreach (ConverterItemState itemState in items)
40+
{
41+
if (itemState.conversionResult.Status == status)
42+
{
43+
count++;
44+
}
45+
}
46+
return count;
47+
}
48+
public int pending => CountItemWithFlag(Status.Pending);
49+
public int warnings => CountItemWithFlag(Status.Warning);
50+
public int errors => CountItemWithFlag(Status.Error);
51+
public int success => CountItemWithFlag(Status.Success);
52+
53+
public override string ToString()
54+
{
55+
return $"Warnings: {warnings} - Errors: {errors} - Ok: {success} - Total: {items?.Count ?? 0}";
56+
}
57+
58+
public void Clear()
59+
{
60+
isInitialized = false;
61+
items.Clear();
62+
filteredItems.Clear();
63+
}
64+
65+
private bool IsVisible(DisplayFilter filter)
66+
{
67+
return (currentFilter & filter) == filter;
68+
}
69+
70+
internal bool ShouldInclude(ConverterItemState converterItemState)
71+
{
72+
return converterItemState.conversionResult.Status switch
73+
{
74+
Status.Pending => IsVisible(DisplayFilter.Pending),
75+
Status.Warning => IsVisible(DisplayFilter.Warnings),
76+
Status.Error => IsVisible(DisplayFilter.Errors),
77+
Status.Success => IsVisible(DisplayFilter.Success),
78+
_ => false
79+
};
80+
}
81+
82+
internal void AddItem(ConverterItemState converterItemState)
83+
{
84+
items.Add(converterItemState);
85+
if (ShouldInclude(converterItemState))
86+
{
87+
filteredItems.Add(new TreeViewItemData<ConverterItemState>(filteredItems.Count, converterItemState));
88+
}
89+
}
90+
91+
internal void ApplyFilter()
92+
{
93+
filteredItems.Clear();
94+
95+
foreach (var item in items)
96+
{
97+
if (IsVisible((DisplayFilter)(1 << (int)item.conversionResult.Status)))
98+
filteredItems.Add(new TreeViewItemData<ConverterItemState>(filteredItems.Count, item));
99+
}
100+
}
101+
102+
public int selectedItemsCount
103+
{
104+
get
105+
{
106+
int count = 0;
107+
foreach (ConverterItemState itemState in items)
108+
{
109+
if (itemState.isSelected)
110+
{
111+
count++;
112+
}
113+
}
114+
return count;
115+
}
116+
}
117+
}
118+
}

Packages/com.unity.render-pipelines.core/Editor-PrivateShared/Tools/Converter/ConverterState.cs.meta

Lines changed: 2 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Packages/com.unity.render-pipelines.core/Editor-PrivateShared/Tools/Converter/IRenderPipelineConverter.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,12 @@ interface IRenderPipelineConverter
1111
/// <summary>
1212
/// Gets a value indicating whether the converter is enabled and can be used.
1313
/// </summary>
14-
bool isEnabled { get; }
14+
bool isEnabled => true;
1515

1616
/// <summary>
1717
/// Gets or sets the reason message shown when the converter item is disabled.
1818
/// </summary>
19-
string isDisabledMessage { get; }
19+
string isDisabledMessage => string.Empty;
2020

2121
/// <summary>
2222
/// Scans for available render pipeline converter items.

Packages/com.unity.render-pipelines.core/Editor-PrivateShared/Tools/Converter/IRenderPipelineConverterItem.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
using UnityEngine;
2+
13
namespace UnityEditor.Rendering.Converter
24
{
35
/// <summary>
@@ -25,6 +27,8 @@ interface IRenderPipelineConverterItem
2527
/// </summary>
2628
string isDisabledMessage { get; set; }
2729

30+
Texture2D icon => null;
31+
2832
/// <summary>
2933
/// Invoked when the converter item is clicked or activated.
3034
/// </summary>

0 commit comments

Comments
 (0)