tp/include/f_op/f_op_view.h

53 lines
1.3 KiB
C++

#ifndef F_F_OP_VIEW_H_
#define F_F_OP_VIEW_H_
#include "SSystem/SComponent/c_xyz.h"
#include "dolphin/mtx/mtx.h"
#include "dolphin/types.h"
#include "f_pc/f_pc_leaf.h"
struct view_process_profile_definition {
/* 0x00 */ leaf_process_profile_definition mBase;
/* 0x24 */ leafdraw_method_class* mSubMtd; // Subclass methods
/* 0x28 */ u8 unk28;
/* 0x29 */ u8 unk29[3]; // pad
/* 0x2C */ u32 unk2C;
/* 0x30 */ u32 unk30;
/* 0x34 */ u32 unk34;
/* 0x38 */ u32 unk38;
};
class lookat_class {
public:
/* 0x00 */ cXyz mEye;
/* 0x0C */ cXyz mCenter;
/* 0x18 */ cXyz mUp;
};
struct view_port_class {
/* 0x00 */ f32 mXOrig;
/* 0x04 */ f32 mYOrig;
/* 0x08 */ f32 mWidth;
/* 0x0C */ f32 mHeight;
/* 0x10 */ f32 mNearZ;
/* 0x14 */ f32 mFarZ;
/* 0x18 */ f32 mScissorXOrig;
/* 0x1C */ f32 mScissorYOrig;
/* 0x20 */ f32 mScissorWidth;
/* 0x24 */ f32 mScissorHeight;
};
struct view_class : public leafdraw_class {
/* 0x0C0 */ leafdraw_method_class* mSubMtd;
/* 0x0C4 */ u8 field_0xc4;
/* 0x0C8 */ f32 mNear;
/* 0x0CC */ f32 mFar;
/* 0x0D0 */ f32 mFovy;
/* 0x0D4 */ f32 mAspect;
/* 0x0D8 */ lookat_class mLookat;
/* 0x0FC */ s16 mBank;
/* 0x100 */ Mtx44 mProjMtx;
/* 0x140 */ Mtx mViewMtx;
};
#endif