Foundation
Loading...
Searching...
No Matches
Source
Math
Math.hpp
Go to the documentation of this file.
1
#pragma once
2
#define GLM_FORCE_DEPTH_ZERO_TO_ONE
3
#define GLM_FORCE_RADIANS
4
#define GLM_FORCE_SWIZZLE
5
#define GLM_ENABLE_EXPERIMENTAL
6
#include <glm/glm.hpp>
7
#include <glm/gtx/transform.hpp>
8
#include <glm/gtc/matrix_transform.hpp>
9
#include <glm/ext/quaternion_float.hpp>
10
#include <glm/ext/quaternion_transform.hpp>
11
#include <glm/gtc/quaternion.hpp>
12
#include <glm/vec2.hpp>
13
#include <glm/vec3.hpp>
14
#include <glm/vec4.hpp>
15
#include <glm/mat2x2.hpp>
16
#include <glm/mat3x3.hpp>
17
#include <glm/mat4x4.hpp>
21
namespace
Foundation::Math
{
22
using namespace
glm;
23
using
float4
= vec4;
24
using
float3
= vec3;
25
using
float2
= vec2;
26
using
float4x4
= mat4;
27
// No Surprises.
28
// Shaders are compiled with -fvk-use-scalar-layout
29
// so interexchange should always be dense
30
static_assert
(
sizeof
(
float4
) == 4 *
sizeof
(
float
));
31
static_assert
(
sizeof
(
float3
) == 3 *
sizeof
(
float
));
32
static_assert
(
sizeof
(
float2
) == 2 *
sizeof
(
float
));
33
static_assert
(
sizeof
(
float4x4
) == 16 *
sizeof
(
float
));
34
}
35
#include "
Quantization.hpp
"
36
#include "
Unorm.hpp
"
Quantization.hpp
Unorm.hpp
Foundation::Math
Mathematical utilities and types.
Definition
Math.hpp:21
Foundation::Math::float2
vec2 float2
Definition
Math.hpp:25
Foundation::Math::float3
vec3 float3
Definition
Math.hpp:24
Foundation::Math::float4
vec4 float4
Definition
Math.hpp:23
Foundation::Math::float4x4
mat4 float4x4
Definition
Math.hpp:26
Generated by
1.9.8