Add URP bootstrap assets
This commit is contained in:
parent
2ee0350451
commit
9618b1cb27
6 changed files with 73 additions and 6 deletions
57
Assets/Editor/AetheriaUrpBootstrap.cs
Normal file
57
Assets/Editor/AetheriaUrpBootstrap.cs
Normal file
|
|
@ -0,0 +1,57 @@
|
|||
using UnityEditor;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Rendering;
|
||||
using UnityEngine.Rendering.Universal;
|
||||
|
||||
public static class AetheriaUrpBootstrap
|
||||
{
|
||||
private const string SettingsFolder = "Assets/Settings/Rendering";
|
||||
private const string PipelineAssetPath = SettingsFolder + "/AetheriaURPAsset.asset";
|
||||
private const string RendererAssetPath = SettingsFolder + "/AetheriaUniversalRenderer.asset";
|
||||
|
||||
[MenuItem("Aetheria/Rendering/Ensure URP Assets")]
|
||||
public static void EnsureUrpAssetsAndAssign()
|
||||
{
|
||||
EnsureFolder(SettingsFolder);
|
||||
|
||||
var rendererData = AssetDatabase.LoadAssetAtPath<UniversalRendererData>(RendererAssetPath);
|
||||
if (rendererData == null)
|
||||
{
|
||||
rendererData = ScriptableObject.CreateInstance<UniversalRendererData>();
|
||||
AssetDatabase.CreateAsset(rendererData, RendererAssetPath);
|
||||
}
|
||||
|
||||
var pipelineAsset = AssetDatabase.LoadAssetAtPath<UniversalRenderPipelineAsset>(PipelineAssetPath);
|
||||
if (pipelineAsset == null)
|
||||
{
|
||||
pipelineAsset = UniversalRenderPipelineAsset.Create(rendererData);
|
||||
AssetDatabase.CreateAsset(pipelineAsset, PipelineAssetPath);
|
||||
}
|
||||
|
||||
GraphicsSettings.defaultRenderPipeline = pipelineAsset;
|
||||
QualitySettings.renderPipeline = pipelineAsset;
|
||||
|
||||
EditorUtility.SetDirty(pipelineAsset);
|
||||
EditorUtility.SetDirty(rendererData);
|
||||
AssetDatabase.SaveAssets();
|
||||
AssetDatabase.Refresh();
|
||||
|
||||
Debug.Log($"Aetheria URP asset assigned: {PipelineAssetPath}");
|
||||
}
|
||||
|
||||
private static void EnsureFolder(string folderPath)
|
||||
{
|
||||
var parts = folderPath.Split('/');
|
||||
var current = parts[0];
|
||||
for (var i = 1; i < parts.Length; i++)
|
||||
{
|
||||
var next = current + "/" + parts[i];
|
||||
if (!AssetDatabase.IsValidFolder(next))
|
||||
{
|
||||
AssetDatabase.CreateFolder(current, parts[i]);
|
||||
}
|
||||
|
||||
current = next;
|
||||
}
|
||||
}
|
||||
}
|
||||
2
Assets/Editor/AetheriaUrpBootstrap.cs.meta
Normal file
2
Assets/Editor/AetheriaUrpBootstrap.cs.meta
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
fileFormatVersion: 2
|
||||
guid: e64b3dfc7de42034f96a773e19e68312
|
||||
BIN
Assets/Resources/Settings.asset
(Stored with Git LFS)
BIN
Assets/Resources/Settings.asset
(Stored with Git LFS)
Binary file not shown.
8
Assets/Settings.meta
Normal file
8
Assets/Settings.meta
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 40171aa6b32a16043b178632b715a2ea
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -1,2 +1,2 @@
|
|||
m_EditorVersion: 6000.1.10f1
|
||||
m_EditorVersionWithRevision: 6000.1.10f1 (3c681a6c22ff)
|
||||
m_EditorVersion: 6000.4.2f1
|
||||
m_EditorVersionWithRevision: 6000.4.2f1 (7a4c1aeef971)
|
||||
|
|
|
|||
|
|
@ -1,2 +1,2 @@
|
|||
m_EditorVersion: 6000.1.10f1
|
||||
m_EditorVersionWithRevision: 6000.1.10f1 (3c681a6c22ff)
|
||||
m_EditorVersion: 6000.4.2f1
|
||||
m_EditorVersionWithRevision: 6000.4.2f1 (7a4c1aeef971)
|
||||
|
|
|
|||
Loading…
Reference in a new issue