mirror of
https://github.com/zeldaret/tww.git
synced 2026-09-07 19:10:43 -04:00
J3DModel inlines cleanup, procBottleSwing_init match, etc
This commit is contained in:
@@ -91,6 +91,7 @@ public:
|
||||
virtual ~J3DModel();
|
||||
|
||||
J3DModelData* getModelData() { return mModelData; }
|
||||
void setModelData(J3DModelData* modelData) { mModelData = modelData; }
|
||||
|
||||
void onFlag(u32 flag) { mFlags |= flag; }
|
||||
void offFlag(u32 flag) { mFlags &= ~flag; }
|
||||
@@ -116,7 +117,7 @@ public:
|
||||
u8 getScaleFlag(int idx) const { return mpScaleFlagArr[idx]; }
|
||||
void setScaleFlag(int idx, u8 param_1) { mpScaleFlagArr[idx] = param_1; }
|
||||
u8 getEnvScaleFlag(int idx) const { return mpEvlpScaleFlagArr[idx]; }
|
||||
J3DVertexBuffer* getVertexBuffer() { return (J3DVertexBuffer*)&mVertexBuffer; }
|
||||
J3DVertexBuffer* getVertexBuffer() { return &mVertexBuffer; }
|
||||
void* getCurrentVtxPos() { return mVertexBuffer.getCurrentVtxPos(); }
|
||||
void setCurrentVtxPos(void* v) { mVertexBuffer.setCurrentVtxPos(v); }
|
||||
void* getCurrentVtxNrm() { return mVertexBuffer.getCurrentVtxNrm(); }
|
||||
@@ -129,19 +130,15 @@ public:
|
||||
Mtx& getDrawMtx(int idx) { return getDrawMtxPtr()[idx]; }
|
||||
Mtx33* getNrmMtxPtr() { return mpNrmMtxBuf[1][mCurrentViewNo]; }
|
||||
Mtx33& getNrmMtx(int idx) { return getNrmMtxPtr()[idx]; }
|
||||
void setNrmMtx(int idx, Mtx m) { J3DPSMtx33CopyFrom34(m, getNrmMtxPtr()[idx]); }
|
||||
Mtx33* getBumpMtxPtr(int idx) { return mpBumpMtxArr[1][idx][mCurrentViewNo]; }
|
||||
Vec* getBaseScale() { return &mBaseScale; } // Unused in TWW
|
||||
void setBaseScale(const Vec& scale) { mBaseScale = scale; }
|
||||
void setUserArea(u32 area) { mUserArea = area; }
|
||||
u32 getUserArea() const { return mUserArea; }
|
||||
void setVisibilityManager(J3DVisibilityManager* manager) { mpVisibilityManager = manager; }
|
||||
|
||||
// TODO
|
||||
void setModelData(J3DModelData*) {}
|
||||
void setNrmMtx(int, Mtx) {}
|
||||
|
||||
// Appears in TP debug maps but not TWW debug maps.
|
||||
Vec* getBaseScale() { return &mBaseScale; }
|
||||
|
||||
private:
|
||||
/* 0x000 */ /* vtable */
|
||||
/* 0x004 */ J3DModelData* mModelData;
|
||||
/* 0x008 */ u32 mFlags;
|
||||
|
||||
@@ -93,7 +93,7 @@ public:
|
||||
void normalize(f32*);
|
||||
void normalizeWeight(int, f32*);
|
||||
|
||||
void checkFlag(u32) {}
|
||||
bool checkFlag(u32 i_flag) { return mFlags & i_flag; }
|
||||
|
||||
private:
|
||||
friend class J3DClusterLoader;
|
||||
|
||||
@@ -114,7 +114,7 @@ public:
|
||||
|
||||
virtual bool isSame(J3DMatPacket*) const;
|
||||
virtual int entry(J3DDrawBuffer*);
|
||||
virtual void draw();
|
||||
virtual void draw() {}
|
||||
virtual ~J3DPacket() {}
|
||||
|
||||
public:
|
||||
|
||||
@@ -49,38 +49,34 @@ inline void J3DPSMulMtxVec(register MtxP mtx, register Vec* vec, register Vec* d
|
||||
register f32 fr9;
|
||||
register f32 fr8;
|
||||
register f32 fr6;
|
||||
register f32 fra6;
|
||||
register f32 fr5;
|
||||
register f32 fra5;
|
||||
register f32 fra4;
|
||||
register f32 fr4;
|
||||
register f32 fr3;
|
||||
register f32 fr2;
|
||||
register f32 fra2;
|
||||
register f32 fr01;
|
||||
register f32 fr00;
|
||||
register f32 fr1;
|
||||
register f32 fr0;
|
||||
#ifdef __MWERKS__
|
||||
asm {
|
||||
psq_l fr00, 0(vec), 0, 0
|
||||
psq_l fr0, 0(vec), 0, 0
|
||||
psq_l fr2, 0(mtx), 0, 0
|
||||
psq_l fr01, 8(vec), 1, 0
|
||||
ps_mul fr4, fr2, fr00
|
||||
psq_l fr1, 8(vec), 1, 0
|
||||
ps_mul fr4, fr2, fr0
|
||||
psq_l fr3, 8(mtx), 0, 0
|
||||
ps_madd fr5, fr3, fr01, fr4
|
||||
ps_madd fr5, fr3, fr1, fr4
|
||||
psq_l fr8, 16(mtx), 0, 0
|
||||
ps_sum0 fr6, fr5, fr6, fr5
|
||||
psq_l fr9, 24(mtx), 0, 0
|
||||
ps_mul fr10, fr8, fr00
|
||||
ps_mul fr10, fr8, fr0
|
||||
psq_st fr6, 0(dst), 1, 0
|
||||
ps_madd fr11, fr9, fr01, fr10
|
||||
psq_l fra2, 32(mtx), 0, 0
|
||||
ps_madd fr11, fr9, fr1, fr10
|
||||
psq_l fr2, 32(mtx), 0, 0
|
||||
ps_sum0 fr12, fr11, fr12, fr11
|
||||
psq_l fr3, 40(mtx), 0, 0
|
||||
ps_mul fra4, fra2, fr00
|
||||
ps_mul fr4, fr2, fr0
|
||||
psq_st fr12, 4(dst), 1, 0
|
||||
ps_madd fra5, fr3, fr01, fra4
|
||||
ps_sum0 fra6, fra5, fra6, fra5
|
||||
psq_st fra6, 8(dst), 1, 0
|
||||
ps_madd fr5, fr3, fr1, fr4
|
||||
ps_sum0 fr6, fr5, fr6, fr5
|
||||
psq_st fr6, 8(dst), 1, 0
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user