BEPUutilities2.Matrix.CreatePerspectiveFieldOfViewLH C# (CSharp) Method

CreatePerspectiveFieldOfViewLH() private method

private CreatePerspectiveFieldOfViewLH ( float fieldOfView, float aspectRatio, float nearClip, float farClip, Matrix &perspective ) : void
fieldOfView float
aspectRatio float
nearClip float
farClip float
perspective Matrix
return void
        public static void CreatePerspectiveFieldOfViewLH(float fieldOfView, float aspectRatio, float nearClip, float farClip, out Matrix perspective)
        {
            float h = 1f / ((float)Math.Tan(fieldOfView * 0.5f));
            float w = h / aspectRatio;
            float m33 = farClip / (farClip - nearClip);
            perspective.X = new Vector4(w, 0, 0, 0);
            perspective.Y = new Vector4(0, h, 0, 0);
            perspective.Z = new Vector4(0, 0, m33, 1);
            perspective.W = new Vector4(0, 0, -nearClip * m33, 0);
        }