This file contains global type definitions which are used throughout the entire engine and applicatio...
_Bool b8
8-bit boolean type
Definition: defines.h:58
float f32
32-bit floating point number
Definition: defines.h:47
union mat3_u mat3
A 3x3 matrix.
struct extents_2d extents_2d
Represents the extents of a 2d object.
struct vertex_2d vertex_2d
Represents a single vertex in 2D space.
union vec2_u vec2
A 2-element vector.
union vec4_u vec4
A 4-element vector.
union vec3_u vec3
A 3-element vector.
union mat4_u mat4
a 4x4 matrix, typically used to represent object transformations.
struct extents_3d extents_3d
Represents the extents of a 3d object.
struct vertex_3d vertex_3d
Represents a single vertex in 3D space.
struct transform transform
Represents the transform of an object in the world. Transforms can have a parent whose own transform ...
vec4 rect_2d
A 2d rectangle.
Definition: math_types.h:138
struct colour_vertex_3d colour_vertex_3d
Represents a single vertex in 3D space with position and colour data only.
vec4 quat
A quaternion, used to represent rotational orientation.
Definition: math_types.h:135
Represents a single vertex in 3D space with position and colour data only.
Definition: math_types.h:201
vec4 position
The position of the vertex. w is ignored.
Definition: math_types.h:203
vec4 colour
The colour of the vertex.
Definition: math_types.h:205
Represents the extents of a 2d object.
Definition: math_types.h:155
vec2 max
The maximum extents of the object.
Definition: math_types.h:159
vec2 min
The minimum extents of the object.
Definition: math_types.h:157
Represents the extents of a 3d object.
Definition: math_types.h:165
vec3 min
The minimum extents of the object.
Definition: math_types.h:167
vec3 max
The maximum extents of the object.
Definition: math_types.h:169
Definition: math_types.h:244
plane_3d sides[6]
Definition: math_types.h:246
Definition: math_types.h:239
f32 distance
Definition: math_types.h:241
vec3 normal
Definition: math_types.h:240
Represents a single vertex in 2D space.
Definition: math_types.h:191
vec2 position
The position of the vertex.
Definition: math_types.h:193
vec2 texcoord
The texture coordinate of the vertex.
Definition: math_types.h:195
Represents a single vertex in 3D space.
Definition: math_types.h:175
vec3 position
The position of the vertex.
Definition: math_types.h:177
vec3 tangent
The tangent of the vertex.
Definition: math_types.h:185
vec3 normal
The normal of the vertex.
Definition: math_types.h:179
vec2 texcoord
The texture coordinate of the vertex.
Definition: math_types.h:181
vec4 colour
The colour of the vertex.
Definition: math_types.h:183
A 3x3 matrix.
Definition: math_types.h:141
f32 data[12]
The matrix elements.
Definition: math_types.h:143
a 4x4 matrix, typically used to represent object transformations.
Definition: math_types.h:147
f32 data[16]
The matrix elements.
Definition: math_types.h:149
A 2-element vector.
Definition: math_types.h:19
f32 r
The first element.
Definition: math_types.h:27
f32 v
The second element.
Definition: math_types.h:41
f32 s
The first element.
Definition: math_types.h:29
f32 x
The first element.
Definition: math_types.h:25
f32 g
The second element.
Definition: math_types.h:37
f32 t
The second element.
Definition: math_types.h:39
f32 u
The first element.
Definition: math_types.h:31
f32 y
The second element.
Definition: math_types.h:35
f32 elements[2]
An array of x, y.
Definition: math_types.h:21
A 3-element vector.
Definition: math_types.h:49
f32 elements[3]
An array of x, y, z.
Definition: math_types.h:51
f32 r
The first element.
Definition: math_types.h:57
f32 v
The second element.
Definition: math_types.h:71
f32 s
The first element.
Definition: math_types.h:59
f32 b
The third element.
Definition: math_types.h:77
f32 x
The first element.
Definition: math_types.h:55
f32 p
The third element.
Definition: math_types.h:79
f32 g
The second element.
Definition: math_types.h:67
f32 t
The second element.
Definition: math_types.h:69
f32 u
The first element.
Definition: math_types.h:61
f32 z
The third element.
Definition: math_types.h:75
f32 y
The second element.
Definition: math_types.h:65
f32 w
The third element.
Definition: math_types.h:81
A 4-element vector.
Definition: math_types.h:89
f32 q
The fourth element.
Definition: math_types.h:126
f32 elements[4]
An array of x, y, z, w.
Definition: math_types.h:91
f32 height
The fourth element.
Definition: math_types.h:128
f32 r
The first element.
Definition: math_types.h:98
f32 a
The fourth element.
Definition: math_types.h:124
f32 s
The first element.
Definition: math_types.h:100
f32 b
The third element.
Definition: math_types.h:114
f32 x
The first element.
Definition: math_types.h:96
f32 p
The third element.
Definition: math_types.h:116
f32 g
The third element.
Definition: math_types.h:106
f32 t
The third element.
Definition: math_types.h:108
f32 width
The third element.
Definition: math_types.h:118
f32 z
The third element.
Definition: math_types.h:112
f32 y
The second element.
Definition: math_types.h:104
f32 w
The fourth element.
Definition: math_types.h:122