Files
mk64/include/PR/gu.h
T
coco875 17a6f4bb3d update clang and add action (#664)
* update clang and add action

* try clang on course folder only

* forget two file

* Update course_displaylists.inc.c

* forget few other file

* Update course_vertices.inc.c

* format all code while get it match

* second pass

* format other dir

* disable clang format on bad ido code

* fix some tabulation

* revert format on tool dir

* Update clang-format.yml

* ignore gbi.h

* add some read me instruction

* fix error

* format and fixing error

* Update README.md

---------

Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
2024-08-24 15:27:53 -06:00

32 lines
1.3 KiB
C

#ifndef _ULTRA64_GU_H_
#define _ULTRA64_GU_H_
#include <PR/mbi.h>
#include <PR/ultratypes.h>
#include <common_structs.h>
#define GU_PI 3.1415926
/* Functions */
void guPerspectiveF(float mf[4][4], u16* perspNorm, float fovy, float aspect, float near, float far, float scale);
void guPerspective(Mtx* m, u16* perspNorm, float fovy, float aspect, float near, float far, float scale);
void guFrustum(Mtx* m, float left, float right, float bottom, float top, float near, float far, float scale);
void guOrtho(Mtx* m, float left, float right, float bottom, float top, float near, float far, float scale);
void guTranslate(Mtx* m, float x, float y, float z);
void guRotate(Mtx* m, float a, float x, float y, float z);
void guScale(Mtx* m, float x, float y, float z);
void guMtxF2L(float mf[4][4], Mtx* m);
void guMtxIdent(Mtx* m);
void guMtxIdentF(float mf[4][4]);
void guMtxL2F(float mf[4][4], Mtx* m);
void guNormalize(float*, float*, float*);
void guLookAt(Mtx*, f32, f32, f32, f32, f32, f32, f32, f32, f32);
void guLookAtF(f32[4][4], f32, f32, f32, f32, f32, f32, f32, f32, f32);
/* Used only in Fast3DEX2 */
void guLookAtReflect(Mtx* m, LookAt* l, float xEye, float yEye, float zEye, float xAt, float yAt, float zAt, float xUp,
float yUp, float zUp);
#endif