Use uncached memory for room matrices
This commit is contained in:
parent
161bdd9583
commit
2e3cb7b5f9
|
|
@ -7,6 +7,7 @@
|
|||
#include "types.h"
|
||||
|
||||
struct roommtx *g_RoomMtxes;
|
||||
Mtx *g_RoomMtxMtxes;
|
||||
|
||||
s32 var80082050 = 0;
|
||||
s32 g_NextRoomMtx = 0;
|
||||
|
|
@ -80,7 +81,7 @@ static struct roommtx *roomTouchMtx(s32 roomnum)
|
|||
roommtx->somefloat = var8005ef10[0];
|
||||
|
||||
roomPopulateMtx(&mtx, roomnum);
|
||||
mtx00016054(&mtx, &roommtx->mtx);
|
||||
mtx00016054(&mtx, (void *) &g_RoomMtxMtxes[roommtx->index]);
|
||||
|
||||
return roommtx;
|
||||
}
|
||||
|
|
@ -89,7 +90,7 @@ Gfx *roomApplyMtx(Gfx *gdl, s32 roomnum)
|
|||
{
|
||||
struct roommtx *roommtx = roomTouchMtx(roomnum);
|
||||
|
||||
gSPMatrix(gdl++, &roommtx->mtx, G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
gSPMatrix(gdl++, &g_RoomMtxMtxes[roommtx->index], G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
|
||||
return gdl;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,6 +15,7 @@ void roomsReset(void)
|
|||
var80082050 = PLAYERCOUNT() >= 2 ? 200 : 120;
|
||||
|
||||
g_RoomMtxes = mempAlloc(ALIGN16(var80082050 * sizeof(struct roommtx)), MEMPOOL_STAGE);
|
||||
g_RoomMtxMtxes = UNCACHED(mempAlloc(ALIGN16(var80082050 * sizeof(Mtx)), MEMPOOL_STAGE));
|
||||
g_NextRoomMtx = 0;
|
||||
|
||||
for (i = 0; i < PLAYERCOUNT(); i++) {
|
||||
|
|
|
|||
|
|
@ -283,6 +283,7 @@ extern s32 g_LasersightsActive;
|
|||
extern bool g_StarsActive;
|
||||
extern u8 g_HudmsgsActive;
|
||||
extern struct roommtx *g_RoomMtxes;
|
||||
extern Mtx *g_RoomMtxMtxes;
|
||||
extern s32 g_NextRoomMtx;
|
||||
extern s32 g_BgAlwaysRoom;
|
||||
extern struct stagetableentry *g_CurrentStage;
|
||||
|
|
|
|||
|
|
@ -6366,7 +6366,6 @@ struct xz {
|
|||
};
|
||||
|
||||
struct roommtx {
|
||||
Mtxf mtx;
|
||||
u8 index;
|
||||
s8 playernum;
|
||||
s32 lvframe;
|
||||
|
|
|
|||
Loading…
Reference in New Issue