|
Monad Engine da02fba2
> Undercity Codex_
|
Engine-wide primitive type aliases and GLM math imports. More...
#include <cstddef>#include <cstdint>#include <string>#include <glm/gtc/quaternion.hpp>#include <glm/gtc/type_ptr.hpp>
Include dependency graph for Types.h:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Namespaces | |
| namespace | mnd |
Typedefs | |
| using | mnd::u8 = uint8_t |
| Unsigned 8-bit integer. | |
| using | mnd::u16 = uint16_t |
| Unsigned 16-bit integer. | |
| using | mnd::u32 = uint32_t |
| Unsigned 32-bit integer — also the GL index type. | |
| using | mnd::u64 = uint64_t |
| Unsigned 64-bit integer. | |
| using | mnd::i8 = int8_t |
| Signed 8-bit integer. | |
| using | mnd::i16 = int16_t |
| Signed 16-bit integer. | |
| using | mnd::i32 = int32_t |
| Signed 32-bit integer — used for GL enums and sizes. | |
| using | mnd::i64 = int64_t |
| Signed 64-bit integer. | |
| using | mnd::f32 = float |
| 32-bit IEEE float — the standard GL scalar type. | |
| using | mnd::f64 = double |
| 64-bit double — used for high-precision timing. | |
| using | mnd::usize = size_t |
| Platform-native unsigned size type. | |
| using | mnd::str = std::string |
| Convenience alias for std::string. | |
| using | mnd::vec2 = glm::vec2 |
| 2-component float vector (e.g. UV coordinates, mouse position). | |
| using | mnd::vec3 = glm::vec3 |
| 3-component float vector (e.g. world position, RGB colour, normals). | |
| using | mnd::vec4 = glm::vec4 |
| 4-component float vector (e.g. RGBA colour, homogeneous coords). | |
| using | mnd::ivec2 = glm::ivec2 |
| 2-component signed integer vector. | |
| using | mnd::ivec3 = glm::ivec3 |
| 3-component signed integer vector. | |
| using | mnd::ivec4 = glm::ivec4 |
| 4-component signed integer vector. | |
| using | mnd::uvec2 = glm::uvec2 |
| 2-component unsigned integer vector. | |
| using | mnd::uvec3 = glm::uvec3 |
| 3-component unsigned integer vector. | |
| using | mnd::uvec4 = glm::uvec4 |
| 4-component unsigned integer vector. | |
| using | mnd::mat3 = glm::mat3 |
| 3×3 column-major float matrix (e.g. normal matrix). | |
| using | mnd::mat4 = glm::mat4 |
| 4×4 column-major float matrix (model/view/projection). | |
| using | mnd::quat = glm::quat |
| Unit quaternion for rotation (avoids gimbal lock). | |
Engine-wide primitive type aliases and GLM math imports.
Every engine subsystem uses these aliases instead of raw stdint or GLM types. Keeping all aliases here means a single include gives consistent sizing and naming across the entire codebase (both the Engine library and game code).
Math types (vec3, mat4, quat …) are thin aliases over GLM and can be passed directly to any OpenGL uniform upload helper in ShaderProgram.
Definition in file Types.h.