@@ -678,17 +678,16 @@ public void TestBoneWeightExport(string fbxPath){
678
678
Debug . LogWarningFormat ( "Compared {0} out of a possible {1} bone weights" , comparisonCount , minVertCount ) ;
679
679
}
680
680
681
- public static void AreNearEqual ( Vector3 a , Vector3 b )
682
- {
683
- Assert . That ( a . x , Is . EqualTo ( b . x ) . Within ( 0.0001f ) ) ;
684
- Assert . That ( a . y , Is . EqualTo ( b . y ) . Within ( 0.0001f ) ) ;
685
- Assert . That ( a . z , Is . EqualTo ( b . z ) . Within ( 0.0001f ) ) ;
686
- }
687
- public static void AreNearEqual ( Vector3 [ ] a , Vector3 [ ] b )
681
+
682
+ public class Vector3Comparer : IComparer < Vector3 >
688
683
{
689
- Assert . AreEqual ( a . Length , b . Length ) ;
690
- for ( int i = 0 ; i < a . Length ; ++ i )
691
- AreNearEqual ( a [ i ] , b [ i ] ) ;
684
+ public int Compare ( Vector3 a , Vector3 b )
685
+ {
686
+ Assert . That ( a . x , Is . EqualTo ( b . x ) . Within ( 0.00001f ) ) ;
687
+ Assert . That ( a . y , Is . EqualTo ( b . y ) . Within ( 0.00001f ) ) ;
688
+ Assert . That ( a . z , Is . EqualTo ( b . z ) . Within ( 0.00001f ) ) ;
689
+ return 0 ; // we're almost equal
690
+ }
692
691
}
693
692
694
693
[ Test ]
@@ -722,11 +721,11 @@ public void TestBlendShapeExport()
722
721
var originalMesh = originalSMR . sharedMesh ;
723
722
var exportedMesh = exportedSMR . sharedMesh ;
724
723
Assert . IsNotNull ( originalMesh ) ;
725
- Assert . IsNotNull ( exportedMesh ) ;
726
-
727
- // compare blend shape data
724
+ Assert . IsNotNull ( exportedMesh ) ;
725
+
726
+ // compare blend shape data
727
+ Assert . AreNotEqual ( originalMesh . blendShapeCount , 0 ) ;
728
728
Assert . AreEqual ( originalMesh . blendShapeCount , exportedMesh . blendShapeCount ) ;
729
- if ( originalMesh . blendShapeCount > 0 )
730
729
{
731
730
var deltaVertices = new Vector3 [ originalMesh . vertexCount ] ;
732
731
var deltaNormals = new Vector3 [ originalMesh . vertexCount ] ;
@@ -747,9 +746,11 @@ public void TestBlendShapeExport()
747
746
748
747
originalMesh . GetBlendShapeFrameVertices ( bi , fi , deltaVertices , deltaNormals , deltaTangents ) ;
749
748
exportedMesh . GetBlendShapeFrameVertices ( bi , fi , fbxDeltaVertices , fbxDeltaNormals , fbxDeltaTangents ) ;
750
- AreNearEqual ( deltaVertices , fbxDeltaVertices ) ;
751
- AreNearEqual ( deltaNormals , fbxDeltaNormals ) ;
752
- AreNearEqual ( deltaTangents , fbxDeltaTangents ) ;
749
+
750
+ var v3comparer = new Vector3Comparer ( ) ;
751
+ Assert . That ( deltaVertices , Is . EqualTo ( fbxDeltaVertices ) . Using < Vector3 > ( v3comparer ) , string . Format ( "delta vertices don't match" ) ) ;
752
+ Assert . That ( deltaNormals , Is . EqualTo ( fbxDeltaNormals ) . Using < Vector3 > ( v3comparer ) , string . Format ( "delta normals don't match" ) ) ;
753
+ Assert . That ( deltaTangents , Is . EqualTo ( fbxDeltaTangents ) . Using < Vector3 > ( v3comparer ) , string . Format ( "delta tangents don't match" ) ) ;
753
754
754
755
}
755
756
}
0 commit comments