Why use it
It provides direct, allocation-conscious access to the soft math module. No exception-based error path is implied by the signature.
PSYQO SDK
Function · 2 overloads
Performs `matrix vec mul3` as part of the soft math module.
static inline void matrixVecMul3(const Matrix33 *m, const Vec3 *v, Vec3 *out)Performs `matrix vec mul3` as part of the soft math module.
| Parameter | Type | Meaning |
|---|---|---|
m | const Matrix33 * | Value supplied for m. Keep referenced or pointed-to data valid for the complete call. |
v | const Vec3 * | Value supplied for v. Keep referenced or pointed-to data valid for the complete call. |
out | Vec3 * | Value supplied for out. Keep referenced or pointed-to data valid for the complete call. |
Returns: Nothing (void).
#include "psyqo/soft-math.hh"
// Assume these named values have been initialized with valid data:
// const Matrix33 * m
// const Vec3 * v
// Vec3 * out
psyqo::SoftMath::matrixVecMul3(m, v, out);It provides direct, allocation-conscious access to the soft math module. No exception-based error path is implied by the signature.
Pointer/reference arguments are borrowed unless the source contract says otherwise; keep them valid for the complete operation and never assume null is accepted.
Declared in https://github.com/pcsx-redux/nugget/blob/6186b131aacc5853a9161fb076ed34ffe504552d/psyqo/soft-math.hh:109
void matrixVecMul3(const Matrix33 &m, const Vec3 &v, Vec3 *out)Multiply a 3x3 matrix by a 3D vector.
| Parameter | Type | Meaning |
|---|---|---|
m | const Matrix33 & | The matrix. |
v | const Vec3 & | The vector. |
out | Vec3 * | The vector to store the result in. May be the same as v. |
Returns: Nothing (void).
#include "psyqo/soft-math.hh"
// Assume these named values have been initialized with valid data:
// const Matrix33 & m
// const Vec3 & v
// Vec3 * out
psyqo::SoftMath::matrixVecMul3(m, v, out);It provides direct, allocation-conscious access to the soft math module. No exception-based error path is implied by the signature.
Pointer/reference arguments are borrowed unless the source contract says otherwise; keep them valid for the complete operation and never assume null is accepted.
Declared in https://github.com/pcsx-redux/nugget/blob/6186b131aacc5853a9161fb076ed34ffe504552d/psyqo/soft-math.hh:108
adler32Computes the adler32 checksum of a buffer.Functionadler32_bytesComputes the adler32 checksum of a buffer, only reading bytes.Functionadler32_wordsComputes the adler32 checksum of a buffer, optimized for words.Functionavsz3AVSZ3 - Average of three Z values (for Triangles) zsf3 * (sz0 + sz1 + sz2) -> otz 5 cyclesFunctionavsz4AVSZ4 - Average of four Z values (for Quads) zsf4 * (sz0 + sz1 + sz2 + sz4) -> otz 6 cyclesFunctionbtoiPerforms `btoi` as part of the msf module.FunctionclearClear a GTE register.Function templatecubicCubic Bezier curve helper function.FunctiondDivPerforms `d div` as part of the fixed point module.FunctioniDivPerforms `i div` as part of the fixed point module.Functionoperator""_fpUser-defined literal for constructing a 20.12 fixed point number.FunctionprintIntPerforms `print int` as part of the fixed point module.Function