FromViewProj() public static method

public static FromViewProj ( Matrix viewProj ) : Frustum
viewProj Matrix
return Frustum
示例#1
0
        public override void UpdateViewMatrix()
        {
            if (Beta < MinBeta)
            {
                Beta = MinBeta;
            }

            var sideRadius = Radius * MathF.Cos(Beta);
            var height     = Radius * MathF.Sin(Beta);

            if (Target.Y + height < MinY)
            {
                height = MinY - Target.Y;
            }

            Position = new Vector3(
                Target.X + sideRadius * MathF.Cos(Alpha),
                Target.Y + height,
                Target.Z + sideRadius * MathF.Sin(Alpha));

            SetView(Matrix.LookAtRH(Position, Target, Vector3.UnitY));

            Right = new Vector3(View.M11, View.M21, View.M31);
            Right.Normalize();

            Look = new Vector3(View.M13, View.M23, View.M33);
            Look.Normalize();

            Frustum = Frustum.FromViewProj(ViewProj);
        }
示例#2
0
        public override void UpdateViewMatrix()
        {
            SetView(RhMode ? Matrix.LookAtRH(Position, Position + Look, Up) :
                    Matrix.LookAtLH(Position, Position + Look, Up));

            Right = new Vector3(View.M11, View.M21, View.M31);
            Right.Normalize();

            Frustum = Frustum.FromViewProj(ViewProj);
        }
示例#3
0
 public override void UpdateViewMatrix()
 {
     SetView(Matrix.LookAtRH(Position, Target, Up));
     Frustum = Frustum.FromViewProj(ViewProj);
 }