From d9e9fc27bfa983f9240be9460557b3289d6fa90e Mon Sep 17 00:00:00 2001 From: ousttrue Date: Fri, 17 Sep 2021 18:21:53 +0900 Subject: [PATCH] If urp is not installed, force it to use the built-in rendering pipeline --- .../ScriptedImporter/GltfScriptedImporterBase.cs | 12 ++++++++++++ .../Editor/ScriptedImporter/VrmScriptedImporter.cs | 12 ++++++++++++ 2 files changed, 24 insertions(+) diff --git a/Assets/UniGLTF/Editor/UniGLTF/ScriptedImporter/GltfScriptedImporterBase.cs b/Assets/UniGLTF/Editor/UniGLTF/ScriptedImporter/GltfScriptedImporterBase.cs index 3ce47b626..c8721ac24 100644 --- a/Assets/UniGLTF/Editor/UniGLTF/ScriptedImporter/GltfScriptedImporterBase.cs +++ b/Assets/UniGLTF/Editor/UniGLTF/ScriptedImporter/GltfScriptedImporterBase.cs @@ -22,6 +22,18 @@ namespace UniGLTF [Header("Experimental")] public RenderPipelineTypes m_renderPipeline; + void OnValidate() + { + if (m_renderPipeline == UniGLTF.RenderPipelineTypes.UniversalRenderPipeline) + { + if (Shader.Find(UniGLTF.GltfPbrUrpMaterialImporter.ShaderName) == null) + { + Debug.LogWarning("URP is not installed. Force to BuiltinRenderPipeline"); + m_renderPipeline = UniGLTF.RenderPipelineTypes.BuiltinRenderPipeline; + } + } + } + static IMaterialDescriptorGenerator GetMaterialGenerator(RenderPipelineTypes renderPipeline) { switch (renderPipeline) diff --git a/Assets/VRM10/Editor/ScriptedImporter/VrmScriptedImporter.cs b/Assets/VRM10/Editor/ScriptedImporter/VrmScriptedImporter.cs index af17de1ff..9870da7d3 100644 --- a/Assets/VRM10/Editor/ScriptedImporter/VrmScriptedImporter.cs +++ b/Assets/VRM10/Editor/ScriptedImporter/VrmScriptedImporter.cs @@ -21,5 +21,17 @@ namespace UniVRM10 { VrmScriptedImporterImpl.Import(this, ctx, MigrateToVrm1, RenderPipeline); } + + void OnValidate() + { + if (RenderPipeline == UniGLTF.RenderPipelineTypes.UniversalRenderPipeline) + { + if (Shader.Find(UniGLTF.GltfPbrUrpMaterialImporter.ShaderName) == null) + { + Debug.LogWarning("URP is not installed. Force to BuiltinRenderPipeline"); + RenderPipeline = UniGLTF.RenderPipelineTypes.BuiltinRenderPipeline; + } + } + } } }