Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
88 changes: 44 additions & 44 deletions config/RSPE01_01/symbols.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7310,7 +7310,7 @@ AllocHeap__24RPSysEffectMemoryManagerFUl = .text:0x80193100; // type:function si
RoundUp<Ul>__Q34nw4r2ut24@unnamed@SportsPack_pch@FUlUi_Ul = .text:0x80193250; // type:function size:0x18 scope:weak
__ct__Q34nw4r2ef17MemoryManagerBaseFv = .text:0x80193268; // type:function size:0x10 scope:weak
createEffect__14RPSysEffectMgrFPCcUlUl = .text:0x80193278; // type:function size:0x10
draw__14RPSysEffectMgrFRCQ34nw4r2ef8DrawInfoUlUl = .text:0x80193288; // type:function size:0x22C
draw__14RPSysEffectMgrFRCQ34nw4r4math5MTX34UlUl = .text:0x80193288; // type:function size:0x22C
setCaptureEfb__14RPSysEffectMgrFPvRCQ214RPSysEffectMgr10EfbTexData = .text:0x801934B4; // type:function size:0xD0
update__14RPSysEffectMgrFQ214RPSysEffectMgr12ECalcSetting = .text:0x80193584; // type:function size:0x7C
stopAllEffect__14RPSysEffectMgrFv = .text:0x80193600; // type:function size:0x9C
Expand Down Expand Up @@ -7942,7 +7942,7 @@ __ct__20RPGrpModelResManagerFv = .text:0x801AF184; // type:function size:0x10
__dt__20RPGrpModelResManagerFv = .text:0x801AF194; // type:function size:0x40
fn_801AF1D4 = .text:0x801AF1D4; // type:function size:0x4
fn_801AF1D8 = .text:0x801AF1D8; // type:function size:0x230
fn_801AF408 = .text:0x801AF408; // type:function size:0x4
PrepareDrawGX__9RPGrpViewFv = .text:0x801AF408; // type:function size:0x4
fn_801AF40C = .text:0x801AF40C; // type:function size:0x24
AppendDrawObject__13RPGrpRendererFP16IRPGrpDrawObject = .text:0x801AF430; // type:function size:0x24
fn_801AF454 = .text:0x801AF454; // type:function size:0x138
Expand Down Expand Up @@ -7971,50 +7971,50 @@ DrawQuad__11RPGrpScreenCFffff8_GXColor = .text:0x801B0378; // type:function size
BeginDrawQuad__11RPGrpScreenCFv = .text:0x801B03E8; // type:function size:0x1C
Initialize__11RPGrpScreenFPCUsPCUs = .text:0x801B0404; // type:function size:0xC
__sinit_\RPGrpScreen_cpp = .text:0x801B0410; // type:function size:0x5C scope:local
fn_801B046C = .text:0x801B046C; // type:function size:0x734
fn_801B0BA0 = .text:0x801B0BA0; // type:function size:0x150
fn_801B0CF0 = .text:0x801B0CF0; // type:function size:0x184
fn_801B0E74 = .text:0x801B0E74; // type:function size:0x8
fn_801B0E7C = .text:0x801B0E7C; // type:function size:0x60
fn_801B0EDC = .text:0x801B0EDC; // type:function size:0x18
fn_801B0EF4 = .text:0x801B0EF4; // type:function size:0xC4
fn_801B0FB8 = .text:0x801B0FB8; // type:function size:0xC4
fn_801B107C = .text:0x801B107C; // type:function size:0x14C
fn_801B11C8 = .text:0x801B11C8; // type:function size:0x10
fn_801B11D8 = .text:0x801B11D8; // type:function size:0x1BC
fn_801B1394 = .text:0x801B1394; // type:function size:0x40
fn_801B13D4 = .text:0x801B13D4; // type:function size:0x40
fn_801B1414 = .text:0x801B1414; // type:function size:0xC4
fn_801B14D8 = .text:0x801B14D8; // type:function size:0x4
fn_801B14DC = .text:0x801B14DC; // type:function size:0x58
fn_801B1534 = .text:0x801B1534; // type:function size:0x40
fn_801B1574 = .text:0x801B1574; // type:function size:0x40
fn_801B15B4 = .text:0x801B15B4; // type:function size:0x8
fn_801B15BC = .text:0x801B15BC; // type:function size:0x28
fn_801B15E4 = .text:0x801B15E4; // type:function size:0x40
fn_801B1624 = .text:0x801B1624; // type:function size:0x48
fn_801B166C = .text:0x801B166C; // type:function size:0x4
fn_801B1670 = .text:0x801B1670; // type:function size:0x4
fn_801B1674 = .text:0x801B1674; // type:function size:0x44
fn_801B16B8 = .text:0x801B16B8; // type:function size:0x40
fn_801B16F8 = .text:0x801B16F8; // type:function size:0x8
fn_801B1700 = .text:0x801B1700; // type:function size:0x10
fn_801B1710 = .text:0x801B1710; // type:function size:0x30
fn_801B1740 = .text:0x801B1740; // type:function size:0x38
fn_801B1778 = .text:0x801B1778; // type:function size:0xD8
fn_801B1850 = .text:0x801B1850; // type:function size:0x6C
fn_801B18BC = .text:0x801B18BC; // type:function size:0x8
fn_801B18C4 = .text:0x801B18C4; // type:function size:0x4C
fn_801B1910 = .text:0x801B1910; // type:function size:0x40
fn_801B1950 = .text:0x801B1950; // type:function size:0x8
Draw__Q29RPGrpView12ScreenEffectFPC11RPGrpScreen = .text:0x801B046C; // type:function size:0x734
Calc__Q29RPGrpView7ClipperFPC11RPGrpScreen = .text:0x801B0BA0; // type:function size:0x150
Clip__9RPGrpViewCFRCQ34nw4r4math4VEC3f = .text:0x801B0CF0; // type:function size:0x184
GetCamera__9RPGrpViewCFv = .text:0x801B0E74; // type:function size:0x8
GetEnableCamera__9RPGrpViewCFv = .text:0x801B0E7C; // type:function size:0x60
GetEnableScreen__9RPGrpViewCFv = .text:0x801B0EDC; // type:function size:0x18
GetScreenToWorld__9RPGrpViewCFPQ34nw4r4math4VEC3RCQ34nw4r4math4VEC2 = .text:0x801B0EF4; // type:function size:0xC4
GetWorldToScreen__9RPGrpViewCFPQ34nw4r4math4VEC3RCQ34nw4r4math4VEC3 = .text:0x801B0FB8; // type:function size:0xC4
SetProjectionGX__9RPGrpViewCFv = .text:0x801B107C; // type:function size:0x14C
AttachScreen__9RPGrpViewFP11RPGrpScreen = .text:0x801B11C8; // type:function size:0x10
ClearBuffer__9RPGrpViewFv = .text:0x801B11D8; // type:function size:0x1BC
PrepareDraw__9RPGrpViewFv = .text:0x801B1394; // type:function size:0x40
Calc__9RPGrpViewFv = .text:0x801B13D4; // type:function size:0x40
CreateScreenEffect__9RPGrpViewFv = .text:0x801B1414; // type:function size:0xC4
Configure__9RPGrpViewFv = .text:0x801B14D8; // type:function size:0x4
__ct__9RPGrpViewFUc = .text:0x801B14DC; // type:function size:0x58
__dt__Q29RPGrpView12ScreenEffectFv = .text:0x801B1534; // type:function size:0x40
__dt__9RPGrpViewFv = .text:0x801B1574; // type:function size:0x40
AttachCamera__9RPGrpViewFP11RPGrpCamera = .text:0x801B15B4; // type:function size:0x8
__sinit_\RPGrpView_cpp = .text:0x801B15BC; // type:function size:0x28
__dt__Q29RPGrpView7ClipperFv = .text:0x801B15E4; // type:function size:0x40
Draw__17RPGrpViewRender2DFv = .text:0x801B1624; // type:function size:0x48
PrepareDraw__17RPGrpViewRender2DFv = .text:0x801B166C; // type:function size:0x4
Configure__17RPGrpViewRender2DFv = .text:0x801B1670; // type:function size:0x4
__ct__17RPGrpViewRender2DFUc = .text:0x801B1674; // type:function size:0x44
__dt__17RPGrpViewRender2DFv = .text:0x801B16B8; // type:function size:0x40 scope:weak
GetType__17RPGrpViewRender2DCFv = .text:0x801B16F8; // type:function size:0x8 scope:weak
AttachCamera__17RPGrpViewRender3DFP11RPGrpCamera = .text:0x801B1700; // type:function size:0x10
PrepareDrawGX__17RPGrpViewRender3DFv = .text:0x801B1710; // type:function size:0x30
Draw__17RPGrpViewRender3DFv = .text:0x801B1740; // type:function size:0x38
PrepareDraw__17RPGrpViewRender3DFv = .text:0x801B1778; // type:function size:0xD8
Calc__17RPGrpViewRender3DFv = .text:0x801B1850; // type:function size:0x6C
GetCamera__17RPGrpViewRender3DCFv = .text:0x801B18BC; // type:function size:0x8 scope:weak
__ct__17RPGrpViewRender3DFUc = .text:0x801B18C4; // type:function size:0x4C
__dt__17RPGrpViewRender3DFv = .text:0x801B1910; // type:function size:0x40 scope:weak
GetType__17RPGrpViewRender3DCFv = .text:0x801B1950; // type:function size:0x8 scope:weak
fn_801B1958 = .text:0x801B1958; // type:function size:0x98
fn_801B19F0 = .text:0x801B19F0; // type:function size:0x24
fn_801B1A14 = .text:0x801B1A14; // type:function size:0x80
fn_801B1A94 = .text:0x801B1A94; // type:function size:0x18
fn_801B1AAC = .text:0x801B1AAC; // type:function size:0x14
fn_801B1AC0 = .text:0x801B1AC0; // type:function size:0x14
fn_801B1AD4 = .text:0x801B1AD4; // type:function size:0x120
fn_801B1BF4 = .text:0x801B1BF4; // type:function size:0x50
DrawPrepare__15RPGrpModelSceneFPC11RPGrpCameraPC11RPGrpScreen = .text:0x801B1BF4; // type:function size:0x50
fn_801B1C44 = .text:0x801B1C44; // type:function size:0x40
fn_801B1C84 = .text:0x801B1C84; // type:function size:0x100
fn_801B1D84 = .text:0x801B1D84; // type:function size:0x38
Expand Down Expand Up @@ -17240,8 +17240,8 @@ __vt__Q23EGG13ModelSnapshot = .data:0x80397C30; // type:object size:0x20 scope:g
@STRING@getShapeSphere__Q23EGG17ModelBoundingInfoCFv = .data:0x80397C5C; // type:object size:0x17 scope:weak data:string
@11930 = .data:0x80397C78; // type:object size:0x28 scope:local
__vt__Q23EGG14PostEffectBase = .data:0x80397CA0; // type:object size:0x24 scope:global
lbl_80397CC8 = .data:0x80397CC8; // type:object size:0x10 data:string
lbl_80397CD8 = .data:0x80397CD8; // type:object size:0xD data:string
@STRING@SetProjectionType__Q23EGG7FrustumFQ33EGG7Frustum14ProjectionType@0 = .data:0x80397CC8; // type:object size:0x10 data:string
@STRING@SetProjectionType__Q23EGG7FrustumFQ33EGG7Frustum14ProjectionType = .data:0x80397CD8; // type:object size:0xD data:string
lbl_80397CE8 = .data:0x80397CE8; // type:object size:0x28
lbl_80397D10 = .data:0x80397D10; // type:object size:0x28
lbl_80397D38 = .data:0x80397D38; // type:object size:0x28
Expand Down Expand Up @@ -18676,8 +18676,8 @@ lbl_803BA5B0 = .data:0x803BA5B0; // type:object size:0xD data:string
lbl_803BA5C0 = .data:0x803BA5C0; // type:object size:0x2C
lbl_803BA5EC = .data:0x803BA5EC; // type:object size:0xC
lbl_803BA5F8 = .data:0x803BA5F8; // type:object size:0x10
lbl_803BA608 = .data:0x803BA608; // type:object size:0x30
lbl_803BA638 = .data:0x803BA638; // type:object size:0x30
__vt__17RPGrpViewRender2D = .data:0x803BA608; // type:object size:0x2C
__vt__17RPGrpViewRender3D = .data:0x803BA638; // type:object size:0x2C
lbl_803BA668 = .data:0x803BA668; // type:object size:0x10
lbl_803BA678 = .data:0x803BA678; // type:object size:0x20
lbl_803BA698 = .data:0x803BA698; // type:object size:0x28
Expand Down Expand Up @@ -21903,7 +21903,7 @@ spCalcModel__10RPGrpModel = .sbss:0x804BF5E0; // type:object size:0x4 data:4byte
spCalcWorldMtxArray__10RPGrpModel = .sbss:0x804BF5E4; // type:object size:0x4 data:4byte
spCalcViewMtxArray__10RPGrpModel = .sbss:0x804BF5E8; // type:object size:0x4 data:4byte
lbl_804BF5F0 = .sbss:0x804BF5F0; // type:object size:0x8 data:byte
lbl_804BF5F8 = .sbss:0x804BF5F8; // type:object size:0x8 data:4byte
spCurrent__17RPGrpModelManager = .sbss:0x804BF5F8; // type:object size:0x8 data:4byte
spCurrent__20RPGrpModelResManager = .sbss:0x804BF600; // type:object size:0x8 data:4byte
lbl_804BF608 = .sbss:0x804BF608; // type:object size:0x8 data:4byte
spCurrent__13RPGrpRenderer = .sbss:0x804BF610; // type:object size:0x4 data:4byte
Expand Down
4 changes: 2 additions & 2 deletions configure.py
Original file line number Diff line number Diff line change
Expand Up @@ -1262,8 +1262,8 @@ def MatchingFor(*versions):
Object(NonMatching, "Pack/RPGraphics/RPGrpRenderer.cpp"),
Object(Matching, "Pack/RPGraphics/RPGrpScreen.cpp"),
Object(NonMatching, "Pack/RPGraphics/RPGrpView.cpp"),
Object(NonMatching, "Pack/RPGraphics/RPGrpViewRender2D.cpp"),
Object(NonMatching, "Pack/RPGraphics/RPGrpViewRender3D.cpp"),
Object(Matching, "Pack/RPGraphics/RPGrpViewRender2D.cpp"),
Object(Matching, "Pack/RPGraphics/RPGrpViewRender3D.cpp"),
Object(NonMatching, "Pack/RPGraphics/RPGrpModelScene.cpp"),
Object(NonMatching, "Pack/RPGraphics/RPGrpDrawPathLightMap.cpp"),
Object(Matching, "Pack/RPGraphics/RPGrpModelBoundingInfo.cpp"),
Expand Down
3 changes: 3 additions & 0 deletions include/Pack/RPGraphics.h
Original file line number Diff line number Diff line change
Expand Up @@ -27,11 +27,14 @@
#include <Pack/RPGraphics/RPGrpModelRecord.h>
#include <Pack/RPGraphics/RPGrpModelResManager.h>
#include <Pack/RPGraphics/RPGrpModelRfl.h>
#include <Pack/RPGraphics/RPGrpModelScene.h>
#include <Pack/RPGraphics/RPGrpProjectionObject.h>
#include <Pack/RPGraphics/RPGrpRenderer.h>
#include <Pack/RPGraphics/RPGrpScreen.h>
#include <Pack/RPGraphics/RPGrpShadowTexture.h>
#include <Pack/RPGraphics/RPGrpTexture.h>
#include <Pack/RPGraphics/RPGrpView.h>
#include <Pack/RPGraphics/RPGrpViewRender2D.h>
#include <Pack/RPGraphics/RPGrpViewRender3D.h>

#endif
12 changes: 12 additions & 0 deletions include/Pack/RPGraphics/RPGrpModelManager.h
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,16 @@

// Forward declarations
class RPGrpDrawPathManager;
class RPGrpModelScene;

/**
* @brief Model manager
*/
class RPGrpModelManager {
public:
//! Maximum number of model scenes
static const int MAX_SCENE = 8;

public:
/**
* @brief Gets the currently active manager instance
Expand All @@ -22,9 +27,16 @@ class RPGrpModelManager {

RPGrpDrawPathManager* GetDrawPathManager(u8 drawScene) const;

RPGrpModelScene* GetModelScene(int i) {
return mpModelScenes[i];
}

private:
//! Allocator used for model-related allocations
static RPGrpModelManager* spCurrent;

//! Model scenes
RPGrpModelScene* mpModelScenes[MAX_SCENE]; // at 0x4
};

//! @}
Expand Down
32 changes: 32 additions & 0 deletions include/Pack/RPGraphics/RPGrpModelScene.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
#ifndef RP_GRAPHICS_MODEL_SCENE_H
#define RP_GRAPHICS_MODEL_SCENE_H
#include <Pack/types_pack.h>

//! @addtogroup rp_graphics
//! @{

// Forward declarations
class RPGrpCamera;
class RPGrpScreen;

/**
* @brief Model rendering scene
*/
class RPGrpModelScene {
private:
char unk00[0xA4];

public:
virtual ~RPGrpModelScene(); // at 0x8
virtual void CalcView(); // at 0xC
virtual void CalcDrawList(); // at 0x10
virtual void Draw(); // at 0x14
virtual void DrawFinish(); // at 0x18
virtual void PreConditionForRenderingGX() const; // at 0x1C

void DrawPrepare(const RPGrpCamera* pCamera, const RPGrpScreen* pScreen);
};

//! @}

#endif
4 changes: 2 additions & 2 deletions include/Pack/RPGraphics/RPGrpRenderer.h
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ class RPGrpRenderer {
}

RPGrpView* GetView(int idx) const {
return mDrawViews[idx];
return mpDrawViews[idx];
}

/**
Expand Down Expand Up @@ -78,7 +78,7 @@ class RPGrpRenderer {
char unk0[0xC];
IRPGrpDrawObject* mpDrawList; // at 0xC
char unk10[0x14 - 0x10];
RPGrpView* mDrawViews[MAX_VIEW]; // at 0x14
RPGrpView* mpDrawViews[MAX_VIEW]; // at 0x14
};

//! @}
Expand Down
Loading
Loading