mirror of
https://github.com/recp/cglm.git
synced 2025-12-24 20:34:58 +00:00
@@ -47,6 +47,21 @@ typedef union vec2s {
|
||||
float x;
|
||||
float y;
|
||||
};
|
||||
|
||||
struct {
|
||||
float r;
|
||||
float i;
|
||||
};
|
||||
|
||||
struct {
|
||||
float u;
|
||||
float v;
|
||||
};
|
||||
|
||||
struct {
|
||||
float s;
|
||||
float t;
|
||||
};
|
||||
#endif
|
||||
} vec2s;
|
||||
|
||||
@@ -58,9 +73,40 @@ typedef union vec3s {
|
||||
float y;
|
||||
float z;
|
||||
};
|
||||
|
||||
struct {
|
||||
float r;
|
||||
float g;
|
||||
float b;
|
||||
};
|
||||
#endif
|
||||
} vec3s;
|
||||
|
||||
typedef union ivec2s {
|
||||
ivec2 raw;
|
||||
#if CGLM_USE_ANONYMOUS_STRUCT
|
||||
struct {
|
||||
int x;
|
||||
int y;
|
||||
};
|
||||
|
||||
struct {
|
||||
int r;
|
||||
int i;
|
||||
};
|
||||
|
||||
struct {
|
||||
int u;
|
||||
int v;
|
||||
};
|
||||
|
||||
struct {
|
||||
int s;
|
||||
int t;
|
||||
};
|
||||
#endif
|
||||
} ivec2s;
|
||||
|
||||
typedef union ivec3s {
|
||||
ivec3 raw;
|
||||
#if CGLM_USE_ANONYMOUS_STRUCT
|
||||
@@ -69,9 +115,34 @@ typedef union ivec3s {
|
||||
int y;
|
||||
int z;
|
||||
};
|
||||
|
||||
struct {
|
||||
int r;
|
||||
int g;
|
||||
int b;
|
||||
};
|
||||
#endif
|
||||
} ivec3s;
|
||||
|
||||
typedef union ivec4s {
|
||||
ivec4 raw;
|
||||
#if CGLM_USE_ANONYMOUS_STRUCT
|
||||
struct {
|
||||
int x;
|
||||
int y;
|
||||
int z;
|
||||
int w;
|
||||
};
|
||||
|
||||
struct {
|
||||
int r;
|
||||
int g;
|
||||
int b;
|
||||
int a;
|
||||
};
|
||||
#endif
|
||||
} ivec4s;
|
||||
|
||||
typedef union CGLM_ALIGN_IF(16) vec4s {
|
||||
vec4 raw;
|
||||
#if CGLM_USE_ANONYMOUS_STRUCT
|
||||
@@ -81,6 +152,13 @@ typedef union CGLM_ALIGN_IF(16) vec4s {
|
||||
float z;
|
||||
float w;
|
||||
};
|
||||
|
||||
struct {
|
||||
float r;
|
||||
float g;
|
||||
float b;
|
||||
float a;
|
||||
};
|
||||
#endif
|
||||
} vec4s;
|
||||
|
||||
|
||||
@@ -42,9 +42,12 @@
|
||||
#define CGLM_CASTPTR_ASSUME_ALIGNED(expr, type) \
|
||||
((type*)CGLM_ASSUME_ALIGNED((expr), __alignof__(type)))
|
||||
|
||||
typedef int ivec2[2];
|
||||
typedef int ivec3[3];
|
||||
typedef int ivec4[4];
|
||||
|
||||
typedef float vec2[2];
|
||||
typedef float vec3[3];
|
||||
typedef int ivec3[3];
|
||||
typedef CGLM_ALIGN_IF(16) float vec4[4];
|
||||
typedef vec4 versor; /* |x, y, z, w| -> w is the last */
|
||||
typedef vec3 mat3[3];
|
||||
|
||||
Reference in New Issue
Block a user