コード例 #1
0
ファイル: Vector4Test.cs プロジェクト: Zodge/MonoGame
 public void LengthSquared()
 {
     var vector1 = new Vector4(1, 2, 3, 4);
     Assert.AreEqual(30, vector1.LengthSquared());
 }
コード例 #2
0
		public static void LengthSquared (int times)
		{
			var value = new Vector4 (0.1f, -2f, -0.2f, 0.56f);
			float result;
			
			for (int i = 0; i < times; i++) {
				result = value.LengthSquared ();
			}
		}
コード例 #3
0
        void _CreateTangentSpace(out Vector4 normal, out Vector4 tangent, out Vector4 binormal)
        {
            Vector3 point0 = new Vector3(-1.0f, -1.0f, 0.0f);
            Vector3 point1 = new Vector3(1.0f, -1.0f, 0.0f);
            Vector3 point2 = new Vector3(1.0f, 1.0f, 0.0f);
            Vector3 point3 = new Vector3(-1.0f, 1.0f, 0.0f);

            Vector3 v3n = Vector3.Cross(point1 - point0, point2 - point0);
            normal = new Vector4(v3n.X, v3n.Y, v3n.Z, 0.0f);
            if (normal.LengthSquared() > 0.0001f)
                normal.Normalize();

            Vector3 v3tangent = point1 - point0;
            tangent = new Vector4(v3tangent.X, v3tangent.Y, v3tangent.Z, 0.0f);
            if (tangent.LengthSquared() > 0.0001f)
                tangent.Normalize();

            Vector3 v3binormal = point3 - point0;
            binormal = new Vector4(v3binormal.X, v3binormal.Y, v3binormal.Z, 0.0f);
            if (binormal.LengthSquared() > 0.0001f)
                binormal.Normalize();
        }