Implement & link m_view

This commit is contained in:
Cuyler36
2023-06-16 22:02:37 -04:00
parent 0fd8193c15
commit a5ee2e8de7
9 changed files with 468 additions and 19 deletions
+1 -1
View File
@@ -11,7 +11,7 @@ extern "C" {
typedef struct pause_t{
int enabled;
int timer;
}pause_t; // size = 0x8
} pause_t; // size = 0x8
void Pause_ct(pause_t* pause);
+3 -2
View File
@@ -7,6 +7,7 @@
#include "m_view.h"
#include "m_camera2.h"
#include "m_submenu.h"
#include "m_pause.h"
#include "m_play_h.h"
#ifdef __cplusplus
@@ -21,8 +22,8 @@ struct game_play_s {
/* 0x1A68 */ View view;
/* 0x1B88 */ Camera2 camera;
/* 0x1CC0 */ u8 _1CC0[0x1DA0 - 0x1CC0];
/* 0x1DA0 */ int isPause;
/* 0x1DA4 */ u8 _1DA4[0x1DEC - 0x1DA4];
/* 0x1DA0 */ pause_t pause;
/* 0x1DA8 */ u8 _1DA8[0x1DEC - 0x1DA8];
/* 0x1DEC */ Submenu submenu;
/* 0x1FA4 */ u8 _1FA4[0x200C - 0x1FA4];
/* 0x200C */ MtxF matrix;
+10 -1
View File
@@ -11,6 +11,7 @@
extern "C" {
#endif
#define VIEW_UPDATE_NONE 0
#define VIEW_UPDATE_LOOKAT (1 << 0) // 1
#define VIEW_UPDATE_SCISSOR (1 << 1) // 2
#define VIEW_UPDATE_PERSPECTIVE (1 << 2) // 4
@@ -50,7 +51,15 @@ typedef struct view_s {
} View;
extern void initView(View* view, GRAPH* graph);
extern void showView(View* view, int flags);
extern void setLookAtView(View* view, xyz_t* eye, xyz_t* center, xyz_t* up);
extern void setScaleView(View* view, f32 scale);
extern void setPerspectiveView(View* view, f32 fovY, f32 near, f32 far);
extern void setScissorView(View* view, rect* screen);
extern int stretchViewInit(View* view);
extern int showView(View* view, int flags);
extern int showPerspectiveView(View* view);
extern int showOrthoView(View* view);
extern int showView1(View* view, int flag_mask, Gfx** gfx_p);
#ifdef __cplusplus
}
+8
View File
@@ -33,6 +33,14 @@ extern void watch_my_step_ct();
extern void watch_my_step_move(GAME_PLAY* play);
extern void watch_my_step_draw(GAME_PLAY* play);
extern void navigate_camera_ct();
extern void navigate_camera_move(GAME_PLAY* play);
extern void navigate_camera_draw(GAME_PLAY* play);
extern void mWt_mybell_confirmation_ct();
extern void mWt_mybell_confirmation_move(GAME_PLAY* play);
extern void mWt_mybell_confirmation_draw(GAME_PLAY* play);
#ifdef __cplusplus
}
#endif
+2 -2
View File
@@ -25,7 +25,7 @@ extern void Matrix_scale(f32 x, f32 y, f32 z, u8 flag);
extern void Matrix_RotateX(s16 x, int flag);
extern void Matrix_RotateY(s16 x, int flag);
extern void Matrix_RotateZ(s16 x, int flag);
extern void Matrix_RotateXYZ(s16 x, s16 y, s16 z, int flag);
extern void Matrix_rotateXYZ(s16 x, s16 y, s16 z, int flag);
extern void Matrix_softcv3_mult(xyz_t* src, s_xyz* dest);
extern void Matrix_softcv3_load(s_xyz* src, f32 x, f32 y, f32 z);
extern Mtx* _MtxF_to_Mtx(MtxF* src, Mtx* dest);
@@ -36,7 +36,7 @@ extern void Matrix_Position_Zero(xyz_t* screen_pos);
extern void Matrix_Position_VecX(xyz_t* screen_pos, f32 x);
extern void Matrix_Position_VecZ(xyz_t* screen_pos, f32 x);
extern void Matrix_copy_MtxF(MtxF* dest, MtxF* src);
extern void Matrix_MtxToMtxF(Mtx* src, MtxF* dest);
extern void Matrix_MtxtoMtxF(Mtx* src, MtxF* dest);
extern void Matrix_reverse(MtxF* m);
extern void Matrix_to_rotate_new(MtxF* m, s_xyz* vec, int flag);
extern void Matrix_to_rotate2_new(MtxF* m, s_xyz* vec, int flag);