This commit is contained in:
ousttrue
2018-04-10 04:14:09 +09:00
parent e17aba79ad
commit 59033ea18b

View File

@@ -58,6 +58,7 @@ namespace VRM
CurrentClip = m_target.Clips[0];
}
List<bool> m_meshFolds = new List<bool>();
int m_preset;
public override void OnInspectorGUI()
{
@@ -121,24 +122,36 @@ namespace VRM
// sliders
bool changed = false;
int foldIndex = 0;
foreach (var item in PreviewSceneManager.EnumRenderItems.Where(x => x.SkinnedMeshRenderer!=null))
{
var mesh = item.SkinnedMeshRenderer.sharedMesh;
if (mesh != null)
if (mesh != null && mesh.blendShapeCount>0)
{
//var relativePath = UniGLTF.UnityExtensions.RelativePathFrom(renderer.transform, m_target.transform);
EditorGUILayout.LabelField(m_target.name + "/" + item.Path);
//EditorGUILayout.LabelField(m_target.name + "/" + item.Path);
for (int i = 0; i < mesh.blendShapeCount; ++i)
if (foldIndex >= m_meshFolds.Count)
{
var src = item.SkinnedMeshRenderer.GetBlendShapeWeight(i);
var dst = EditorGUILayout.Slider(mesh.GetBlendShapeName(i), src, 0, 100.0f);
if (dst != src)
{
item.SkinnedMeshRenderer.SetBlendShapeWeight(i, dst);
changed = true;
}
m_meshFolds.Add(false);
}
m_meshFolds[foldIndex] = EditorGUILayout.Foldout(m_meshFolds[foldIndex], item.SkinnedMeshRenderer.name);
if (m_meshFolds[foldIndex])
{
//EditorGUI.indentLevel += 1;
for (int i = 0; i < mesh.blendShapeCount; ++i)
{
var src = item.SkinnedMeshRenderer.GetBlendShapeWeight(i);
var dst = EditorGUILayout.Slider(mesh.GetBlendShapeName(i), src, 0, 100.0f);
if (dst != src)
{
item.SkinnedMeshRenderer.SetBlendShapeWeight(i, dst);
changed = true;
}
}
//EditorGUI.indentLevel -= 1;
}
++foldIndex;
}
}