mirror of
https://github.com/vrm-c/UniVRM.git
synced 2026-05-27 05:27:53 -05:00
BoneMeshRemoverValidator 廃止。機能がよくわからない。
This commit is contained in:
parent
cb315c661d
commit
facbf1f874
|
|
@ -1,66 +0,0 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using UnityEngine;
|
||||
|
||||
namespace UniGLTF.MeshUtility
|
||||
{
|
||||
public class BoneMeshRemoverValidator
|
||||
{
|
||||
private Animator _cAnimator = null;
|
||||
private Transform _cEraseRoot = null;
|
||||
private SkinnedMeshRenderer _pSkinnedMesh;
|
||||
private Animator _pAnimator;
|
||||
private Transform _pEraseRoot;
|
||||
|
||||
public void Validate(SkinnedMeshRenderer _skinnedMesh, List<BoneMeshEraser.EraseBone> _eraseBones)
|
||||
{
|
||||
// any better way we can detect component change?
|
||||
if (_skinnedMesh != _pSkinnedMesh || _cAnimator != _pAnimator || _cEraseRoot != _pEraseRoot)
|
||||
{
|
||||
BoneMeshEraserValidate(_skinnedMesh, _eraseBones);
|
||||
}
|
||||
_pSkinnedMesh = _skinnedMesh;
|
||||
_pAnimator = _cAnimator;
|
||||
_pEraseRoot = _cEraseRoot;
|
||||
}
|
||||
|
||||
void BoneMeshEraserValidate(SkinnedMeshRenderer skinnedMeshRenderer, List<BoneMeshEraser.EraseBone> eraseBones)
|
||||
{
|
||||
eraseBones.Clear();
|
||||
if (skinnedMeshRenderer == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (_cEraseRoot == null)
|
||||
{
|
||||
if (_cAnimator != null)
|
||||
{
|
||||
_cEraseRoot = _cAnimator.GetBoneTransform(HumanBodyBones.Head);
|
||||
//Debug.LogFormat("head: {0}", EraseRoot);
|
||||
}
|
||||
}
|
||||
|
||||
eraseBones.AddRange(skinnedMeshRenderer.bones.Select(x =>
|
||||
{
|
||||
var eb = new BoneMeshEraser.EraseBone
|
||||
{
|
||||
Bone = x,
|
||||
};
|
||||
|
||||
if (_cEraseRoot != null)
|
||||
{
|
||||
// 首の子孫を消去
|
||||
if (eb.Bone.Ancestor().Any(y => y == _cEraseRoot))
|
||||
{
|
||||
//Debug.LogFormat("erase {0}", x);
|
||||
eb.Erase = true;
|
||||
}
|
||||
}
|
||||
|
||||
return eb;
|
||||
}));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
fileFormatVersion: 2
|
||||
guid: fb28fac2e7b5e684fb023a88862106f0
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -12,8 +12,6 @@ namespace UniGLTF.MeshUtility
|
|||
|
||||
private GameObject _exportTarget;
|
||||
|
||||
public BoneMeshRemoverValidator _boneMeshRemoverValidator = new BoneMeshRemoverValidator();
|
||||
|
||||
[SerializeField]
|
||||
public bool _separateByBlendShape = true;
|
||||
|
||||
|
|
@ -92,7 +90,6 @@ namespace UniGLTF.MeshUtility
|
|||
{
|
||||
_boneMeshEraserEditor.OnInspectorGUI();
|
||||
}
|
||||
_boneMeshRemoverValidator.Validate(_skinnedMeshRenderer, _eraseBones);
|
||||
if (TabBoneMeshRemover.TryExecutable(_exportTarget, _skinnedMeshRenderer, out string msg))
|
||||
{
|
||||
processed = TabBoneMeshRemover.OnGUI(_exportTarget, _skinnedMeshRenderer, _eraseBones);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user