19 lines
825 B
C++
Executable file
19 lines
825 B
C++
Executable file
#pragma once
|
|
|
|
#include "matrix.hpp"
|
|
#include "vector.hpp"
|
|
#include "quaternion.hpp"
|
|
|
|
namespace transform {
|
|
Matrix4x4 perspective(const float field_of_view, const float aspect, const float z_near, const float z_far);
|
|
Matrix4x4 infinite_perspective(const float field_of_view, const float aspect, const float z_near);
|
|
|
|
Matrix4x4 orthographic(float left, float right, float bottom, float top, float zNear, float zFar);
|
|
|
|
Matrix4x4 look_at(const Vector3 eye, const Vector3 center, const Vector3 up);
|
|
Quaternion quat_look_at(const Vector3 eye, const Vector3 center, const Vector3 up);
|
|
|
|
Matrix4x4 translate(const Matrix4x4 matrix, const Vector3 translation);
|
|
Matrix4x4 rotate(const Matrix4x4 matrix, const float angle, const Vector3 axis);
|
|
Matrix4x4 scale(const Matrix4x4 matrix, const Vector3 scale);
|
|
}
|