38 lines
1.7 KiB
C#
38 lines
1.7 KiB
C#
using NUnit.Framework;
|
|
using Unity.Collections;
|
|
using Unity.Mathematics;
|
|
using static Rukhanka.AnimationProcessSystem;
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////
|
|
|
|
namespace Rukhanka.Tests
|
|
{
|
|
public class AnimationProcessSystemTests
|
|
{
|
|
[Test]
|
|
public void MuscleRangeToRadiansTest()
|
|
{
|
|
var r0 = ComputeBoneAnimationJob.MuscleRangeToRadians(new float3(-60, -30, -100), new float3(40, 60, 120), new float3(-0.5f, 0.0f, 0.5f));
|
|
Assert.IsTrue(math.all(r0 == new float3(-30, 0, 60)));
|
|
|
|
var r1 = ComputeBoneAnimationJob.MuscleRangeToRadians(new float3(-60, -30, -100), new float3(40, 60, 120), new float3(0, 0, 0));
|
|
Assert.IsTrue(math.all(r1 == new float3(0, 0, 0)));
|
|
|
|
var r2 = ComputeBoneAnimationJob.MuscleRangeToRadians(new float3(-91, -92, -93), new float3(94, 95, 96), new float3(1, 1, 1));
|
|
Assert.IsTrue(math.all(r2 == new float3(94, 95, 96)));
|
|
|
|
var r3 = ComputeBoneAnimationJob.MuscleRangeToRadians(new float3(-91, -92, -93), new float3(94, 95, 96), new float3(-1, -1, -1));
|
|
Assert.IsTrue(math.all(r3 == new float3(-91, -92, -93)));
|
|
|
|
var r4 = ComputeBoneAnimationJob.MuscleRangeToRadians(new float3(-60, -30, -100), new float3(40, 60, 120), new float3(-0.9f, 0.1f, 0.9f));
|
|
Assert.IsTrue(math.all(r4 == new float3(-54, 6, 108)));
|
|
|
|
var r5 = ComputeBoneAnimationJob.MuscleRangeToRadians(new float3(-60, -30, -100), new float3(40, 60, 120), new float3(0.9f, -0.1f, -0.2f));
|
|
Assert.IsTrue(math.all(r5 == new float3(36, -3, -20)));
|
|
|
|
var r6 = ComputeBoneAnimationJob.MuscleRangeToRadians(new float3(-12, -13, -14), new float3(12, 13, 14), new float3(-2, 3, -5.5f));
|
|
Assert.IsTrue(math.all(r6 == new float3(-24, 39, -77)));
|
|
}
|
|
}
|
|
}
|