Multiply() 공개 메소드

public Multiply ( Matrix4 matrix ) : Vector4
matrix Matrix4
리턴 Vector4
예제 #1
0
        public static void Project(ref Vector4 vector, ref Matrix4 projectionMatrix, ref Matrix4 viewMatrix, int viewX, int viewY, int viewWidth, int viewHeight, out Vector4 result)
        {
            result = vector;
            result = result.Multiply(viewMatrix);
            result = result.Multiply(projectionMatrix);

            float wDelta = 1 / result.W;

            result.X *= wDelta;
            result.Y *= wDelta;
            result.Z *= wDelta;

            result.X = (result.X * .5f) + .5f;
            result.Y = (result.Y * .5f) + .5f;
            result.Z = (result.Z * .5f) + .5f;

            result.X = (result.X * viewWidth) + viewX;
            result.Y = (result.Y * viewHeight) + viewY;
        }
예제 #2
0
        public static void Project(ref Vector4 vector, ref Matrix4 projectionMatrix, ref Matrix4 viewMatrix, int viewX, int viewY, int viewWidth, int viewHeight, out Vector4 result)
        {
            result = vector;
            result = result.Multiply(viewMatrix);
            result = result.Multiply(projectionMatrix);

            float wDelta = 1 / result.W;
            result.X *= wDelta;
            result.Y *= wDelta;
            result.Z *= wDelta;

            result.X = (result.X * .5f) + .5f;
            result.Y = (result.Y * .5f) + .5f;
            result.Z = (result.Z * .5f) + .5f;

            result.X = (result.X * viewWidth) + viewX;
            result.Y = (result.Y * viewHeight) + viewY;
        }