public void ItShouldCalculateAnchorPositionForEachFrame() { var anchorIndex = CompiledModel.Anchors.FindIndex(x => x.Name == "Test_Anchor"); ModelInstance.RunAnimation(AnimationType.Walking, false, false); for (var i = 0; i < CompiledModel.Animations[AnimationType.Walking].Frames.Count; i++) { ModelInstance.Update(1 / 24.0f); var calculatedAnchorPosition = ModelInstance.Anchors[anchorIndex].Position; var expectedAnchorPosition = CompiledModel.Animations[AnimationType.Walking].Frames[i].AnchorStates[anchorIndex].Position; Trace.WriteLine(string.Format("[{2}] calc:{0} expt:{1}", calculatedAnchorPosition, expectedAnchorPosition, i)); AssertVector(calculatedAnchorPosition, expectedAnchorPosition); var calculatedMatrix = ModelInstance.GetAnchorMatrix("Test_Anchor"); var expectedMatrix = ModelInstance.Anchors[anchorIndex].GetMatrix(); AssertMatrix(calculatedMatrix, expectedMatrix); } }