Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
56 commits
Select commit Hold shift + click to select a range
5fcccef
Refactor MockHMD SetupTests to allow for a wait frame after changing …
guillaumelevass Apr 16, 2026
702b3a8
[MaterialUpgrader] Terrain and Speedtree material upgrader tests
ernestasKupciunas Apr 16, 2026
b2781b4
[content automatically redacted] touching PlatformDependent folder
sashaslobodov Apr 16, 2026
4da5fb1
Reference pages for new Shader Graph nodes: Expression and Switch
sebastienduverne Apr 16, 2026
0ceffbd
Fixed display stats not updating until tab switch in the runtime debu…
arttu-peltonen Apr 16, 2026
d3e8bfb
Graphics/srp/fix/fix broken swap function uum 139463
jed-unity3d Apr 16, 2026
b1e0fa7
[VFX New Compiler] Nested structured / unordered data
ludovic-theobald Apr 17, 2026
0998b25
Updated `HDAdditionalLightData` to work with CoreCLR
jrs-unity Apr 17, 2026
d6f0465
Make HDRP Columndrawer more robust
lochrist Apr 17, 2026
3c0ad49
Higher threshold for AMD.
pema99 Apr 17, 2026
00b0523
GFXLIGHT-2009 : Adding environment intensity into Surface Cache.
olivierprat Apr 17, 2026
41a9e07
docg-8491: LOD Group Animate Cross-fading is unsupported by GPU Resid…
ocarrere Apr 19, 2026
d771a55
[UUM-138310][6000.6][2D] Ensure Universal.2D.Runtime supports Fast En…
kennytann Apr 20, 2026
670b262
[SRP] Fix missing meshes in SRP scene templates
remi-chapelain Apr 21, 2026
1d0b116
Surface Cache: Deferred Bounce Patch Allocation
urasmus Apr 21, 2026
dadcc99
[Core] Fix SRP Sample dependency importer
remi-chapelain Apr 21, 2026
fb2c4f6
Updated `LensFlareCommonSRP` and `LensFlareComponentSRP` to work with…
jrs-unity Apr 21, 2026
a63a029
GFXLIGHT-2027 : Fix high flickering on SSR with TAA
olivierprat Apr 21, 2026
c11f4aa
[SRP] Fix scene view camera transform on HD Template
remi-chapelain Apr 21, 2026
4257930
[URP][Shader Graph] Add stereo instancing support to custom UITK shad…
ashleykitchen-unity Apr 21, 2026
6333b24
[UUM-139845] Restore virtual texturing keyword permutation logic
april-roszkowski Apr 21, 2026
62d3946
GFXLIGHT-1911 : Gradient environment support for Surface Cache
olivierprat Apr 21, 2026
0d75c2f
[VFX New Compiler] GPU Expressions in blocks
ludovic-theobald Apr 21, 2026
2a6e6e6
[UpscalerFramework] fix warnings in HDRP and URP
volkan-unity Apr 21, 2026
346b310
Disable unstable VFX test on WindowsEditor platform
AngelaDematte Apr 21, 2026
e0d3652
Fix Rendering Debugger Reset not clearing pinned persistent UI elemen…
rolandk-unity Apr 21, 2026
2c8d9aa
Fix Rendering Debugger enum dropdowns going blank after Reset (UUM-13…
arttu-peltonen Apr 21, 2026
f7d8985
[XR] Fix missing unity_StereoEyeIndex constant in URP Multi-pass, nee…
NetteVI Apr 22, 2026
eb10b20
Fix "Search string limit exceeded" warning in Rendering Debugger sear…
rolandk-unity Apr 22, 2026
f5ee508
Reset static variables for CoreCLR / Fast Enter Play Mode (SRP Core T…
arttu-peltonen Apr 22, 2026
fd32284
Reset static variables for CoreCLR / Fast Enter Play Mode (SRP Core T…
arttu-peltonen Apr 22, 2026
f76abc1
Shader optimizations/light indexing 16bitpacked
Paulm-Unity Apr 23, 2026
22a1262
Scripting/deprecate forbidden api pt1
JustinasPl Apr 23, 2026
750aaa8
Use IMGUI drawer to bypass ui issue with Light Rendering Layer
lochrist Apr 23, 2026
0330cb5
Fix SSR depth refinement failing on Android phone due to driver bug.
pema99 Apr 23, 2026
1f84614
Fix Rendering Debugger going blank when search yields no results
rolandk-unity Apr 23, 2026
b8f4071
[VFX] Monitored VFXGraph
PaulDemeulenaere Apr 23, 2026
9676b16
[SG] Custom Includes, Pragmas and Defines
FredMoreau Apr 23, 2026
18bdad7
[content automatically redacted] touching Platforms folder
volkan-unity Apr 23, 2026
d4a9a45
[UUM-134522][UUM-136056][URP 2D][6000.6] Fix 2d shadow volumetric bugs
kennytann Apr 23, 2026
afa2ab5
Restore missing tooltips in Rendering Debugger fields (UUM-138920)
rolandk-unity Apr 23, 2026
617dafe
Compact resource versioning
kirill-titov-u Apr 23, 2026
d7fb00d
Selection History
CianNoonanUnity Apr 23, 2026
3b933ec
Add graphics test for Modern SSAO
seungchan-jeong Apr 23, 2026
671d2da
Add option for transparent materials to choose whether to contribute …
laylaarab Apr 23, 2026
0fb5779
Bump Cinemachine to V3 in manifest
windxu88 Apr 23, 2026
0ff666f
[Rendering Debugger]Fixes for Foldouts
alex-vazquez-unity3d Apr 23, 2026
7423568
Re-enable RuntimeProfilerTests
arttu-peltonen Apr 23, 2026
155676a
[VFX] Profiling window / panels fixes
ludovic-theobald Apr 23, 2026
de1c776
[UUM-137272] Change file access strategy in Shader Graph importer
april-roszkowski Apr 23, 2026
4b6ea83
URP: Default newly-created Universal Renderers to IntermediateTexture…
ApoorvaJ Apr 23, 2026
f7e8344
Profiler/renderpipeline/stage 5 remaining
alexey-zakharov Apr 24, 2026
f99d1f3
[UUM-138256] Added shader variant stripping for point sampling upsamp…
CalChiu Apr 24, 2026
e32c029
Fix artifacts of applied rotational reflection probe
nanho-lee Apr 24, 2026
5e94c4e
[Material Upgrader] Generic system for URP and HDRP Menu item
alex-vazquez-unity3d Apr 24, 2026
6fe86c9
Fixed missing parameter
Nzollner Apr 24, 2026
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
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,13 @@ sealed partial class DebugWindow
readonly Dictionary<DebugUI.Widget, WidgetSearchData> m_WidgetSearchElementCache = new();
readonly List<TextElement> m_PanelHeaderTextElements = new();
UIElementSearchFilter m_SearchFilter;
Label m_NoResultsLabel;

void BuildSearchCache()
{
m_WidgetSearchElementCache.Clear();
m_PanelHeaderTextElements.Clear();
m_NoResultsLabel = rootVisualElement.Q<Label>(name: "debug-window-no-results-label");

foreach (var panelElement in m_RightPaneElement.Children())
{
Expand Down Expand Up @@ -76,6 +78,9 @@ void InitializeSearchField()
tab.style.display = shouldShow ? DisplayStyle.Flex : DisplayStyle.None;
}
}

bool noResults = !string.IsNullOrEmpty(searchString) && visiblePanels.Count == 0;
m_NoResultsLabel.style.display = noResults ? DisplayStyle.Flex : DisplayStyle.None;
}
);
m_SearchFilter.InitializeSearchField("search-field");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -63,15 +63,41 @@

/* Header Foldout */

.debug-window-foldout > .unity-foldout__toggle {
border-width: 1px 0px 1px 0px;
.debug-window-foldout-header > .unity-foldout__toggle {
padding-top: 1px !important;
padding-bottom: 1px !important;
margin-top: 0px !important;
margin-bottom: 0px !important;
margin-left: -2px;
margin-right: -4px;
border-top-width: 1px;
border-top-color: var(--unity-colors-default-border);
border-bottom-color: var(--unity-colors-inspector_titlebar-border_accent);
border-bottom-width: 1px;
border-bottom-color: var(--unity-colors-default-border);
background-color: var(--unity-colors-inspector_titlebar-background);
}

.debug-window-foldout-header > .unity-foldout__toggle:hover {
background-color: var(--unity-colors-inspector_titlebar-background-hover);
}

.debug-window-foldout-header > .unity-foldout__toggle > .unity-toggle__input > .unity-toggle__checkmark
{
margin-left: 4px;
margin-right: 4px;
}

.debug-window-foldout-header .unity-foldout__text {
-unity-font-style: bold;
}

.debug-window-foldout > .unity-foldout__toggle {
padding-top: 1px !important;
padding-bottom: 1px !important;
margin-top: 0px !important;
margin-bottom: 0px !important;
}

.debug-window-foldout > .unity-foldout__toggle:hover {
background-color: var(--unity-colors-inspector_titlebar-background-hover);
}
Expand All @@ -82,29 +108,36 @@
margin-right: 4px;
}

.debug-window-foldout .unity-foldout__text {
-unity-font-style: bold;
}

.more-options-button {
background-image: var(--unity-icons-pane_options);
background-size: contain;
background-repeat: no-repeat;
}

.info-button,
.more-options-button {
background-color: transparent;
border-color: transparent;
width: 16px;
margin: 0px 4px 0px 0px !important;
padding: 0px 0px 0px 0px !important;
margin: 2px 2px 1px 3px;
padding: 0px 2px 0px 0px;
border-width: 0px;
border-radius: 2px 2px 2px 2px;
width: 20px;
height: 20px;
}

.more-options-button:hover {
.info-button:hover,
.more-options-button:hover{
background-color: var(--unity-colors-button-background-hover);
}

.info-button {
background-color: transparent;
border-color: transparent;
width: 24px;
margin: 0px 4px 0px 0px !important;
padding: 0px 0px 0px 0px !important;
.info-button:disabled
.info-button:disabled,
.more-options-button:disabled {
}

.info-button:hover {
background-color: var(--unity-colors-button-background-hover);
#debug-window-no-results-label {
display: none;
-unity-text-align: middle-center;
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
<ui:VisualElement name="debug-window-tab-container" class="">
<ui:ScrollView horizontal-scroller-visibility="Hidden" view-data-key="debug-window-tab-container-scrollview">
<ui:VisualElement name="panels-inspector-insertion-element" />
<ui:Label name="debug-window-no-results-label" text="No results match your search." />
<ui:VisualElement name="scroll-buffer" />
</ui:ScrollView>
</ui:VisualElement>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -892,6 +892,7 @@ static internal void Init()
Lightmapping.bakeStarted += OnBakeStarted;
Lightmapping.bakeCancelled += OnBakeCancelled;
Lightmapping.inputExtraction += OnInputExtraction;
AssemblyReloadEvents.beforeAssemblyReload += CleanUp;
}
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
using NUnit.Framework;
using System;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Rendering;
using UnityEngine.Rendering.RenderGraphModule;

#if UNITY_EDITOR
using UnityEditor.Rendering;
#endif

namespace UnityEngine.Rendering.Tests
namespace UnityEditor.Rendering.Tests
{
// TODO: Move this class to the Tests/Editor folder once the "IsolatedPackagesVerified" CI test correctly resolves all dependencies.
// Currently, the URP package fails to locate the RenderGraphTestsCore class when it's placed under Tests/Editor,
Expand Down Expand Up @@ -130,9 +128,8 @@ public void Setup()
{
// Setting default global settings to the custom RG render pipeline type, no quality settings so we can rely on the default RP
m_RenderGraphTestGlobalSettings = ScriptableObject.CreateInstance<RenderGraphTestGlobalSettings>();
#if UNITY_EDITOR
EditorGraphicsSettings.SetRenderPipelineGlobalSettingsAsset<RenderGraphTestPipelineInstance>(m_RenderGraphTestGlobalSettings);
#endif

// Saving old render pipelines to set them back after testing
m_OldDefaultRenderPipeline = GraphicsSettings.defaultRenderPipeline;
m_OldQualityRenderPipeline = QualitySettings.renderPipeline;
Expand Down Expand Up @@ -166,14 +163,20 @@ public void Cleanup()
QualitySettings.renderPipeline = m_OldQualityRenderPipeline;
m_OldQualityRenderPipeline = null;

m_RenderGraph.Cleanup();
try
{
m_RenderGraph.Cleanup();
}
catch (Exception e)
{
Debug.Log($"Tried to clean RenderGraph but exception was thrown: {e.Message}");
}

Object.DestroyImmediate(m_RenderGraphTestPipeline);

#if UNITY_EDITOR
UnityEngine.Object.DestroyImmediate(m_RenderGraphTestPipeline);
EditorGraphicsSettings.SetRenderPipelineGlobalSettingsAsset<RenderGraphTestPipelineInstance>(null);
#endif
Object.DestroyImmediate(m_RenderGraphTestGlobalSettings);

UnityEngine.Object.DestroyImmediate(m_RenderGraphTestGlobalSettings);

GameObject.DestroyImmediate(m_GameObject);
m_GameObject = null;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
using System;
using System.Collections.Generic;
using System.IO;
using UnityEditor;
Expand Down Expand Up @@ -40,7 +39,6 @@ static SampleDependencyImporter()

PackageInfo m_PackageInfo;
SampleList m_SampleList;
List<Sample> m_Samples;

VisualElement injectingElement;
VisualElement _panelRoot;
Expand Down Expand Up @@ -100,6 +98,7 @@ internal void RefreshSampleButtons()

var bound = Mathf.Min(sampleContainers.Count, m_SampleList.samples.Length);

// Foreach sample
for (int i=0; i<bound; i++)
{
// Check if the sample has dependencies, if not just skip the injection.
Expand Down Expand Up @@ -155,16 +154,20 @@ internal void RefreshSampleButtons()

// Need to copy i for the lambda.
var index = i;
// On click of the imported button, import the dependencies first then call the original button logic.
// On click of the imported button, import the dependencies first then use the package manager API to trigger the regular sample import logic.
injectedButton.clicked += () =>
{
ImportSampleDependencies(index);

using (var ev = NavigationSubmitEvent.GetPooled())
// After importing the dependencies, we can call the package manager API import logic.
foreach (Sample sample in Sample.FindByPackage(m_PackageInfo.name, m_PackageInfo.version))
{
ev.target = importButton;
importButton.SendEvent(ev);
if (sample.displayName == m_SampleList.samples[index].displayName)
{
sample.Import(Sample.ImportOptions.HideImportWindow | Sample.ImportOptions.OverridePreviousImports);
}
}

};
}
else // We may need to update the button text after the sample import here.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ namespace UnityEditor.Rendering
/// </summary>
public partial class MaterialUpgrader
{
internal static readonly string k_DialogKey = $"{nameof(UnityEditor)}.{nameof(Rendering)}.{nameof(MaterialUpgrader)}.ConfirmMaterialConversion";

#region Internal API
/// <summary>
/// Represents an entry describing material properties
Expand Down Expand Up @@ -344,15 +346,15 @@ static void PerformUpgrade(List<MaterialUpgradeEntry> materialUpgrades, List<Mat

bool CanPerformUpgrade()
{
const string title = "Material Upgrader";
const string message = "This operation will overwrite existing materials in your project.\n\nPlease ensure you have a backup before proceeding.";
const string title = "Confirm Material Conversion";
const string message = "This action will modify materials and cannot be easily undone. It is strongly recommended to have a backup or use version control before continuing.";
const string proceed = "Proceed";
const string cancel = "Cancel";

if (Application.isBatchMode)
return true;

return EditorUtility.DisplayDialog(title, message, proceed, cancel);
return EditorUtility.DisplayDialog(title, message, proceed, cancel, DialogOptOutDecisionType.ForThisMachine, k_DialogKey);
}

if (CanPerformUpgrade())
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Rendering;

namespace UnityEditor.Rendering
{
class MaterialUpgraderEditMenus
{
private static readonly List<MaterialUpgrader> s_Empty = new List<MaterialUpgrader>();

public static List<MaterialUpgrader> GetCurrentSRPUpgraders()
{
if (!GraphicsSettings.isScriptableRenderPipelineEnabled)
return s_Empty;

return MaterialUpgrader.FetchAllUpgradersForPipeline(GraphicsSettings.currentRenderPipelineAssetType);
}

[MenuItem("Edit/Rendering/Materials/Convert All Built-In Materials to Current SRP", true)]
internal static bool UpgradeMaterialsProjectValidate()
{
return GraphicsSettings.isScriptableRenderPipelineEnabled;
}

[MenuItem("Edit/Rendering/Materials/Convert All Built-In Materials to Current SRP", priority = CoreUtils.Priorities.editMenuPriority + 1)]
internal static void UpgradeMaterialsProject()
{
MaterialUpgrader.UpgradeProjectFolder(GetCurrentSRPUpgraders(), "Upgrade to SRP Material");
}

[MenuItem("Edit/Rendering/Materials/Convert Selected Built-In Materials to Current SRP", true)]
internal static bool UpgradeMaterialsSelectionValidate()
{
if (Selection.objects.Length == 0 || !GraphicsSettings.isScriptableRenderPipelineEnabled)
return false;

foreach (var obj in Selection.objects)
{
if (obj is not Material)
return false;
}

return true;
}

[MenuItem("Edit/Rendering/Materials/Convert Selected Built-In Materials to Current SRP", priority = CoreUtils.Priorities.editMenuPriority + 2)]
internal static void UpgradeMaterialsSelection()
{
MaterialUpgrader.UpgradeSelection(GetCurrentSRPUpgraders(), "Upgrade to SRP Material");
}
}
}

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ class UIElementSearchFilter
{
internal const string k_SelectionColorBeginTag = "<mark=#3169ACAB>";
internal const string k_SelectionColorEndTag = "</mark>";
const int k_SearchStringLimit = 15;
const int k_SearchStringLimit = 32;

IVisualElementScheduledItem m_PreviousSearch;
string m_PendingSearchString;
Expand All @@ -28,6 +28,7 @@ public void InitializeSearchField(string searchFieldName)
{
var searchField = m_RootElement.Q<ToolbarSearchField>(searchFieldName);
searchField.placeholderText = L10n.Tr("Search");
searchField.Q<TextField>().maxLength = k_SearchStringLimit;
searchField.RegisterValueChangedCallback(evt => OnSearchFilterChanged(evt.newValue));

// Apply empty search once in case the entire window was reloaded with a non-empty search. Search
Expand All @@ -37,13 +38,6 @@ public void InitializeSearchField(string searchFieldName)

void OnSearchFilterChanged(string searchString)
{
// Ensure the search string is within the allowed length limit
if (searchString.Length > k_SearchStringLimit)
{
searchString = searchString[..k_SearchStringLimit];
Debug.LogWarning($"Search string limit exceeded: {k_SearchStringLimit}");
}

// Sanitize to not match rich text tags
searchString = searchString.Replace("<", string.Empty).Replace(">", string.Empty);

Expand Down
Loading
Loading