Go to the source code of this file.
◆ IM3D_ASSERT
◆ im3d_config_h
◆ IM3D_FREE
◆ IM3D_MALLOC
◆ IM3D_MAT3_APP
Value: Mat3(
const Math::mat4& _m) {
float b[16]; _m.
storeu(b);
for(
int j = 0 ; j < 3;++j)
for (
int i = 0; i < 3; ++i) m[i+j*3] = b[i + j*4]; } \
operator Math::mat4()
const {
Math::mat4 ret;
float b[16]; ret.
storeu(b);
int k = 0;
for(
int j = 0 ; j < 3;++j)
for (
int i = 0; i < 3; ++i) b[i+4*j] = m[i+j*3]; ret.
loadu(b);
return ret; }
A 4x4 single point precision float matrix.
Definition mat4.h:47
void loadu(const scalar *ptr)
load content from unaligned memory
Definition mat4.h:213
void storeu(scalar *ptr) const
write content to unaligned memory through the write cache
Definition mat4.h:248
◆ IM3D_MAT4_APP
◆ IM3D_VEC2_APP
Value:
A 2-component float vector class.
Definition vec2.h:21
scalar x
Definition vec2.h:86
scalar y
Definition vec2.h:87
◆ IM3D_VEC3_APP
Value:
Represents a 3D point in space.
Definition point.h:22
float z
Definition point.h:78
float x
Definition point.h:78
float y
Definition point.h:78
A 3D vector.
Definition vec3.h:39
float x
Definition vec3.h:93
float z
Definition vec3.h:93
float y
Definition vec3.h:93
A vector is a 3D direction in space.
Definition vector.h:22
float z
Definition vector.h:85
float x
Definition vector.h:85
float y
Definition vector.h:85
◆ IM3D_VEC4_APP
Value: Vec4(
const Math::point& _v) { x = _v.
x; y = _v.
y; z = _v.
z; w = 1.0f; } \
Vec4(
const Math::vec4& _v) { x = _v.
x; y = _v.
y; z = _v.
z; w = _v.
w; } \
A 4D vector.
Definition vec4.h:24
float y
Definition vec4.h:93
float z
Definition vec4.h:93
float w
Definition vec4.h:93
float x
Definition vec4.h:93
◆ IM3D_VERTEX_ALIGNMENT
#define IM3D_VERTEX_ALIGNMENT 4 |