Merge pull request #432 from ousttrue/fix_nullcheck

Fix nullcheck
This commit is contained in:
hiroj
2020-06-16 15:07:43 +09:00
committed by GitHub
2 changed files with 17 additions and 11 deletions

View File

@@ -409,9 +409,12 @@ animator.GetBoneTransform(x.Head), animator.GetBoneTransform(x.Tail)))
{
DrawBone((HumanBodyBones)i, bones[i]);
}
foreach(var x in m_bones)
if (m_bones != null)
{
x.Draw();
foreach (var x in m_bones)
{
x.Draw();
}
}
}
}

View File

@@ -127,22 +127,25 @@ namespace VRM
if (settings.PoseFreeze)
{
// BoneNormalizer.Execute は Copy を作って正規化する。UNDO無用
target = BoneNormalizer.Execute(target, settings.ForceTPose, false);
target = BoneNormalizer.Execute(target, settings.ForceTPose, false);
destroy.Add(target);
}
// 元のBlendShapeClipに変更を加えないように複製
var proxy = target.GetComponent<VRMBlendShapeProxy>();
var copyBlendShapeAvatar = CopyBlendShapeAvatar(proxy.BlendShapeAvatar, settings.ReduceBlendshapeClip);
proxy.BlendShapeAvatar = copyBlendShapeAvatar;
// BlendShape削減
if (settings.ReduceBlendshape)
if (proxy != null)
{
foreach (SkinnedMeshRenderer smr in target.GetComponentsInChildren<SkinnedMeshRenderer>())
var copyBlendShapeAvatar = CopyBlendShapeAvatar(proxy.BlendShapeAvatar, settings.ReduceBlendshapeClip);
proxy.BlendShapeAvatar = copyBlendShapeAvatar;
// BlendShape削減
if (settings.ReduceBlendshape)
{
// 未使用のBlendShapeを間引く
ReplaceMesh(target, smr, copyBlendShapeAvatar);
foreach (SkinnedMeshRenderer smr in target.GetComponentsInChildren<SkinnedMeshRenderer>())
{
// 未使用のBlendShapeを間引く
ReplaceMesh(target, smr, copyBlendShapeAvatar);
}
}
}