From 66f4f8e92e25d0ed994152709b9ebd409ccd1734 Mon Sep 17 00:00:00 2001 From: ousttrue Date: Tue, 10 Apr 2018 20:58:27 +0900 Subject: [PATCH] update import shader check --- Scripts/Format/VRMImporter.cs | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/Scripts/Format/VRMImporter.cs b/Scripts/Format/VRMImporter.cs index f5081060f..62a23643c 100644 --- a/Scripts/Format/VRMImporter.cs +++ b/Scripts/Format/VRMImporter.cs @@ -63,6 +63,16 @@ namespace VRM context.ShowMeshes(); } + static string[] VRM_SHADER_NAMES = + { + "Standard", + "VRM/UnlitTexture", + "VRM/UnlitCutout", + "VRM/UnlitTransparent", + "VRM/UnlitTransparentZWrite", + "VRM/MToon", + }; + public static CreateMaterialFunc GetMaterialFunc(List materials) { var CreateDefault= gltfImporter.CreateMaterialFuncFromShader(Shader.Find("VRM/UnlitTexture")); @@ -73,10 +83,12 @@ namespace VRM if(vrm!=null && vrm.materials[i].name.ToLower().Contains("zwrite")) { // 一応。不要かも + Debug.Log("fallback to VRM/UnlitTransparentZWrite"); return CreateZWrite(ctx, i); } else { + Debug.Log("fallback to VRM/UnlitTexture"); return CreateDefault(ctx, i); } }; @@ -92,8 +104,16 @@ namespace VRM var shader = Shader.Find(shaderName); if (shader == null) { - Debug.LogWarningFormat("shader {0} not found. set Assets/VRM/Shaders/VRMShaders to Edit - project setting - Graphics - preloaded shaders", shaderName); - return fallback(ctx, i); + if (VRM_SHADER_NAMES.Contains(shaderName)) + { + Debug.LogErrorFormat("shader {0} not found. set Assets/VRM/Shaders/VRMShaders to Edit - project setting - Graphics - preloaded shaders", shaderName); + return fallback(ctx, i); + } + else + { + Debug.LogWarningFormat("unknown shader {0}.", shaderName); + return fallback(ctx, i); + } } else {