浏览代码
Merge pull request #401 from Unity-Technologies/Branch_MenuCreateSceneSetting
Merge pull request #401 from Unity-Technologies/Branch_MenuCreateSceneSetting
Created proper contextual menus to create new SceneSettings game objects and various scene settings assets./main
GitHub
7 年前
当前提交
294999a0
共有 5 个文件被更改,包括 63 次插入 和 106 次删除
-
63ScriptableRenderPipeline/HDRenderPipeline/Editor/HDRenderPipelineMenuItems.cs
-
3ScriptableRenderPipeline/HDRenderPipeline/Lighting/Editor/HDLightEditor.cs
-
28ScriptableRenderPipeline/HDRenderPipeline/Material/Lit/SubsurfaceScatteringProfile.cs
-
12ScriptableRenderPipeline/HDRenderPipeline/Editor/SceneSettingsManagementWindow.cs.meta
-
63ScriptableRenderPipeline/HDRenderPipeline/Editor/SceneSettingsManagementWindow.cs
|
|||
fileFormatVersion: 2 |
|||
guid: a6a2e8d7ee3eb2c46962c9b49ff6c8ef |
|||
timeCreated: 1485262288 |
|||
licenseType: Pro |
|||
MonoImporter: |
|||
serializedVersion: 2 |
|||
defaultReferences: [] |
|||
executionOrder: 0 |
|||
icon: {instanceID: 0} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|
|||
using UnityEngine.Experimental.Rendering.HDPipeline; |
|||
using UnityEngine; |
|||
|
|||
namespace UnityEditor.Experimental.Rendering.HDPipeline |
|||
{ |
|||
public class SceneSettingsManagementWindow : EditorWindow |
|||
{ |
|||
[MenuItem("HDRenderPipeline/Scene Settings Management")] |
|||
static void SceneSettingsManagement() |
|||
{ |
|||
GetWindow<SceneSettingsManagementWindow>().Show(); |
|||
} |
|||
|
|||
static private string m_LastCreationPath = "Assets"; |
|||
|
|||
void CreateAsset<AssetType>(string assetName) where AssetType : ScriptableObject |
|||
{ |
|||
string assetPath = EditorUtility.SaveFilePanel("Create new Asset", m_LastCreationPath, assetName, "asset"); |
|||
if (!string.IsNullOrEmpty(assetPath)) |
|||
{ |
|||
assetPath = assetPath.Substring(assetPath.LastIndexOf("Assets")); |
|||
m_LastCreationPath = System.IO.Path.GetDirectoryName(assetPath); |
|||
var instance = CreateInstance<AssetType>(); |
|||
AssetDatabase.CreateAsset(instance, assetPath); |
|||
} |
|||
} |
|||
|
|||
void OnGUI() |
|||
{ |
|||
// Keep it there temporarily until it's back to an "engine" setting in the HDRenderPipeline asset.
|
|||
EditorGUILayout.Space(); |
|||
|
|||
if (GUILayout.Button("Create new Common Settings")) |
|||
{ |
|||
CreateAsset<CommonSettings>("NewCommonSettings"); |
|||
} |
|||
|
|||
if (GUILayout.Button("Create new HDRI Sky Settings")) |
|||
{ |
|||
CreateAsset<HDRISkySettings>("NewHDRISkySettings"); |
|||
} |
|||
|
|||
if (GUILayout.Button("Create new Procedural Sky Settings")) |
|||
{ |
|||
CreateAsset<ProceduralSkySettings>("NewProceduralSkySettings"); |
|||
} |
|||
|
|||
if (GUILayout.Button("Create new Ambient Occlusion Settings")) |
|||
{ |
|||
CreateAsset<ScreenSpaceAmbientOcclusionSettings>("NewAmbientOcclusionSettings"); |
|||
} |
|||
|
|||
EditorGUILayout.Space(); |
|||
|
|||
if (GUILayout.Button("Create Scene Settings")) |
|||
{ |
|||
var manager = new GameObject(); |
|||
manager.name = "Scene Settings"; |
|||
manager.AddComponent<SceneSettings>(); |
|||
} |
|||
} |
|||
} |
|||
} |
撰写
预览
正在加载...
取消
保存
Reference in new issue