summaryrefslogtreecommitdiff
path: root/include/JSystem/J3DGraphAnimator
diff options
context:
space:
mode:
authorTakaRikka <takarikka@outlook.com>2022-05-28 03:49:55 -0700
committerTakaRikka <takarikka@outlook.com>2022-05-28 03:49:55 -0700
commit36e62e0b80225b6ef6cbe6a7322397899d3a0ffd (patch)
tree78f9950298acfc601001a0da4ab9d46cd04d6de2 /include/JSystem/J3DGraphAnimator
parent9bcbccbeb5966896e10b9f29cc4c69bc49abe20d (diff)
npcT / JUTGamePad work
Diffstat (limited to 'include/JSystem/J3DGraphAnimator')
-rw-r--r--include/JSystem/J3DGraphAnimator/J3DJoint.h13
-rw-r--r--include/JSystem/J3DGraphAnimator/J3DMaterialAttach.h8
-rw-r--r--include/JSystem/J3DGraphAnimator/J3DModel.h1
-rw-r--r--include/JSystem/J3DGraphAnimator/J3DModelData.h4
4 files changed, 19 insertions, 7 deletions
diff --git a/include/JSystem/J3DGraphAnimator/J3DJoint.h b/include/JSystem/J3DGraphAnimator/J3DJoint.h
index 28cc3b92f0..b0f77631dd 100644
--- a/include/JSystem/J3DGraphAnimator/J3DJoint.h
+++ b/include/JSystem/J3DGraphAnimator/J3DJoint.h
@@ -19,7 +19,7 @@ public:
/* 80014E94 */ virtual bool getAnmTransform(u8);
/* 80014EA4 */ virtual void setWeight(u8, f32);
/* 80014EA8 */ virtual void getWeight(u8) const;
- virtual void init(Vec const&, Mtx*) = 0;
+ virtual void init(Vec const& param_0, Mtx*) = 0;
virtual void calc() = 0;
static J3DMtxBuffer* getMtxBuffer() { return mMtxBuffer; }
@@ -34,8 +34,14 @@ public:
/* 8000FA8C */ virtual ~J3DMtxCalcNoAnmBase();
};
-template <typename A, typename B>
-class J3DMtxCalcNoAnm : public J3DMtxCalcNoAnmBase, public A, public B {};
+template <class A, class B>
+class J3DMtxCalcNoAnm : public J3DMtxCalcNoAnmBase, public A, public B {
+public:
+ J3DMtxCalcNoAnm() {}
+ virtual ~J3DMtxCalcNoAnm() {}
+ virtual void init(Vec const& param_0, f32 const (&param_1)[3][4]);
+ virtual void calc();
+};
class J3DJoint;
typedef int (*J3DJointCallBack)(J3DJoint*, int);
@@ -53,6 +59,7 @@ public:
J3DJoint* getYounger() { return mYounger; }
void setYounger(J3DJoint* pYounger) { mYounger = pYounger; }
void setCurrentMtxCalc(J3DMtxCalc* pMtxCalc) { mCurrentMtxCalc = pMtxCalc; }
+ J3DTransformInfo& getTransformInfo() { return mTransformInfo; }
static J3DMtxCalc* mCurrentMtxCalc;
diff --git a/include/JSystem/J3DGraphAnimator/J3DMaterialAttach.h b/include/JSystem/J3DGraphAnimator/J3DMaterialAttach.h
index 5802a1040b..d635b91979 100644
--- a/include/JSystem/J3DGraphAnimator/J3DMaterialAttach.h
+++ b/include/JSystem/J3DGraphAnimator/J3DMaterialAttach.h
@@ -15,10 +15,10 @@ class J3DMaterialTable {
public:
/* 8032F5A8 */ void clear();
/* 8032F5D0 */ J3DMaterialTable();
- /* 8032F64C */ bool removeMatColorAnimator(J3DAnmColor*);
- /* 8032F6F8 */ void removeTexNoAnimator(J3DAnmTexPattern*);
- /* 8032F7B4 */ void removeTexMtxAnimator(J3DAnmTextureSRTKey*);
- /* 8032F880 */ void removeTevRegAnimator(J3DAnmTevRegKey*);
+ /* 8032F64C */ int removeMatColorAnimator(J3DAnmColor*);
+ /* 8032F6F8 */ int removeTexNoAnimator(J3DAnmTexPattern*);
+ /* 8032F7B4 */ int removeTexMtxAnimator(J3DAnmTextureSRTKey*);
+ /* 8032F880 */ int removeTevRegAnimator(J3DAnmTevRegKey*);
/* 8032F9C0 */ void createTexMtxForAnimator(J3DAnmTextureSRTKey*);
/* 8032FAF4 */ void entryMatColorAnimator(J3DAnmColor*);
/* 8032FBC8 */ void entryTexNoAnimator(J3DAnmTexPattern*);
diff --git a/include/JSystem/J3DGraphAnimator/J3DModel.h b/include/JSystem/J3DGraphAnimator/J3DModel.h
index 26c7ec72a2..fbd0a35597 100644
--- a/include/JSystem/J3DGraphAnimator/J3DModel.h
+++ b/include/JSystem/J3DGraphAnimator/J3DModel.h
@@ -68,6 +68,7 @@ public:
Mtx33* getBumpMtxPtr(int idx) const { return mMtxBuffer->getBumpMtxPtr(idx); }
Mtx33* getNrmMtxPtr() const { return mMtxBuffer->getNrmMtxPtr(); }
void setBaseScale(const Vec& scale) { mBaseScale = scale; }
+ void setUserArea(u32 area) { mUserArea = area; }
// is there a better way to handle inlines with same name as non-inlines?
MtxP i_getAnmMtx(int p1) { return mMtxBuffer->getAnmMtx(p1); }
diff --git a/include/JSystem/J3DGraphAnimator/J3DModelData.h b/include/JSystem/J3DGraphAnimator/J3DModelData.h
index 56b896c926..1bca78e0bf 100644
--- a/include/JSystem/J3DGraphAnimator/J3DModelData.h
+++ b/include/JSystem/J3DGraphAnimator/J3DModelData.h
@@ -43,6 +43,10 @@ public:
bool checkFlag(u32 flag) const { return !!(mFlags & flag); }
bool checkBumpFlag() const { return mbHasBumpArray; }
bool checkBBoardFlag() const { return mbHasBillboard == 1; }
+ int removeTexNoAnimator(J3DAnmTexPattern* anm) { return mMaterialTable.removeTexNoAnimator(anm); }
+ int removeTexMtxAnimator(J3DAnmTextureSRTKey* anm) { return mMaterialTable.removeTexMtxAnimator(anm); }
+ int removeTevRegAnimator(J3DAnmTevRegKey* anm) { return mMaterialTable.removeTevRegAnimator(anm); }
+ int removeMatColorAnimator(J3DAnmColor* anm) { return mMaterialTable.removeMatColorAnimator(anm); }
private:
/* 0x04 */ void* mpRawData;