mirror of
https://github.com/bdunderscore/modular-avatar.git
synced 2024-12-29 18:55:06 +08:00
3667dc319a
* add version defines * refactor: prefer BuildContext.ctor() overload taking GameObject * wrap unit tests entirely with MA_VRCSDK3_AVATARS * wrap unit tests smart with MA_VRCSDK3_AVATARS * wrap runtime entirely with MA_VRCSDK3_AVATARS * wrap VRC.SDKBase.IEditorOnly with MA_VRCSDK3_AVATARS * wrap editor entirely with MA_VRCSDK3_AVATARS * fix AvatarObjectReference.Get(Component) * wrap editor smart with MA_VRCSDK3_AVATARS * wrap BuildContext smart with MA_VRCSDK3_AVATARS * wrap PluginDefinition smart with MA_VRCSDK3_AVATARS * style: move conditional compiles one step outside
37 lines
1.1 KiB
C#
37 lines
1.1 KiB
C#
#if MA_VRCSDK3_AVATARS
|
|
|
|
using nadena.dev.modular_avatar.core.editor;
|
|
using NUnit.Framework;
|
|
using UnityEditor;
|
|
using UnityEngine;
|
|
|
|
namespace modular_avatar_tests.AnimateAddedBones
|
|
{
|
|
/// <summary>
|
|
/// This test verifies that merged animations which affect a bone newly added to an armature by Merge Armature
|
|
/// are properly adjusted for the new bone path.
|
|
/// </summary>
|
|
public class AnimateAddedBones : TestBase
|
|
{
|
|
[Test]
|
|
public void AnimatesAddedBones()
|
|
{
|
|
var prefab = CreatePrefab("AnimateAddedBones.prefab");
|
|
AvatarProcessor.ProcessAvatar(prefab);
|
|
|
|
var layerName = "merged";
|
|
|
|
var motion = findFxClip(prefab, layerName);
|
|
|
|
var cubeObject = prefab.transform.Find("Armature/Hips").GetChild(0).gameObject;
|
|
Assert.True(cubeObject.name.StartsWith("Cube$"));
|
|
|
|
var binding =
|
|
EditorCurveBinding.FloatCurve("Armature/Hips/" + cubeObject.name, typeof(Transform),
|
|
"localEulerAnglesRaw.x");
|
|
Assert.NotNull(AnimationUtility.GetEditorCurve(motion, binding));
|
|
}
|
|
}
|
|
}
|
|
|
|
#endif |