#pragma once #include "gte_types.hpp" namespace JabyEngine { namespace GTE { /* RotTrans Jaby: Can we use gte_stsv instead of gte_stlvnl for writing to a SVECTOR? Do we have to use gte_stflg?? Look at: RotTransSV??? Perform coordinate transformation using a rotation matrix input: Input vector output: Output vector flag: flag output */ void rot_trans(const SVECTOR& input, VECTOR& output, int32_t& flag); /* SetRotMatrix Sets a 3x3 matrix m as a constant rotation matrix. matrix: The rotation matrix to set */ void set_rot_matrix(const MATRIX& matrix); /* SetTransMatrix Sets a constant parallel transfer vector specified by m */ void set_trans_matrix(const MATRIX& matrix); /* MulMatrix0 m0: first input m1: second input result: result of multiplication returns: result Multiplies two matrices m0 and m1. The function destroys the constant rotation matrix */ MATRIX& mult_matrix(const MATRIX& m0, const MATRIX& m1, MATRIX& result); /* SetGeomOffset(ofx,ofy) Load GTE-offset. */ void set_geom_offset(int32_t off_x, int32_t off_y); /* SetGeomScreen(h) Load distance from viewpoint to screen. */ void set_geom_screen(int32_t h); } }