mirror of
https://github.com/zeldaret/af.git
synced 2026-09-27 05:55:46 -04:00
4a8731d40a
* C file * func_80077620_jp, CollisionCheck_dt, CollisionCheck_clear * CollisionCheck_OC * CollisionCheck_Check1ClObjNoOC and CollisionCheck_Check2ClObjNoOC * CollisionCheck_OC_Pipe_Vs_JntSph, CollisionCheck_Status_ct, CollisionCheck_Status_Clear * CollisionCheck_OC_Pipe_Vs_Pipe and CollisionCheck_OCC * CollisionCheck_OC_JntSph_Vs_Pipe * CollisionCheck_OC_JntSph_Vs_JntSph * CollisionCheck_workTrisElemCenter, CollisionCheck_OCC_Tris_Vs_Pipe * CollisionCheck_OCC_Tris_Vs_JntSph * a bunch * ClObjElem_ct, ClObjTrisElemAttr_ct, ClObjTrisElemAttr_set, ClObjTrisElem_set, ClObjTris_ct, ClObjTris_set5_nzm * fix warnings * ClObj_ct, ClObj_dt, ClObj_OCClear, ClObjElem_OCClear, ClObjJntSphElem_OCClear, ClObjJntSph_OCClear, ClObjPipeAttr_dt, ClObjPipe_dt, ClObjPipe_OCClear, ClObjTrisElem_OCClear, ClObjTris_OCClear, CollisionCheck_setOCC, CollisionCheck_Status_set3, CollisionCheck_Uty_ActorWorldPosSetPipeC * ClObjTrisElem_OCCClear, ClObj_OCCClear, ClObjTris_OCCClear, CollisionCheck_Uty_setTrisPos_ad * get_type, CollisionCheck_setOC_HitInfo * ClObjTrisElemAttr_dt, ClObjTrisElem_dt, ClObjTris_dt_nzf * func_80076CC0_jp, func_80076D68_jp, func_80076E2C_jp * match all * naming * cleanup * cleanup * name some members and flags * more naming * and more cleaning up * idk * migrate data * format * premigrate collision data in actors
121 lines
3.3 KiB
C
121 lines
3.3 KiB
C
#ifndef SYS_MATH_3D_H
|
|
#define SYS_MATH_3D_H
|
|
|
|
#include "ultra64.h"
|
|
#include "z64math.h"
|
|
#include "unk.h"
|
|
|
|
typedef struct Sphere {
|
|
/* 0x0 */ Vec3s center;
|
|
/* 0x6 */ s16 radius;
|
|
} Sphere; // size = 0x6
|
|
|
|
typedef struct Triangle {
|
|
/* 0x00 */ Vec3f vertices[3];
|
|
} Triangle; // size = 0x24
|
|
|
|
typedef struct Triangle3 {
|
|
/* 0x00 */ Triangle unk_00;
|
|
/* 0x24 */ Vec3f unk_24;
|
|
/* 0x30 */ f32 unk_30;
|
|
} Triangle3; // size = 0x34
|
|
|
|
typedef struct Pipe {
|
|
/* 0x0 */ s16 radius;
|
|
/* 0x2 */ s16 unk_2;
|
|
/* 0x4 */ s16 yShift;
|
|
/* 0x6 */ Vec3s pos;
|
|
} Pipe; // size = 0xC
|
|
|
|
// void Math3d_normalizeXyz_t();
|
|
// void func_800DA028_jp();
|
|
// void func_800DA148_jp();
|
|
// void Math3D_lineVsPosSuisenCross();
|
|
// void func_800DA4E0_jp();
|
|
// void func_800DA540_jp();
|
|
// void func_800DA720_jp();
|
|
// void Math3DInDivPos1();
|
|
// void Math3DInDivPos2();
|
|
// void M3D_getCos();
|
|
// void M3D_getCos2();
|
|
// void M3D_getRefVec();
|
|
// void func_800DA9E4_jp();
|
|
// void func_800DAA48_jp();
|
|
// void Math3DCheck3PointMinMaxAreaInside3D();
|
|
// void func_800DADAC_jp();
|
|
// void func_800DADC4_jp();
|
|
// void func_800DADE8_jp();
|
|
// void func_800DAE2C_jp();
|
|
// void func_800DAE5C_jp();
|
|
// void func_800DAE88_jp();
|
|
// void func_800DAEB0_jp();
|
|
// void Math3DLength();
|
|
// void func_800DAEF8_jp();
|
|
// void func_800DAF70_jp();
|
|
// void func_800DAFB0_jp();
|
|
// void func_800DAFF0_jp();
|
|
// void Math3DVectorProduct2Vec();
|
|
// void Math3DVectorProductXYZ();
|
|
// void func_800DB10C_jp();
|
|
// void func_800DB1B8_jp();
|
|
// void func_800DB368_jp();
|
|
// void func_800DB4E4_jp();
|
|
// void func_800DBF5C_jp();
|
|
// void func_800DC0C8_jp();
|
|
void Math3DPlane(Vec3f* arg0, Vec3f* arg1, Vec3f* arg2, f32* arg3, f32* arg4, f32* arg5, f32* arg6);
|
|
// void func_800DC268_jp();
|
|
// void func_800DC2A8_jp();
|
|
// void Math3DLengthPlaneAndPos();
|
|
// void func_800DC31C_jp();
|
|
// void func_800DC3A0_jp();
|
|
// void func_800DC6BC_jp();
|
|
// void func_800DC704_jp();
|
|
// void func_800DC754_jp();
|
|
// void func_800DC804_jp();
|
|
// void func_800DC8B0_jp();
|
|
// void func_800DC92C_jp();
|
|
// void func_800DCAA0_jp();
|
|
// void func_800DCB14_jp();
|
|
// void func_800DCE30_jp();
|
|
// void func_800DCE78_jp();
|
|
// void func_800DCF2C_jp();
|
|
// void func_800DCFA8_jp();
|
|
// void func_800DD130_jp();
|
|
// void func_800DD1A4_jp();
|
|
// void func_800DD4EC_jp();
|
|
// void func_800DD534_jp();
|
|
// void func_800DD5E8_jp();
|
|
// void func_800DD664_jp();
|
|
// void func_800DD7F0_jp();
|
|
// void func_800DD864_jp();
|
|
// void func_800DD940_jp();
|
|
// void func_800DDA48_jp();
|
|
// void func_800DDBAC_jp();
|
|
// void func_800DDC5C_jp();
|
|
// void func_800DDCAC_jp();
|
|
// void Math3D_sphereCrossLineSegment();
|
|
// void Math3D_sphereCrossTriangleCalc_cp();
|
|
s32 Math3D_sphereCrossTriangle3_cp(Sphere* sphere, Triangle3* triangle3, Vec3f* arg2);
|
|
// void func_800DE55C_jp();
|
|
// void func_800DE618_jp();
|
|
s32 Math3D_pipeCrossTriangle_cp(Pipe* pipe, Triangle* arg1, Vec3f* arg2);
|
|
// void func_800DF46C_jp();
|
|
// void func_800DF48C_jp();
|
|
s32 Math3D_sphereCrossSphere_cl(Sphere* sphere1, Sphere* sphere2, f32* arg2);
|
|
// void func_800DF4CC_jp();
|
|
s32 Math3D_sphereVsPipe_cl(Sphere* sphere, Pipe* pipe, f32* arg2);
|
|
// void func_800DF5C4_jp();
|
|
s32 Math3D_pipeVsPipe_cl(Pipe* pipe1, Pipe* pipe2, f32* arg2);
|
|
// void Math3D_pipeVsPipe_cl_cc();
|
|
// void func_800DF924_jp();
|
|
// void func_800DFCA4_jp();
|
|
// void func_800DFD10_jp();
|
|
// void func_800DFD7C_jp();
|
|
// void sMath_RotateY();
|
|
// void sMath_RotateX();
|
|
// void sMath_RotateZ();
|
|
|
|
extern Vec3f ZeroVec;
|
|
|
|
#endif
|