mirror of
https://github.com/vrm-c/UniVRM.git
synced 2026-06-02 22:14:30 -05:00
Renderer export の条件
x.gameObject.activeInHierarchy && x.TryGetComponent<Renderer>(out var renderer) && renderer.enabled) mesh の export 条件と renderer の export 条件が別であることに注意。gltf の node.mesh
This commit is contained in:
parent
15301ba48d
commit
bc1edff9c9
|
|
@ -105,7 +105,7 @@ namespace UniVRM10
|
|||
}
|
||||
|
||||
// material and textures
|
||||
var rendererComponents = root.GetComponentsInChildren<Renderer>();
|
||||
var rendererComponents = root.GetComponentsInChildren<Renderer>().Where(x => x.gameObject.activeInHierarchy && x.enabled).ToArray();
|
||||
{
|
||||
foreach (var renderer in rendererComponents)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -646,7 +646,13 @@ namespace UniVRM10
|
|||
};
|
||||
foreach (var f in firstPerson.Renderers)
|
||||
{
|
||||
vrm.FirstPerson.MeshAnnotations.Add(ExportMeshAnnotation(f, vrmController.transform, getIndex));
|
||||
var annotation = ExportMeshAnnotation(f, vrmController.transform, getIndex);
|
||||
if (annotation.Node < 0)
|
||||
{
|
||||
// maybe disabled Rendeer
|
||||
continue;
|
||||
}
|
||||
vrm.FirstPerson.MeshAnnotations.Add(annotation);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -718,6 +724,15 @@ namespace UniVRM10
|
|||
Func<string, int> getIndexFromRelativePath = relativePath =>
|
||||
{
|
||||
var rendererNode = vrmController.transform.GetFromPath(relativePath);
|
||||
var renderer = rendererNode.GetComponent<Renderer>();
|
||||
if (renderer == null)
|
||||
{
|
||||
return -1;
|
||||
}
|
||||
if (!renderer.enabled)
|
||||
{
|
||||
return -1;
|
||||
}
|
||||
var node = converter.Nodes[rendererNode.gameObject];
|
||||
return model.Nodes.IndexOf(node);
|
||||
};
|
||||
|
|
@ -751,7 +766,14 @@ namespace UniVRM10
|
|||
{
|
||||
try
|
||||
{
|
||||
vrmExpression.MorphTargetBinds.Add(ExportMorphTargetBinding(b, getIndexFromRelativePath));
|
||||
var binding = ExportMorphTargetBinding(b, getIndexFromRelativePath);
|
||||
if (binding.Node < 0)
|
||||
{
|
||||
// node もしくは renderer が存在しない
|
||||
continue;
|
||||
}
|
||||
|
||||
vrmExpression.MorphTargetBinds.Add(binding);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user