Esempio n. 1
0
    private Vector3 LimitedVelocity(Vector3 currentVelocity)
    {
        Vector2 flatVelocity = UtilMaths.V3toV2_XZ(currentVelocity);

        flatVelocity = GetLimitedLongitudinalVelocity(flatVelocity);

        return(UtilMaths.V2toV3_XZ(flatVelocity, currentVelocity.y));
    }
Esempio n. 2
0
    public Vector3 Move(Vector2 moveVector, Vector3 lookVectorForward, Vector3 lookVectorRight, Vector3 initialVelocity)
    {
        Vector2 RotatedLookVector = CalculateRotatedLookVector(
            moveVector,
            UtilMaths.V3toV2_XZ(lookVectorForward),
            UtilMaths.V3toV2_XZ(lookVectorRight));

        Vector3 UpdatedVel = UpdatedVelocity(RotatedLookVector, initialVelocity);

        return(UpdatedVel);
    }
Esempio n. 3
0
 public void Approximately_GivenTwoVectorsWithTwoAxesOutsideAcceptableError_ReturnsFalse()
 {
     Assert.IsFalse(UtilMaths.Approximately(new Vector3(0, 0, 0), new Vector3(0.1f, 0.1f, 0f), 0.01f));
 }
Esempio n. 4
0
 public void Approximately_GivenTwoIdenticalVectors_ReturnsTrue()
 {
     Assert.IsTrue(UtilMaths.Approximately(new Vector3(1, 1, 1), new Vector3(1, 1, 1), 0.01f));
 }
Esempio n. 5
0
 public void Approximately_GivenTwoSimilarVectorsWithinAcceptableError_ReturnsTrue()
 {
     Assert.IsTrue(UtilMaths.Approximately(new Vector3(0, 0, 0), new Vector3(0.00001f, 0.00001f, 0.00001f), 0.01f));
 }
Esempio n. 6
0
 public void V2toV3YZ_givenVector2_returnsCorrectVector3()
 {
     Assert.AreEqual(UtilMaths.V2toV3_YZ(TestVector2), new Vector3(0, 1f, 2f));
 }
Esempio n. 7
0
 public void V2toV3XY_givenVector3_returnsCorrectVector3()
 {
     Assert.AreEqual(UtilMaths.V2toV3_XY(TestVector2), new Vector3(1f, 2, 0f));
 }
Esempio n. 8
0
 public void V3toV2YZ_givenVector3_returnsCorrectVector2()
 {
     Assert.AreEqual(UtilMaths.V3toV2_YZ(TestVector3), new Vector2(2f, 3f));
 }
Esempio n. 9
0
 public void V3toV2XY_givenVector3_returnsCorrectVector2()
 {
     Assert.AreEqual(UtilMaths.V3toV2_XY(TestVector3), new Vector2(1f, 2f));
 }