您最多选择25个主题 主题必须以中文或者字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

46 行
1.7 KiB

using NUnit.Framework;
using VRMShaders.VRM10.MToon10.Runtime;
namespace VRMShaders.VRM10.MToon10.Tests
{
public sealed class MigrationTests
{
[Test]
public void MigrateToonyAndShift()
{
var delta = 0.001f;
// 0.x default
Assert.AreEqual(0.95f,MToon10Migrator.MigrateToShadingToony(0.9f, 0f), delta);
Assert.AreEqual(-0.05f,MToon10Migrator.MigrateToShadingShift(0.9f, 0f), delta);
// lambert
Assert.AreEqual(0.5f, MToon10Migrator.MigrateToShadingToony(0, 0), delta);
Assert.AreEqual(-0.5f, MToon10Migrator.MigrateToShadingShift(0, 0), delta);
// half lambert
Assert.AreEqual(0.0f, MToon10Migrator.MigrateToShadingToony(0, -1), delta);
Assert.AreEqual(0.0f, MToon10Migrator.MigrateToShadingShift(0, -1), delta);
// random
Assert.AreEqual(0.79f, MToon10Migrator.MigrateToShadingToony(0.7f, -0.4f), delta);
Assert.AreEqual(0.19f, MToon10Migrator.MigrateToShadingShift(0.7f, -0.4f), delta);
}
[Test]
public void MigrateGiIntensity()
{
// normal
Assert.AreEqual(0f, MToon10Migrator.MigrateToGiEqualization(1f));
// equalized
Assert.AreEqual(1f, MToon10Migrator.MigrateToGiEqualization(0f));
// intermediate
Assert.AreEqual(0.25f, MToon10Migrator.MigrateToGiEqualization(0.75f));
Assert.AreEqual(0.333f, MToon10Migrator.MigrateToGiEqualization(0.667f));
Assert.AreEqual(0.125f, MToon10Migrator.MigrateToGiEqualization(0.875f));
Assert.AreEqual(0.75f, MToon10Migrator.MigrateToGiEqualization(0.25f));
}
}
}