DX11:MATH


Contains various vector / matrix math functionality.
All functions that have a vector / matrix result will return that result, either as the given instance to store the result to, or as a temporary vector / matrix, if no specific
vector / matrix instance to write the result to was provided. This allows these math functions to be chained together in more elaborate calculations. Temporary vectors / matrices
are valid throughout the current frame and purged at the next call to DX11 SYNC.



DX11 WRAP : Return Float = DX11 WRAP(value, min, max)

DX11 CREATE VECTOR2 : Return Dword = DX11 CREATE VECTOR2([x], [y])

DX11 CREATE TEMP VECTOR2 : Return Dword = DX11 CREATE TEMP VECTOR2([x], [y])

DX11 DELETE VECTOR2 : DX11 DELETE VECTOR2 vector

DX11 VECTOR2 EXISTS : Return Boolean = DX11 VECTOR2 EXISTS(vector2)

DX11 COPY VECTOR2 : Return Dword = DX11 COPY VECTOR2(sourceVector2, targetVector2)

DX11 GET VECTOR2 X : Return Float = DX11 GET VECTOR2 X(vector)

DX11 GET VECTOR2 Y : Return Float = DX11 GET VECTOR2 Y(vector)

DX11 SET VECTOR2 : DX11 SET VECTOR2 vector, x, y

DX11 IS VECTOR2 EQUAL : Return Boolean = DX11 IS VECTOR2 EQUAL(vectorA, vectorB)

DX11 GET VECTOR2 LENGTH : Return Float = DX11 GET VECTOR2 LENGTH(vector)

DX11 NORMALIZE VECTOR2 : Return Dword = DX11 NORMALIZE VECTOR2(sourceVector, [resultVector])

DX11 ADD VECTOR2 : Return Dword = DX11 ADD VECTOR2(vectorA, vectorB, [resultVector])

DX11 SUBTRACT VECTOR2 : Return Dword = DX11 SUBTRACT VECTOR2(vectorA, vectorB, [resultVector])

DX11 MULTIPLY VECTOR2 : Return Dword = DX11 MULTIPLY VECTOR2(vectorA, vectorB, [resultVector])

DX11 DIVIDE VECTOR2 : Return Dword = DX11 DIVIDE VECTOR2(vectorA, vectorB, [resultVector])

DX11 GET VECTOR2 DOT PRODUCT : Return Float = DX11 GET VECTOR2 DOT PRODUCT(vectorA, vectorB)

DX11 TRANSFORM VECTOR2 : Return Dword = DX11 TRANSFORM VECTOR2(vector, matrix, [resultVector])

DX11 TRANSFORM VECTOR2 COORD : Return Dword = DX11 TRANSFORM VECTOR2 COORD(vector, matrix, [resultVector])

DX11 CREATE VECTOR3 : Return Dword = DX11 CREATE VECTOR3([x], [y], [z])

DX11 CREATE TEMP VECTOR3 : Return Dword = DX11 CREATE TEMP VECTOR3([x], [y], [z])

DX11 DELETE VECTOR3 : DX11 DELETE VECTOR3 vector

DX11 VECTOR3 EXISTS : Return Boolean = DX11 VECTOR3 EXISTS(vector3)

DX11 COPY VECTOR3 : Return Dword = DX11 COPY VECTOR3(sourceVector3, targetVector3)

DX11 GET VECTOR3 X : Return Float = DX11 GET VECTOR3 X(vector)

DX11 GET VECTOR3 Y : Return Float = DX11 GET VECTOR3 Y(vector)

DX11 GET VECTOR3 Z : Return Float = DX11 GET VECTOR3 Z(vector)

DX11 SET VECTOR3 : DX11 SET VECTOR3 vector, x, y, z

DX11 IS VECTOR3 EQUAL : Return Boolean = DX11 IS VECTOR3 EQUAL(vectorA, vectorB)

DX11 GET VECTOR3 LENGTH : Return Float = DX11 GET VECTOR3 LENGTH(vector)

DX11 NORMALIZE VECTOR3 : Return Dword = DX11 NORMALIZE VECTOR3(sourceVector, [resultVector])

DX11 ADD VECTOR3 : Return Dword = DX11 ADD VECTOR3(vectorA, vectorB, [resultVector])

DX11 SUBTRACT VECTOR3 : Return Dword = DX11 SUBTRACT VECTOR3(vectorA, vectorB, [resultVector])

DX11 MULTIPLY VECTOR3 : Return Dword = DX11 MULTIPLY VECTOR3(vectorA, vectorB, [resultVector])

DX11 DIVIDE VECTOR3 : Return Dword = DX11 DIVIDE VECTOR3(vectorA, vectorB, [resultVector])

DX11 GET VECTOR3 DOT PRODUCT : Return Float = DX11 GET VECTOR3 DOT PRODUCT(vectorA, vectorB)

DX11 GET VECTOR3 CROSS PRODUCT : Return Dword = DX11 GET VECTOR3 CROSS PRODUCT(vectorA, vectorB, [resultVector])

DX11 TRANSFORM VECTOR3 : Return Dword = DX11 TRANSFORM VECTOR3(vector, matrix, [resultVector])

DX11 TRANSFORM VECTOR3 COORD : Return Dword = DX11 TRANSFORM VECTOR3 COORD(vector, matrix, [resultVector])

DX11 CREATE VECTOR4 : Return Dword = DX11 CREATE VECTOR4([x], [y], [z], [w])

DX11 CREATE TEMP VECTOR4 : Return Dword = DX11 CREATE TEMP VECTOR4([x], [y], [z], [w])

DX11 DELETE VECTOR4 : DX11 DELETE VECTOR4 vector

DX11 VECTOR4 EXISTS : Return Boolean = DX11 VECTOR4 EXISTS(vector4)

DX11 COPY VECTOR4 : Return Dword = DX11 COPY VECTOR4(sourceVector4, targetVector4)

DX11 GET VECTOR4 X : Return Float = DX11 GET VECTOR4 X(vector)

DX11 GET VECTOR4 Y : Return Float = DX11 GET VECTOR4 Y(vector)

DX11 GET VECTOR4 Z : Return Float = DX11 GET VECTOR4 Z(vector)

DX11 GET VECTOR4 W : Return Float = DX11 GET VECTOR4 W(vector)

DX11 SET VECTOR4 : DX11 SET VECTOR4 vector, x, y, z, w

DX11 IS VECTOR4 EQUAL : Return Boolean = DX11 IS VECTOR4 EQUAL(vectorA, vectorB)

DX11 GET VECTOR4 LENGTH : Return Float = DX11 GET VECTOR4 LENGTH(vector)

DX11 NORMALIZE VECTOR4 : Return Dword = DX11 NORMALIZE VECTOR4(sourceVector, [resultVector])

DX11 ADD VECTOR4 : Return Dword = DX11 ADD VECTOR4(vectorA, vectorB, [resultVector])

DX11 SUBTRACT VECTOR4 : Return Dword = DX11 SUBTRACT VECTOR4(vectorA, vectorB, [resultVector])

DX11 MULTIPLY VECTOR4 : Return Dword = DX11 MULTIPLY VECTOR4(vectorA, vectorB, [resultVector])

DX11 DIVIDE VECTOR4 : Return Dword = DX11 DIVIDE VECTOR4(vectorA, vectorB, [resultVector])

DX11 GET VECTOR4 DOT PRODUCT : Return Float = DX11 GET VECTOR4 DOT PRODUCT(vectorA, vectorB)

DX11 TRANSFORM VECTOR4 : Return Dword = DX11 TRANSFORM VECTOR4(vector, matrix, [resultVector])

DX11 CREATE MATRIX : Return Dword = DX11 CREATE MATRIX([_11], [_12], [_13], [_14], [_21], [_22], [_23], [_24], [_31], [_32], [_33], [_34], [_41], [_42], [_43], [_44])

DX11 CREATE TEMP MATRIX : Return Dword = DX11 CREATE TEMP MATRIX([_11], [_12], [_13], [_14], [_21], [_22], [_23], [_24], [_31], [_32], [_33], [_34], [_41], [_42], [_43], [_44])

DX11 DELETE MATRIX : DX11 DELETE MATRIX matrix

DX11 MATRIX EXISTS : Return Boolean = DX11 MATRIX EXISTS(matrix)

DX11 COPY MATRIX : Return Dword = DX11 COPY MATRIX(sourceMatrix, targetMatrix)

DX11 SET MATRIX ELEMENT : DX11 SET MATRIX ELEMENT matrix, row, column, value

DX11 GET MATRIX ELEMENT : Return Float = DX11 GET MATRIX ELEMENT(matrix, row, column)

DX11 MULTIPLY MATRIX : Return Dword = DX11 MULTIPLY MATRIX(matrixA, matrixB, [resultMatrix])

DX11 IS MATRIX EQUAL : Return Boolean = DX11 IS MATRIX EQUAL(matrixA, matrixB)

DX11 IS MATRIX IDENTITY : Return Boolean = DX11 IS MATRIX IDENTITY(matrix)

DX11 GET IDENTITY MATRIX : Return Dword = DX11 GET IDENTITY MATRIX([matrix])

DX11 GET WORLD MATRIX : Return Dword = DX11 GET WORLD MATRIX(object, [matrixResult])

DX11 GET MATRIX INVERSE : Return Float determinant  = DX11 GET MATRIX INVERSE(sourceMatrix, resultMatrix)

DX11 GET MATRIX INVERSE WITHOUT DETERMINANT : Return Dword = DX11 GET MATRIX INVERSE WITHOUT DETERMINANT(sourceMatrix, [resultMatrix])

DX11 GET MATRIX TRANSPOSE : Return Dword = DX11 GET MATRIX TRANSPOSE(sourceMatrix, [resultMatrix])

DX11 GET MATRIX DETERMINANT : Return Float = DX11 GET MATRIX DETERMINANT(matrix)

DX11 BUILD LOOKAT LHMATRIX : Return Dword = DX11 BUILD LOOKAT LHMATRIX(eyePos, lookAtPos, upVector, [resultMatrix])

DX11 BUILD LOOKAT RHMATRIX : Return Dword = DX11 BUILD LOOKAT RHMATRIX(eyePos, lookAtPos, upVector, [resultMatrix])

DX11 BUILD PERSPECTIVE LHMATRIX : Return Dword = DX11 BUILD PERSPECTIVE LHMATRIX(fov, aspectRatio, nearZ, [farZ], [resultMatrix])

DX11 BUILD PERSPECTIVE RHMATRIX : Return Dword = DX11 BUILD PERSPECTIVE RHMATRIX(fov, aspectRatio, nearZ, [farZ], [resultMatrix])

DX11 BUILD ORTHOGRAPHIC LHMATRIX : Return Dword = DX11 BUILD ORTHOGRAPHIC LHMATRIX(left, right, bottom, top, near, [far], [resultMatrix])

DX11 BUILD ORTHOGRAPHIC RHMATRIX : Return Dword = DX11 BUILD ORTHOGRAPHIC RHMATRIX(left, right, bottom, top, near, [far], [resultMatrix])

DX11 BUILD REFLECTION MATRIX : Return Dword = DX11 BUILD REFLECTION MATRIX(planeVector4, [resultMatrix])

DX11 BUILD EULER ROTATION MATRIX : Return Dword = DX11 BUILD EULER ROTATION MATRIX(pitch, yaw, roll, [resultMatrix])

DX11 BUILD ROTATION MATRIX X : Return Dword = DX11 BUILD ROTATION MATRIX X(angle, [resultMatrix])

DX11 BUILD ROTATION MATRIX Y : Return Dword = DX11 BUILD ROTATION MATRIX Y(angle, [resultMatrix])

DX11 BUILD ROTATION MATRIX Z : Return Dword = DX11 BUILD ROTATION MATRIX Z(angle, [resultMatrix])

DX11 BUILD TRANSLATION MATRIX : Return Dword = DX11 BUILD TRANSLATION MATRIX(x, y, z, [resultMatrix])

DX11 BUILD SCALING MATRIX : Return Dword = DX11 BUILD SCALING MATRIX(x, y, z, [resultMatrix])

DX11 BUILD SHADOW MATRIX : Return Dword = DX11 BUILD SHADOW MATRIX(vec4ShadowPlane, vec4LightPosition, [resultMatrix])