Fireworks Engine  v2.0
Lightweight Sandbox Game Engine using OpenGL for additional Customisation and Quick Prototyping
fireworks::maths::mat4 Struct Reference

#include <mat4.h>

Collaboration diagram for fireworks::maths::mat4:

Public Member Functions

DEPRECATED mat4 ()
 
DEPRECATED mat4 (float diagonal)
 
DEPRECATED mat4multiply (const mat4 &other)
 
DEPRECATED mat4operator*= (const mat4 &other)
 
DEPRECATED vec3 multiply (const vec3 &other) const
 
DEPRECATED vec4 multiply (const vec4 &other) const
 
DEPRECATED mat4invert ()
 

Static Public Member Functions

static DEPRECATED mat4 identity ()
 
static DEPRECATED mat4 orthographic (float left, float right, float bottom, float top, float near, float far)
 
static DEPRECATED mat4 perspective (float fov, float aspectRatio, float near, float far)
 
static DEPRECATED mat4 translation (const vec3 &translation)
 
static DEPRECATED mat4 rotation (float angle, const vec3 &axis)
 
static DEPRECATED mat4 scale (const vec3 &scale)
 
static DEPRECATED mat4 lookAt (const vec3 &eye, const vec3 &target, const vec3 &worldUp=vec3(0, 1, 0))
 

Public Attributes

union {
   float   elements [4 *4]
 
   vec4   columns [4]
 
}; 
 

Friends

DEPRECATED friend mat4 operator* (mat4 left, const mat4 &right)
 
DEPRECATED friend vec3 operator* (const mat4 &left, const vec3 &right)
 
DEPRECATED friend vec4 operator* (const mat4 &left, const vec4 &right)
 
DEPRECATED friend std::ostream & operator<< (std::ostream &stream, const mat4 &matrix)
 

Constructor & Destructor Documentation

◆ mat4() [1/2]

fireworks::maths::mat4::mat4 ( )

◆ mat4() [2/2]

fireworks::maths::mat4::mat4 ( float  diagonal)

Member Function Documentation

◆ identity()

mat4 fireworks::maths::mat4::identity ( )
static

◆ invert()

mat4 & fireworks::maths::mat4::invert ( )

◆ lookAt()

mat4 fireworks::maths::mat4::lookAt ( const vec3 eye,
const vec3 target,
const vec3 worldUp = vec3(0, 1, 0) 
)
static

◆ multiply() [1/3]

mat4 & fireworks::maths::mat4::multiply ( const mat4 other)

◆ multiply() [2/3]

vec3 fireworks::maths::mat4::multiply ( const vec3 other) const

◆ multiply() [3/3]

vec4 fireworks::maths::mat4::multiply ( const vec4 other) const

◆ operator*=()

mat4 & fireworks::maths::mat4::operator*= ( const mat4 other)

◆ orthographic()

mat4 fireworks::maths::mat4::orthographic ( float  left,
float  right,
float  bottom,
float  top,
float  near,
float  far 
)
static

◆ perspective()

mat4 fireworks::maths::mat4::perspective ( float  fov,
float  aspectRatio,
float  near,
float  far 
)
static

◆ rotation()

mat4 fireworks::maths::mat4::rotation ( float  angle,
const vec3 axis 
)
static

◆ scale()

mat4 fireworks::maths::mat4::scale ( const vec3 scale)
static

◆ translation()

mat4 fireworks::maths::mat4::translation ( const vec3 translation)
static

Friends And Related Function Documentation

◆ operator* [1/3]

DEPRECATED friend mat4 operator* ( mat4  left,
const mat4 right 
)
friend

◆ operator* [2/3]

DEPRECATED friend vec3 operator* ( const mat4 left,
const vec3 right 
)
friend

◆ operator* [3/3]

DEPRECATED friend vec4 operator* ( const mat4 left,
const vec4 right 
)
friend

◆ operator<<

DEPRECATED friend std::ostream& operator<< ( std::ostream &  stream,
const mat4 matrix 
)
friend

Member Data Documentation

◆ @1

union { ... }

◆ columns

vec4 fireworks::maths::mat4::columns[4]

◆ elements

float fireworks::maths::mat4::elements[4 *4]

The documentation for this struct was generated from the following files: