diff --git a/Assets/VRM10/Runtime/IO/Vrm10Exporter.cs b/Assets/VRM10/Runtime/IO/Vrm10Exporter.cs index b310d15db..db5adaa51 100644 --- a/Assets/VRM10/Runtime/IO/Vrm10Exporter.cs +++ b/Assets/VRM10/Runtime/IO/Vrm10Exporter.cs @@ -334,6 +334,17 @@ namespace UniVRM10 static UniGLTF.Extensions.VRMC_springBone.VRMC_springBone ExportSpringBone(Vrm10Instance controller, Model model, ModelExporter converter) { + var colliders = controller.GetComponentsInChildren(); + + // if colliders, collider groups and springs don't exist, don't export the extension + if ( + colliders.Length == 0 && + controller.SpringBone.ColliderGroups.Count == 0 && + controller.SpringBone.Springs.Count == 0 + ) { + return null; + } + var springBone = new UniGLTF.Extensions.VRMC_springBone.VRMC_springBone { Colliders = new List(), @@ -348,7 +359,6 @@ namespace UniVRM10 return model.Nodes.IndexOf(node); }; - var colliders = controller.GetComponentsInChildren(); foreach (var c in colliders) { springBone.Colliders.Add(new UniGLTF.Extensions.VRMC_springBone.Collider