4 #include <glm/gtc/matrix_transform.hpp>
12 using glm::mat4::mat4;
41 static Matrix4 perspective(
float fov,
float aspect,
float near_plane,
float far_plane);
42 static Matrix4 ortho(
float left,
float right,
float bottom,
float top,
float near_plane,
float far_plane);
void invert()
Definition: matrix4.cpp:29
Matrix4()
Definition: matrix4.cpp:10
float determinant() const
Definition: matrix4.cpp:33
Vector3 xform(const Vector3 &v) const
Definition: matrix4.cpp:37
static Matrix4 perspective(float fov, float aspect, float near_plane, float far_plane)
Definition: matrix4.cpp:80
static Matrix4 from_quaternion(const Quaternion &q)
Definition: matrix4.cpp:88
Vector3 xform_normal(const Vector3 &normal) const
Definition: matrix4.cpp:47
Vector3 get_translation() const
Definition: matrix4.cpp:56
static Matrix4 ortho(float left, float right, float bottom, float top, float near_plane, float far_plane)
Definition: matrix4.cpp:84
glm::vec4 & operator[](int index)
Definition: matrix4.cpp:14
static Matrix4 rotate(float angle, const Vector3 &axis)
Definition: matrix4.cpp:68
Quaternion to_quaternion() const
Definition: matrix4.cpp:60
static Matrix4 scale(const Vector3 &scale_vec)
Definition: matrix4.cpp:72
static Matrix4 look_at(const Vector3 &eye, const Vector3 ¢er, const Vector3 &up)
Definition: matrix4.cpp:76
Matrix4 transposed() const
Definition: matrix4.cpp:17
void transpose()
Definition: matrix4.cpp:21
Matrix4 inverse() const
Definition: matrix4.cpp:25
static Matrix4 translate(const Vector3 &translation)
Definition: matrix4.cpp:64
Vector3 xform_inv(const Vector3 &v) const
Definition: matrix4.cpp:42
static const Matrix4 IDENTITY
Definition: matrix4.h:45
Basis get_basis() const
Definition: matrix4.cpp:52
Definition: quaternion.h:11