Xors3d Engine
Matrix semantics

Defines

#define MATRIX_PROJ
#define MATRIX_PROJINVERSE
#define MATRIX_PROJINVRSETRANSPOSE
#define MATRIX_PROJTRANSPOSE
#define MATRIX_VIEW
#define MATRIX_VIEWINVERSE
#define MATRIX_VIEWINVRSETRANSPOSE
#define MATRIX_VIEWPROJ
#define MATRIX_VIEWPROJINVERSE
#define MATRIX_VIEWPROJINVERSETRANSPOSE
#define MATRIX_VIEWTRANSPOSE
#define MATRIX_WORLD
#define MATRIX_WORLDINVERSE
#define MATRIX_WORLDINVERSETRANSPOSE
#define MATRIX_WORLDTRANSPOSE
#define MATRIX_WORLDVIEW
#define MATRIX_WORLDVIEWINVERSE
#define MATRIX_WORLDVIEWINVERSETRANSPOSE
#define MATRIX_WORLDVIEWPROJ
#define MATRIX_WORLDVIEWPROJINVERSE
#define MATRIX_WORLDVIEWPROJINVERSETRANSPOSE
#define MATRIX_WORLDVIEWPROJTRANSPOSE
#define MATRIX_WORLDVIEWTRANSPOSE

Detailed Description

Example of the use of matrix semantics:

float4x4 worldMatrix : MATRIX_WORLD;            // Xors3d will pass a world matrix in here 
float4x4 viewprojMatrix : MATRIX_VIEWPROJ;      // Xors3d will pass a product of view and projective matrices of camera

Define Documentation

#define MATRIX_WORLD

The world matrix of the entity. It translates, rotates and scales the vertices of the mesh. xPositionEntity(), xRotateEntity(), xScaleEntity() change this matrix.

#define MATRIX_WORLDVIEWPROJ

The product of entity's world matrix, camera's view matrix and camera's projection matrix.

#define MATRIX_VIEWPROJ

The product of camera's view matrix and camera's projection matrix.

#define MATRIX_VIEW

The view matrix of an active camera. It translates and rotates all the scene to place it in the camera view space. xPositionEntity(), xRotateEntity() called for camera entity change this matrix.

#define MATRIX_PROJ

The projection matrix of an active camera. It translates and rotates all the scene to place it in the camera projection space (camera viewport). xCameraViewport(), xCameraRange(), xCameraZoom() change this matrix.

#define MATRIX_WORLDVIEW

The product of entity's world matrix and camera's view matrix.

#define MATRIX_VIEWINVERSE

The inverted view matrix of an active camera.

#define MATRIX_WORLDINVERSETRANSPOSE

The inverted and transposed world matrix of an entity.

#define MATRIX_WORLDINVERSE

The inverted world matrix of an entity.

#define MATRIX_WORLDTRANSPOSE

The transposed world matrix of an entity.

#define MATRIX_VIEWPROJINVERSE

The inverted product of camera's view matrix and camera's projection matrix.

#define MATRIX_VIEWPROJINVERSETRANSPOSE

The inverted and transposed product of camera's view matrix and camera's projection matrix.

#define MATRIX_VIEWTRANSPOSE

The transposed view matrix of the camera.

#define MATRIX_VIEWINVRSETRANSPOSE

The inverted and transposed view matrix of the camera.

#define MATRIX_PROJINVERSE

The inverted projection matrix of the camera.

#define MATRIX_PROJTRANSPOSE

The transposed projection matrix of the camera.

#define MATRIX_PROJINVRSETRANSPOSE

The inverted and transposed projection matrix of the camera.

#define MATRIX_WORLDVIEWPROJTRANSPOSE

The transposed product of entity's world matrix, camera's view matrix and camera's projection matrix.

#define MATRIX_WORLDVIEWPROJINVERSE

The inverted product of entity's world matrix, camera's view matrix and camera's projection matrix.

#define MATRIX_WORLDVIEWPROJINVERSETRANSPOSE

The inverted and transposed product of entity's world matrix, camera's view matrix and camera's projection matrix.

#define MATRIX_WORLDVIEWTRANSPOSE

The transposed product of entity's world matrix and camera's view matrix.

#define MATRIX_WORLDVIEWINVERSE

The inverted product of entity's world matrix and camera's view matrix.

#define MATRIX_WORLDVIEWINVERSETRANSPOSE

The inverted and transposed product of entity's world matrix and camera's view matrix.