Files
dusklight/include/dolphin/mtx/quat.h
T
TakaRikka 89ed2b8a26 k_wmark / k_wpillar OK, fop actor enums / debug building (#1946)
* d_k_wmark / d_k_wpillar OK

* make debug buildable / add assert functionality

* add more fop actor enums

* remove asm
2023-09-28 12:01:42 -07:00

33 lines
681 B
C

#ifndef QUAT_H
#define QUAT_H
#include "dolphin/mtx/vec.h"
#ifdef __cplusplus
extern "C" {
#endif
typedef struct Quaternion {
f32 x, y, z, w;
} Quaternion;
void PSQUATMultiply(const Quaternion* a, const Quaternion* b, Quaternion* ab);
void C_QUATRotAxisRad(Quaternion* q, const Vec* axis, f32 rad);
void C_QUATSlerp(const Quaternion* p, const Quaternion* q, Quaternion* r, f32 t);
/* When compiling in debug mode, use C implementations */
#ifdef DEBUG
// TODO: Add debug rom C implementations
/* #define QUATMultiply C_QUATMultiply */
#define QUATMultiply PSQUATMultiply
#else
#define QUATMultiply PSQUATMultiply
#endif
#ifdef __cplusplus
};
#endif
#endif /* QUAT_H */