modular-avatar/Assets/_ModularAvatar/EditModeTests/MiscAnimationTests/MiscAnimationTests.cs
bd_ db7be7107c
fix: high quality curve setting is not preserved properly (#225)
This setting is set to _off_ on some imported animation files;
in this case, tangent data is not used and the curve is interpolated linearly.

Previously, we would sometimes set this to on as part of various animation
manipulations we perform in MA processing; this broke some avatars, e.g. "Fluria".
2023-02-25 17:53:02 +09:00

22 lines
746 B
C#

using modular_avatar_tests;
using nadena.dev.modular_avatar.core.editor;
using NUnit.Framework;
using UnityEditor;
public class MiscAnimationTests : TestBase
{
[Test]
public void HighQualityCurvesSettingPreserved()
{
var prefab = CreatePrefab("HighQualityCurvesSettingPreserved.prefab");
AvatarProcessor.ProcessAvatar(prefab);
var layer = findFxLayer(prefab, "Base Layer");
var hq_on = FindStateInLayer(layer, "HQ_ON");
var hq_off = FindStateInLayer(layer, "HQ_OFF");
Assert.True(new SerializedObject(hq_on.motion).FindProperty("m_UseHighQualityCurve").boolValue);
Assert.False(new SerializedObject(hq_off.motion).FindProperty("m_UseHighQualityCurve").boolValue);
}
}