diff options
| author | Jasper St. Pierre <jstpierre@mecheye.net> | 2023-09-21 23:26:10 -0700 |
|---|---|---|
| committer | Jasper St. Pierre <jstpierre@mecheye.net> | 2023-09-21 23:26:10 -0700 |
| commit | b60bf4df329ae35f00bff57ff96e8325f478d7ca (patch) | |
| tree | bfabaf29202423eb865379e2e493869f268051f5 /include | |
| parent | 96c226599c34a83304b2e850d77d979636e582b0 (diff) | |
J3DNode/J3DTransform progress
Diffstat (limited to 'include')
| -rw-r--r-- | include/JSystem/J3DGraphAnimator/J3DNode.h | 17 | ||||
| -rw-r--r-- | include/JSystem/J3DGraphBase/J3DTransform.h | 24 |
2 files changed, 12 insertions, 29 deletions
diff --git a/include/JSystem/J3DGraphAnimator/J3DNode.h b/include/JSystem/J3DGraphAnimator/J3DNode.h index d5eaadc1..342c3d3f 100644 --- a/include/JSystem/J3DGraphAnimator/J3DNode.h +++ b/include/JSystem/J3DGraphAnimator/J3DNode.h @@ -1,6 +1,8 @@ #ifndef J3DNODE_H #define J3DNODE_H +#include "dolphin/mtx/mtx.h" + class J3DNode; typedef int (*J3DNodeCallBack)(J3DNode*, int); @@ -11,7 +13,8 @@ public: virtual void calcIn(); virtual u32 getType(); virtual ~J3DNode(); - + + J3DNode(); void appendChild(J3DNode*); J3DNode* getYounger() { return mYounger; } @@ -20,11 +23,11 @@ public: J3DNodeCallBack getCallBack() { return mCallBack; } J3DNode* getChild() { return mChild; } - /* 0x00 */ void* mCallBackUserData; - /* 0x04 */ J3DNodeCallBack mCallBack; - /* 0x08 */ void* field_0x8; - /* 0x0C */ J3DNode* mChild; - /* 0x10 */ J3DNode* mYounger; -}; // Size: 0x14 + /* 0x04 */ void* mCallBackUserData; + /* 0x08 */ J3DNodeCallBack mCallBack; + /* 0x0C */ void* field_0x8; + /* 0x10 */ J3DNode* mChild; + /* 0x14 */ J3DNode* mYounger; +}; // Size: 0x18 #endif /* J3DNODE_H */ diff --git a/include/JSystem/J3DGraphBase/J3DTransform.h b/include/JSystem/J3DGraphBase/J3DTransform.h index 2cc2cc50..10a7c960 100644 --- a/include/JSystem/J3DGraphBase/J3DTransform.h +++ b/include/JSystem/J3DGraphBase/J3DTransform.h @@ -20,28 +20,8 @@ void J3DGetTranslateRotateMtx(s16, s16, s16, f32, f32, f32, Mtx); void J3DPSCalcInverseTranspose(f32 (*param_0)[4], f32 (*param_1)[3]); void J3DGQRSetup7(u32 param_0, u32 param_1, u32 param_2, u32 param_3); -inline void J3DPSMtx33CopyFrom34(register MtxP src, register Mtx3P dst) { - register f32 x_y1; - register f32 z1; - register f32 x_y2; - register f32 z2; - register f32 x_y3; - register f32 z3; - asm { - psq_l x_y1, 0(src), 0, 0 - lfs z1, 8(src) - psq_l x_y2, 16(src), 0, 0 - lfs z2, 0x18(src) - psq_l x_y3, 32(src), 0, 0 - lfs z3, 0x28(src) - psq_st x_y1, 0(dst), 0, 0 - stfs z1, 8(dst) - psq_st x_y2, 12(dst), 0, 0 - stfs z2, 0x14(dst) - psq_st x_y3, 24(dst), 0, 0 - stfs z3, 0x20(dst) - } -} +void J3DPSMtx33Copy(register Mtx3P src, register Mtx3P dst); +void J3DPSMtx33CopyFrom34(register MtxP src, register Mtx3P dst); // regalloc issues inline void J3DPSMulMtxVec(register MtxP mtx, register Vec* vec, register Vec* dst) { |
