2021-04-09 01:22:16 +02:00
|
|
|
#ifndef F_F_OP_VIEW_H_
|
|
|
|
|
#define F_F_OP_VIEW_H_
|
2021-03-28 22:49:05 +02:00
|
|
|
|
2022-04-28 13:58:43 -07:00
|
|
|
#include "SSystem/SComponent/c_xyz.h"
|
2024-01-19 16:22:19 -08:00
|
|
|
#include "dolphin/mtx.h"
|
2021-04-09 01:22:16 +02:00
|
|
|
#include "f_pc/f_pc_leaf.h"
|
2021-03-28 22:49:05 +02:00
|
|
|
|
2022-12-30 16:43:15 -08:00
|
|
|
struct view_process_profile_definition {
|
2024-11-29 08:24:26 -08:00
|
|
|
/* 0x00 */ leaf_process_profile_definition base;
|
2024-03-04 17:33:13 -08:00
|
|
|
/* 0x24 */ leafdraw_method_class* sub_method; // Subclass methods
|
2024-11-29 08:24:26 -08:00
|
|
|
/* 0x28 */ u8 unk_0x28;
|
|
|
|
|
/* 0x2C */ u32 unk_0x2C;
|
|
|
|
|
/* 0x30 */ u32 unk_0x30;
|
|
|
|
|
/* 0x34 */ u32 unk_0x34;
|
|
|
|
|
/* 0x38 */ u32 unk_0x38;
|
2022-12-30 16:43:15 -08:00
|
|
|
};
|
|
|
|
|
|
2022-04-28 13:58:43 -07:00
|
|
|
class lookat_class {
|
2021-04-09 01:22:16 +02:00
|
|
|
public:
|
2024-11-29 08:24:26 -08:00
|
|
|
/* 0x00 */ cXyz eye;
|
|
|
|
|
/* 0x0C */ cXyz center;
|
|
|
|
|
/* 0x18 */ cXyz up;
|
2022-04-28 13:58:43 -07:00
|
|
|
};
|
|
|
|
|
|
2023-03-14 15:27:46 -07:00
|
|
|
struct scissor_class {
|
2024-11-29 08:24:26 -08:00
|
|
|
/* 0x0 */ f32 x_orig;
|
|
|
|
|
/* 0x4 */ f32 y_orig;
|
|
|
|
|
/* 0x8 */ f32 width;
|
|
|
|
|
/* 0xC */ f32 height;
|
2023-03-14 15:27:46 -07:00
|
|
|
};
|
|
|
|
|
|
2022-04-28 13:58:43 -07:00
|
|
|
struct view_port_class {
|
2024-11-29 08:24:26 -08:00
|
|
|
/* 0x00 */ f32 x_orig;
|
|
|
|
|
/* 0x04 */ f32 y_orig;
|
|
|
|
|
/* 0x08 */ f32 width;
|
|
|
|
|
/* 0x0C */ f32 height;
|
|
|
|
|
/* 0x10 */ f32 near_z;
|
|
|
|
|
/* 0x14 */ f32 far_z;
|
|
|
|
|
/* 0x18 */ scissor_class scissor;
|
2022-04-28 13:58:43 -07:00
|
|
|
};
|
|
|
|
|
|
2025-09-25 15:57:15 -04:00
|
|
|
struct view_class {
|
|
|
|
|
/* 0x000 */ leafdraw_class base;
|
2024-03-04 17:33:13 -08:00
|
|
|
/* 0x0C0 */ leafdraw_method_class* sub_method;
|
2022-12-30 17:15:28 -08:00
|
|
|
/* 0x0C4 */ u8 field_0xc4;
|
2024-11-29 08:24:26 -08:00
|
|
|
/* 0x0C8 */ f32 near;
|
|
|
|
|
/* 0x0CC */ f32 far;
|
|
|
|
|
/* 0x0D0 */ f32 fovy;
|
|
|
|
|
/* 0x0D4 */ f32 aspect;
|
|
|
|
|
/* 0x0D8 */ lookat_class lookat;
|
|
|
|
|
/* 0x0FC */ s16 bank;
|
|
|
|
|
/* 0x100 */ Mtx44 projMtx;
|
|
|
|
|
/* 0x140 */ Mtx viewMtx;
|
|
|
|
|
/* 0x170 */ Mtx invViewMtx;
|
|
|
|
|
/* 0x1A0 */ Mtx44 projViewMtx;
|
|
|
|
|
/* 0x1E0 */ Mtx viewMtxNoTrans;
|
2021-04-09 01:22:16 +02:00
|
|
|
};
|
|
|
|
|
|
2024-10-27 00:35:25 -04:00
|
|
|
extern leafdraw_method_class g_fopVw_Method;
|
|
|
|
|
|
|
|
|
|
#endif
|