diff --git a/Assets/VRM/UniVRM/Editor/Format/VRMExporterWizard.cs b/Assets/VRM/UniVRM/Editor/Format/VRMExporterWizard.cs index 950fdde62..f5fb27905 100644 --- a/Assets/VRM/UniVRM/Editor/Format/VRMExporterWizard.cs +++ b/Assets/VRM/UniVRM/Editor/Format/VRMExporterWizard.cs @@ -516,8 +516,6 @@ namespace VRM } GUILayout.EndVertical(); } - if (modified) - InvokeWizardUpdate(); GUILayout.Space(8); } @@ -723,4 +721,3 @@ namespace VRM } } } - diff --git a/Assets/VRM/UniVRM/Editor/SpringBone/VRMSpringBoneValidator.cs b/Assets/VRM/UniVRM/Editor/SpringBone/VRMSpringBoneValidator.cs index e552b5696..d0e9beae2 100644 --- a/Assets/VRM/UniVRM/Editor/SpringBone/VRMSpringBoneValidator.cs +++ b/Assets/VRM/UniVRM/Editor/SpringBone/VRMSpringBoneValidator.cs @@ -14,7 +14,7 @@ namespace VRM yield break; } - var hierarchy = root.GetComponentsInChildren(); + var hierarchy = root.GetComponentsInChildren(true); Dictionary> rootMap = new Dictionary>(); @@ -25,12 +25,17 @@ namespace VRM var springRoot = sb.RootBones[i]; if (springRoot == null) { - yield return Validation.Error($"{sb.name}.RootBones[{i}] is null"); + yield return Validation.Error($"[VRMSpringBone]{sb.name}.RootBones[{i}] is null"); continue; } if (!hierarchy.Contains(springRoot)) { - yield return Validation.Error($"{sb.name}.RootBones[{i}] is out of hierarchy"); + yield return Validation.Error($"[VRMSpringBone]{sb.name}.RootBones[{i}] is out of hierarchy"); + continue; + } + if (!springRoot.gameObject.activeInHierarchy) + { + yield return Validation.Error($"[VRMSpringBone]{sb.name}.RootBones[{i}] is not active"); continue; } diff --git a/Assets/VRM/UniVRM/Scripts/FirstPerson/VRMFirstPerson.cs b/Assets/VRM/UniVRM/Scripts/FirstPerson/VRMFirstPerson.cs index 11b59375c..480032843 100644 --- a/Assets/VRM/UniVRM/Scripts/FirstPerson/VRMFirstPerson.cs +++ b/Assets/VRM/UniVRM/Scripts/FirstPerson/VRMFirstPerson.cs @@ -52,18 +52,22 @@ namespace VRM public IEnumerable Validate() { - var hierarchy = GetComponentsInChildren(); + var hierarchy = GetComponentsInChildren(true); for (int i = 0; i < Renderers.Count; ++i) { var r = Renderers[i]; if (r.Renderer == null) { - yield return Validation.Error($"{name}.Renderers[{i}].Renderer is null"); + yield return Validation.Error($"[VRMFirstPerson]{name}.Renderers[{i}].Renderer is null"); } if (!hierarchy.Contains(r.Renderer.transform)) { - yield return Validation.Error($"{name}.Renderers[{i}].Renderer is out of hierarchy"); + yield return Validation.Error($"[VRMFirstPerson]{name}.Renderers[{i}].Renderer is out of hierarchy"); + } + if (!r.Renderer.gameObject.activeInHierarchy) + { + yield return Validation.Error($"[VRMFirstPerson]{name}.Renderers[{i}].Renderer is not active"); } } yield break;