|
|
|
|
@@ -103,7 +103,7 @@ public class DanMachiCharacterContainer : DanMachiObjectContainer, IAnimated
|
|
|
|
|
{
|
|
|
|
|
if (materials.Contains(material)) continue;
|
|
|
|
|
materials.Add(material);
|
|
|
|
|
material.shader = Shader.Find("UniversalStandard");
|
|
|
|
|
material.shader = Shader.Find("DanMachiUnlit");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
@@ -112,24 +112,24 @@ public class DanMachiCharacterContainer : DanMachiObjectContainer, IAnimated
|
|
|
|
|
{
|
|
|
|
|
var humanBones = new Dictionary<HumanBodyBones, Transform>();
|
|
|
|
|
var allBones = _animator.transform.GetComponentsInChildren<Transform>().ToDictionary(b=>b.name, b=>b);
|
|
|
|
|
humanBones.Add(HumanBodyBones.Hips, TryGet(allBones,"Hips"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.Spine, TryGet(allBones,"Spine"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.RightUpperLeg, TryGet(allBones,"RightUpLeg"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.RightLowerLeg, TryGet(allBones,"RightLeg"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.RightFoot, TryGet(allBones,"RightFoot"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.RightToes, TryGet(allBones,"RightToeBase"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftUpperLeg, TryGet(allBones,"LeftUpLeg"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftLowerLeg, TryGet(allBones,"LeftLeg"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftFoot, TryGet(allBones,"LeftFoot"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftToes, TryGet(allBones,"LeftToeBase"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.Chest, TryGet(allBones,"Spine1"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.UpperChest, TryGet(allBones,"Spine2"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.Neck, TryGet(allBones,"Neck"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.Head, TryGet(allBones,"Head"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.RightShoulder, TryGet(allBones,"RightShoulder"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.RightUpperArm, TryGet(allBones,"RightArm"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.RightLowerArm, TryGet(allBones,"RightForeArm"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.RightHand, TryGet(allBones,"RightHand"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.Hips, TryGet(allBones,"Hips"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.Spine, TryGet(allBones,"Spine"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.RightUpperLeg, TryGet(allBones,"RightUpLeg"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.RightLowerLeg, TryGet(allBones,"RightLeg"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.RightFoot, TryGet(allBones,"RightFoot"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.RightToes, TryGet(allBones,"RightToeBase"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftUpperLeg, TryGet(allBones,"LeftUpLeg"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftLowerLeg, TryGet(allBones,"LeftLeg"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftFoot, TryGet(allBones,"LeftFoot"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftToes, TryGet(allBones,"LeftToeBase"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.Chest, TryGet(allBones,"Spine1"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.UpperChest, TryGet(allBones,"Spine2"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.Neck, TryGet(allBones,"Neck"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.Head, TryGet(allBones,"Head"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.RightShoulder, TryGet(allBones,"RightShoulder"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.RightUpperArm, TryGet(allBones,"RightArm"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.RightLowerArm, TryGet(allBones,"RightForeArm"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.RightHand, TryGet(allBones,"RightHand"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.RightIndexProximal, TryGet(allBones,"RightHandIndex1"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.RightIndexIntermediate, TryGet(allBones,"RightHandIndex2"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.RightMiddleProximal, TryGet(allBones,"RightHandMiddle1"));
|
|
|
|
|
@@ -140,20 +140,20 @@ public class DanMachiCharacterContainer : DanMachiObjectContainer, IAnimated
|
|
|
|
|
humanBones.Add(HumanBodyBones.RightLittleIntermediate, TryGet(allBones,"RightHandPinky2"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.RightThumbProximal, TryGet(allBones,"RightHandThumb1"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.RightThumbIntermediate, TryGet(allBones,"RightHandThumb2"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftShoulder, TryGet(allBones,"LeftShoulder"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftUpperArm, TryGet(allBones,"LeftArm"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftLowerArm, TryGet(allBones,"LeftForeArm"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftHand, TryGet(allBones,"LeftHand"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftIndexProximal, TryGet(allBones,"LeftHandIndex1"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftIndexIntermediate, TryGet(allBones,"LeftHandIndex2"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftMiddleProximal, TryGet(allBones,"LeftHandMiddle1"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftMiddleIntermediate, TryGet(allBones,"LeftHandMiddle2"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftRingProximal, TryGet(allBones,"LeftHandRing1"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftRingIntermediate, TryGet(allBones,"LeftHandRing2"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftLittleProximal, TryGet(allBones,"LeftHandPinky1"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftLittleIntermediate, TryGet(allBones,"LeftHandPinky2"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftThumbProximal, TryGet(allBones,"LeftHandThumb1"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftThumbIntermediate, TryGet(allBones,"LeftHandThumb2"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftShoulder, TryGet(allBones,"LeftShoulder"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftUpperArm, TryGet(allBones,"LeftArm"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftLowerArm, TryGet(allBones,"LeftForeArm"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftHand, TryGet(allBones,"LeftHand"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftIndexProximal, TryGet(allBones,"LeftHandIndex1"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftIndexIntermediate, TryGet(allBones,"LeftHandIndex2"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftMiddleProximal, TryGet(allBones,"LeftHandMiddle1"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftMiddleIntermediate, TryGet(allBones,"LeftHandMiddle2"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftRingProximal, TryGet(allBones,"LeftHandRing1"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftRingIntermediate, TryGet(allBones,"LeftHandRing2"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftLittleProximal, TryGet(allBones,"LeftHandPinky1"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftLittleIntermediate, TryGet(allBones,"LeftHandPinky2"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftThumbProximal, TryGet(allBones,"LeftHandThumb1"));
|
|
|
|
|
humanBones.Add(HumanBodyBones.LeftThumbIntermediate, TryGet(allBones,"LeftHandThumb2"));
|
|
|
|
|
foreach(var bone in humanBones)
|
|
|
|
|
{
|
|
|
|
|
if(bone.Value != null)
|
|
|
|
|
@@ -172,7 +172,7 @@ public class DanMachiCharacterContainer : DanMachiObjectContainer, IAnimated
|
|
|
|
|
{
|
|
|
|
|
tags.Add(SerializableBone.BoneTags.Finger);
|
|
|
|
|
}
|
|
|
|
|
UIHandle.CreateAsChild<UIHandleBone>(bone.Value).Init(this, tags);
|
|
|
|
|
UIHandle.CreateAsChild<UIHandleBone>(bone.Value).Init(this, tags).WithLineRenderer();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
foreach(var bone in allBones.Values.Except(humanBones.Values))
|
|
|
|
|
@@ -182,7 +182,7 @@ public class DanMachiCharacterContainer : DanMachiObjectContainer, IAnimated
|
|
|
|
|
{
|
|
|
|
|
tags.Add(SerializableBone.BoneTags.Dynamic);
|
|
|
|
|
}
|
|
|
|
|
UIHandle.CreateAsChild<UIHandleBone>(bone).Init(this, tags);
|
|
|
|
|
UIHandle.CreateAsChild<UIHandleBone>(bone).Init(this, tags).WithLineRenderer();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
_humanBones = humanBones;
|
|
|
|
|
|