Files
tp/include/JSystem/J3DGraphBase/J3DShapeMtx.h
T
Pheenoh 85ad8b190d d_a_npc work
daBaseNpc_c::setBckAnm and J3DAnmTransform* daBaseNpc_c

daBaseNpc_c::setBtpAnm

daBaseNpc_c::attnSttsOn

daBaseNpc_c::orderEvent

daBaseNpc_c::setEnvTevColor

daBaseNpc_c::setRoomNo

daBaseNpc_c::checkEndAnm attempt

CheckCreateHeap

daNpcF_addIdx

daNpcF_subIdx

daNpcF_incIdx

daNpcF_decIdx

daNpcF_ActorMngr_c::initialize()

daNpcF_ActorMngr_c::entry

cleanup daNpcF_ActorMngr_c::entry

daNpcF_ActorMngr_c::remove

daNpcF_ActorMngr_c::getActorP

daNpcF_MatAnm_c::calc attempt

daNpcF_SPCurve_c::initialize

minor fixes

daNpcF_Path_c::initialize

daNpcF_Path_c::setPathInfo

daNpcF_Path_c::chkPassed

daNpcF_Path_c::reverse

daNpcF_Path_c::setNextIdx

daNpcF_Path_c::getNextIdx

daNpcF_Path_c::getBeforeIdx

daNpcF_Path_c::getBeforePos

daNpcF_Path_c::getNextPos

daNpcT_MatAnm_c::initialize

daNpcT_MatAnm_c::calc

daNpcT_addIdx

daNpcT_subIdx

daNpcT_decIdx

daNpcT_Path_c::hermite

daNpcT_Path_c::initialize

daNpcT_Path_c::setPathInfo attempt

daNpcT_Path_c::setNextPathInfo

daNpcT_Path_c::reverse

daNpcT_Path_c::setNextIdx

daNpcT_Path_c::getDstPos attempt

daNpcT_DmgStagger_c::setParam

Add FLOAT_LABEL where possible

fopEn_enemy / fix e_wb

move jasper's jsystem work over

d_attention / d_demo / d_lib work

remove asm

clean up dolphin files / work on some rels (#212)

* d_a_alldie / d_a_tboxSw / d_a_tag_gstart / d_a_tag_hstop

* dolphin OS work / cleanup

* dolphin GX work / cleanup

* finish changing dolphin files to C

* more files into C

* match rest of MSL_C math functions

* more dolphin files converted to C

* remove asm

* d_bg_w work

* remove asm

* d_a_alink work / kytag14

initial changes to d_a_e_yc

checkpoint until virtual destructor issue is solved

daNpcF_Lookat_c::adjustMoveDisAngle

daBaseNpc_c::setMtx

daBaseNpc_moveBgActor_c::daBaseNpc_moveBgActor_c()

daNpcT_c::ctrlFaceMotion

daNpcT_c::ctrlMsgAnm attempt

daNpcT_c::initTalk

daNpcF_clearMessageTmpBit

daNpcF_getDistTableIdx

daNpcF_offTmpBit

daNpcF_onTmpBit

daNpcF_chkTmpBit

daNpcF_onEvtBit

daNpcF_chkEvtBit

daNpcF_c::getDistTableIdx

daNpcF_chkPointInArea

daNpcF_chkDoBtnEqSpeak

daNpcF_getPlayerInfoFromPlayerList attempt

daNpcF_pntVsLineSegmentLengthSquare2D

daNpcF_c::chkPointInArea

daNpcF_c::chkPointInArea

daNpcF_c::getAttentionPos

daNpcT_chkTmpBit

daNpcT_offTmpBit

daNpcT_onTmpBit

daNpcT_chkEvtBit

daNpcT_offEvtBit

daNpcT_onEvtBit

daNpcT_chkDoBtnIsSpeak

daNpcT_getDistTableIdx

daBaseNpc_acMngr_c::entry

daNpcF_c::initTalk

undo override
2022-12-20 16:28:41 -07:00

145 lines
4.5 KiB
C++

#ifndef J3DSHAPEMTX_H
#define J3DSHAPEMTX_H
#include "dolphin/mtx/mtxvec.h"
#include "dolphin/types.h"
class J3DTexMtx;
class J3DTexGenBlock;
class J3DDifferedTexMtx {
public:
/* 8031322C */ static void loadExecute(f32 const (*)[4]);
static inline void load(Mtx m) {
if (sTexGenBlock != NULL)
loadExecute(m);
}
static J3DTexGenBlock* sTexGenBlock;
static J3DTexMtx* sTexMtxObj;
};
extern u8 struct_804515B0[4];
class J3DShapeMtx {
public:
J3DShapeMtx(u16 useMtxIndex)
: mUseMtxIndex(useMtxIndex)
{}
/* 803130A8 */ void resetMtxLoadCache();
/* 803130E4 */ void loadMtxIndx_PNGP(int, u16) const;
/* 80313128 */ void loadMtxIndx_PCPU(int, u16) const;
/* 80313188 */ void loadMtxIndx_NCPU(int, u16) const;
/* 803131D4 */ void loadMtxIndx_PNCPU(int, u16) const;
/* 80314798 */ virtual ~J3DShapeMtx();
/* 803147E0 */ virtual u32 getType() const;
/* 80273E08 */ virtual u32 getUseMtxNum() const;
/* 8031459C */ virtual u32 getUseMtxIndex(u16) const;
/* 80313B94 */ virtual void load() const;
/* 80313BF0 */ virtual void calcNBTScale(Vec const&, f32 (*)[3][3], f32 (*)[3][3]);
static u8 sMtxLoadPipeline[48];
static u16 sMtxLoadCache[10 + 2 /* padding */];
static u32 sCurrentPipeline;
// static J3DScaleFlag sCurrentScaleFlag;
static u8* sCurrentScaleFlag;
static u32 sTexMtxLoadType;
static void setCurrentPipeline(u32 pipeline) { sCurrentPipeline = pipeline; }
static void setLODFlag(u8 flag) { struct_804515B0[1] = flag; }
static void resetMtxLoadCache();
private:
/* 0x04 */ u16 mUseMtxIndex;
};
class J3DShapeMtxConcatView : public J3DShapeMtx {
public:
J3DShapeMtxConcatView(u16 useMtxIndex)
: J3DShapeMtx(useMtxIndex)
{}
/* 80314730 */ virtual ~J3DShapeMtxConcatView();
/* 803147E0 */ virtual u32 getType() const;
/* 80313C54 */ virtual void load() const;
/* 80314598 */ virtual void loadNrmMtx(int, u16) const;
/* 80313D28 */ virtual void loadNrmMtx(int, u16, f32 (*)[4]) const;
/* 80313828 */ void loadMtxConcatView_PNGP(int, u16) const;
/* 803138C8 */ void loadMtxConcatView_PCPU(int, u16) const;
/* 8031396C */ void loadMtxConcatView_NCPU(int, u16) const;
/* 80313A14 */ void loadMtxConcatView_PNCPU(int, u16) const;
/* 80313AC8 */ void loadMtxConcatView_PNGP_LOD(int, u16) const;
static u8 sMtxLoadPipeline[48];
static u8 sMtxLoadLODPipeline[48];
static u8 sMtxPtrTbl[8];
};
class J3DShapeMtxYBBoardConcatView : public J3DShapeMtxConcatView {
public:
J3DShapeMtxYBBoardConcatView(u16 useMtxIndex)
: J3DShapeMtxConcatView(useMtxIndex)
{}
/* 80314520 */ virtual ~J3DShapeMtxYBBoardConcatView();
/* 803147E0 */ virtual u32 getType() const;
/* 803143E4 */ virtual void load() const;
};
class J3DShapeMtxBBoardConcatView : public J3DShapeMtxConcatView {
public:
J3DShapeMtxBBoardConcatView(u16 useMtxIndex)
: J3DShapeMtxConcatView(useMtxIndex)
{}
/* 803145A4 */ virtual ~J3DShapeMtxBBoardConcatView();
/* 803147E0 */ virtual u32 getType() const;
/* 803142D4 */ virtual void load() const;
};
class J3DShapeMtxMulti : public J3DShapeMtx {
public:
J3DShapeMtxMulti(u16 useMtxIndex, u16 useMtxNum, u16* useMtxIndexTable)
: J3DShapeMtx(useMtxIndex)
, mUseMtxNum(useMtxNum)
, mUseMtxIndexTable(useMtxIndexTable)
{}
/* 803146B0 */ virtual ~J3DShapeMtxMulti();
/* 803147E0 */ virtual u32 getType() const;
/* 80273E08 */ virtual u32 getUseMtxNum() const;
/* 8031459C */ virtual u32 getUseMtxIndex(u16) const;
/* 80313E4C */ virtual void load() const;
/* 80313EEC */ virtual void calcNBTScale(Vec const&, f32 (*)[3][3], f32 (*)[3][3]);
private:
/* 0x6 */ u16 mUseMtxNum;
/* 0x8 */ u16* mUseMtxIndexTable;
};
class J3DShapeMtxMultiConcatView : public J3DShapeMtxConcatView {
public:
J3DShapeMtxMultiConcatView(u16 useMtxIndex, u16 useMtxNum, u16* useMtxIndexTable)
: J3DShapeMtxConcatView(useMtxIndex)
, mUseMtxNum(useMtxNum)
, mUseMtxIndexTable(useMtxIndexTable)
{}
/* 8031461C */ virtual ~J3DShapeMtxMultiConcatView();
/* 803147E0 */ virtual u32 getType() const;
/* 80273E08 */ virtual u32 getUseMtxNum() const;
/* 8031459C */ virtual u32 getUseMtxIndex(u16) const;
/* 80313FA4 */ virtual void load() const;
/* 803146AC */ virtual void loadNrmMtx(int, u16) const;
/* 8031419C */ virtual void loadNrmMtx(int, u16, f32 (*)[4]) const;
private:
/* 0x6 */ u16 mUseMtxNum;
/* 0x8 */ u16* mUseMtxIndexTable;
};
#endif /* J3DSHAPEMTX_H */