mirror of
https://github.com/zeldaret/tww.git
synced 2026-08-21 14:07:29 -04:00
J3DMaterialAnm match
This commit is contained in:
+2
-2
@@ -874,8 +874,8 @@ config.libs = [
|
||||
Object(Matching, "JSystem/J3DGraphAnimator/J3DModelData.cpp"),
|
||||
Object(NonMatching, "JSystem/J3DGraphAnimator/J3DModel.cpp"),
|
||||
Object(NonMatching, "JSystem/J3DGraphAnimator/J3DAnimation.cpp"),
|
||||
Object(NonMatching, "JSystem/J3DGraphAnimator/J3DMaterialAnm.cpp"),
|
||||
Object(Matching, "JSystem/J3DGraphAnimator/J3DVisibility.cpp"),
|
||||
Object(Matching, "JSystem/J3DGraphAnimator/J3DMaterialAnm.cpp"),
|
||||
Object(Matching, "JSystem/J3DGraphAnimator/J3DVisibility.cpp"),
|
||||
Object(NonMatching, "JSystem/J3DGraphAnimator/J3DCluster.cpp"),
|
||||
Object(NonMatching, "JSystem/J3DGraphAnimator/J3DJoint.cpp"),
|
||||
Object(Matching, "JSystem/J3DGraphAnimator/J3DNode.cpp"),
|
||||
|
||||
@@ -488,7 +488,6 @@ public:
|
||||
void searchUpdateMaterialID(J3DModelData*);
|
||||
|
||||
virtual ~J3DAnmColor();
|
||||
virtual s32 getKind() const;
|
||||
virtual void getColor(u16, GXColor*) const;
|
||||
|
||||
u16 getUpdateMaterialNum() const { return mUpdateMaterialNum; }
|
||||
@@ -544,7 +543,7 @@ public:
|
||||
|
||||
virtual ~J3DAnmVtxColor();
|
||||
virtual s32 getKind() const;
|
||||
virtual void getColor(u8, u16, GXColor*) const;
|
||||
virtual void getColor(u8, u16, GXColor*) const {}
|
||||
|
||||
private:
|
||||
/* 0x0C */ s16 mAnmTableNum[2];
|
||||
@@ -576,9 +575,9 @@ private:
|
||||
|
||||
class J3DAnmCluster : public J3DAnmBase {
|
||||
public:
|
||||
virtual ~J3DAnmCluster();
|
||||
virtual ~J3DAnmCluster() {}
|
||||
virtual s32 getKind() const;
|
||||
virtual f32 getWeight(u16) const;
|
||||
virtual f32 getWeight(u16) const { return 1.0f; }
|
||||
|
||||
private:
|
||||
/* 0x0C */ f32* field_0xc;
|
||||
@@ -586,7 +585,7 @@ private:
|
||||
|
||||
class J3DAnmClusterFull : public J3DAnmCluster {
|
||||
public:
|
||||
virtual ~J3DAnmClusterFull();
|
||||
virtual ~J3DAnmClusterFull() {}
|
||||
virtual s32 getKind() const;
|
||||
virtual f32 getWeight(u16) const;
|
||||
|
||||
@@ -596,7 +595,7 @@ private:
|
||||
|
||||
class J3DAnmClusterKey : public J3DAnmCluster {
|
||||
public:
|
||||
virtual ~J3DAnmClusterKey();
|
||||
virtual ~J3DAnmClusterKey() {}
|
||||
virtual s32 getKind() const;
|
||||
virtual f32 getWeight(u16) const;
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@ public:
|
||||
void setAnmFlag(bool flag) { mAnmFlag = flag; }
|
||||
bool getAnmFlag() const { return mAnmFlag; }
|
||||
void setAnmColor(J3DAnmColor* anmColor) { mAnmColor = anmColor; }
|
||||
void calc(GXColor* pColor) const { mAnmColor->getColor(mAnmIndex, pColor); }
|
||||
void calc(GXColor* pColor) const;
|
||||
|
||||
private:
|
||||
/* 0x0 */ u16 mAnmIndex;
|
||||
@@ -43,7 +43,7 @@ public:
|
||||
mAnmTexPattern = NULL;
|
||||
mAnmIndex = 0;
|
||||
};
|
||||
virtual void calc(u16* param_0) const { mAnmTexPattern->getTexNo(mAnmIndex, param_0); }
|
||||
virtual void calc(u16* param_0) const;
|
||||
|
||||
void operator=(J3DTexNoAnm const& other) {
|
||||
mAnmTexPattern = other.mAnmTexPattern;
|
||||
@@ -85,9 +85,7 @@ public:
|
||||
bool getAnmFlag() const { return mAnmFlag; }
|
||||
void setAnmFlag(bool flag) { mAnmFlag = flag; }
|
||||
void setAnmTransform(J3DAnmTextureSRTKey* transform) { mAnmTransform = transform; }
|
||||
void calc(J3DTextureSRTInfo* pSRTInfo) const {
|
||||
mAnmTransform->getTransform(mAnmIndex, pSRTInfo);
|
||||
}
|
||||
void calc(J3DTextureSRTInfo* pSRTInfo) const;
|
||||
|
||||
private:
|
||||
/* 0x0 */ u16 mAnmIndex;
|
||||
@@ -117,7 +115,7 @@ public:
|
||||
void setAnmFlag(bool flag) { mAnmFlag = flag; }
|
||||
bool getAnmFlag() const { return mAnmFlag; }
|
||||
void setAnmTevReg(J3DAnmTevRegKey* tevReg) { mAnmTevReg = tevReg; }
|
||||
void calc(GXColor* pColor) const { mAnmTevReg->getTevKonstReg(mAnmIndex, pColor); }
|
||||
void calc(GXColor* pColor) const;
|
||||
|
||||
private:
|
||||
/* 0x0 */ u16 mAnmIndex;
|
||||
@@ -147,7 +145,7 @@ public:
|
||||
void setAnmFlag(bool flag) { mAnmFlag = flag; }
|
||||
bool getAnmFlag() const { return mAnmFlag; }
|
||||
void setAnmTevReg(J3DAnmTevRegKey* tevReg) { mAnmTevReg = tevReg; }
|
||||
void calc(GXColorS10* pColor) const { mAnmTevReg->getTevColorReg(mAnmIndex, pColor); }
|
||||
void calc(GXColorS10* pColor) const;
|
||||
|
||||
private:
|
||||
/* 0x0 */ u16 mAnmIndex;
|
||||
|
||||
@@ -42,7 +42,7 @@ public:
|
||||
virtual BOOL isEnableTextureAnm() = 0;
|
||||
virtual BOOL textureIsEmpty() = 0;
|
||||
virtual u32 getTextureAnmType() = 0;
|
||||
virtual u32 getTextureAnmKeyNum() = 0;
|
||||
virtual u8 getTextureAnmKeyNum() = 0;
|
||||
virtual u8 getTextureIndex() = 0;
|
||||
virtual u8 getTextureIndex(u8 idx) = 0;
|
||||
virtual BOOL isEnablePrm() = 0;
|
||||
@@ -164,7 +164,7 @@ public:
|
||||
virtual BOOL isEnableTextureAnm() { return pBsd->mTextureFlags & 0x01; }
|
||||
virtual BOOL textureIsEmpty() { return !(pBsd->mTextureFlags & 0x02); }
|
||||
virtual u32 getTextureAnmType() { return (pBsd->mTextureFlags >> 2) & 0x07; }
|
||||
virtual u32 getTextureAnmKeyNum() { return pBsd->mTextureAnmKeyNum; }
|
||||
virtual u8 getTextureAnmKeyNum() { return pBsd->mTextureAnmKeyNum; }
|
||||
virtual u8 getTextureIndex() { return pBsd->mTextureIndex; }
|
||||
virtual u8 getTextureIndex(u8 idx) { return mpTexAnmIdxArr[idx]; }
|
||||
virtual BOOL isEnablePrm() { return pBsd->mColorFlags & 0x01; }
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
#include "dolphin/types.h"
|
||||
#include "dolphin/gx/GXStruct.h"
|
||||
#include "dolphin/gx/GXEnum.h"
|
||||
#include "dolphin/mtx/mtx.h"
|
||||
#include "JSystem/JParticle/JPAParticle.h"
|
||||
|
||||
class JPABaseShapeArc;
|
||||
|
||||
@@ -7,62 +7,247 @@
|
||||
#include "dolphin/types.h"
|
||||
|
||||
/* 802EF5D8-802EF608 .text init__12J3DFrameCtrlFs */
|
||||
void J3DFrameCtrl::init(short) {
|
||||
/* Nonmatching */
|
||||
void J3DFrameCtrl::init(s16 end) {
|
||||
mAttribute = 2;
|
||||
mState = 0;
|
||||
mStart = 0;
|
||||
mEnd = end;
|
||||
mLoop = 0;
|
||||
mRate = 1.0f;
|
||||
mFrame = 0.0f;
|
||||
}
|
||||
|
||||
/* 802EF608-802EFBA8 .text checkPass__12J3DFrameCtrlFf */
|
||||
BOOL J3DFrameCtrl::checkPass(float) {
|
||||
/* Nonmatching */
|
||||
BOOL J3DFrameCtrl::checkPass(f32 pass_frame) {
|
||||
f32 cur_frame = mFrame;
|
||||
f32 next_frame = cur_frame + mRate;
|
||||
|
||||
switch (mAttribute) {
|
||||
case LOOP_ONCE_e:
|
||||
case LOOP_ONCE_RESET_e:
|
||||
if (next_frame < mStart) {
|
||||
next_frame = mStart;
|
||||
}
|
||||
|
||||
if (next_frame >= mEnd) {
|
||||
next_frame = mEnd - 0.001f;
|
||||
}
|
||||
|
||||
if (cur_frame <= next_frame) {
|
||||
if (cur_frame <= pass_frame && pass_frame < next_frame) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
if (next_frame <= pass_frame && pass_frame < cur_frame) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
case LOOP_REPEAT_e:
|
||||
if (cur_frame < mStart) {
|
||||
while (next_frame < mStart) {
|
||||
if (mLoop - mStart <= 0.0f) {
|
||||
break;
|
||||
}
|
||||
next_frame += mLoop - mStart;
|
||||
}
|
||||
|
||||
if (next_frame <= pass_frame && pass_frame < mLoop) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
} else if (mEnd <= cur_frame) {
|
||||
while (next_frame >= mEnd) {
|
||||
if (mEnd - mLoop <= 0.0f) {
|
||||
break;
|
||||
}
|
||||
next_frame -= mEnd - mLoop;
|
||||
}
|
||||
|
||||
if (mLoop <= pass_frame && pass_frame < next_frame) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
} else if (next_frame < mStart) {
|
||||
while (next_frame < mStart) {
|
||||
if (mLoop - mStart <= 0.0f) {
|
||||
break;
|
||||
}
|
||||
next_frame += mLoop - mStart;
|
||||
}
|
||||
|
||||
if ((mStart <= pass_frame && pass_frame < cur_frame) || (next_frame <= pass_frame && pass_frame < mLoop)) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
} else if (mEnd <= next_frame) {
|
||||
while (next_frame >= mEnd) {
|
||||
if (mEnd - mLoop <= 0.0f) {
|
||||
break;
|
||||
}
|
||||
|
||||
next_frame -= mEnd - mLoop;
|
||||
}
|
||||
|
||||
if ((cur_frame <= pass_frame && pass_frame < mEnd) || (mLoop <= pass_frame && pass_frame < next_frame)) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
} else if (cur_frame <= next_frame) {
|
||||
if (cur_frame <= pass_frame && pass_frame < next_frame) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
} else if (next_frame <= pass_frame && pass_frame < cur_frame) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
case LOOP_MIRROR_ONCE_e:
|
||||
case LOOP_MIRROR_REPEAT_e:
|
||||
if (next_frame >= mEnd) {
|
||||
next_frame = mEnd - 0.001f;
|
||||
}
|
||||
|
||||
if (next_frame < mStart) {
|
||||
next_frame = mStart;
|
||||
}
|
||||
|
||||
if (cur_frame <= next_frame) {
|
||||
if (cur_frame <= pass_frame && pass_frame < next_frame) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
if (next_frame <= pass_frame && pass_frame < cur_frame) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/* 802EFBA8-802EFFE4 .text update__12J3DFrameCtrlFv */
|
||||
void J3DFrameCtrl::update() {
|
||||
/* Nonmatching */
|
||||
mState = 0;
|
||||
mFrame += mRate;
|
||||
switch (mAttribute) {
|
||||
case LOOP_ONCE_e:
|
||||
if (mFrame < mStart) {
|
||||
mFrame = mStart;
|
||||
mRate = 0.0f;
|
||||
mState |= 1;
|
||||
}
|
||||
if (mFrame >= mEnd) {
|
||||
mFrame = mEnd - 0.001f;
|
||||
mRate = 0.0f;
|
||||
mState |= 1;
|
||||
}
|
||||
break;
|
||||
case LOOP_ONCE_RESET_e:
|
||||
if (mFrame < mStart) {
|
||||
mFrame = mStart;
|
||||
mRate = 0.0f;
|
||||
mState |= 1;
|
||||
}
|
||||
if (mFrame >= mEnd) {
|
||||
mFrame = mStart;
|
||||
mRate = 0.0f;
|
||||
mState |= 1;
|
||||
}
|
||||
break;
|
||||
case LOOP_REPEAT_e:
|
||||
while (mFrame < mStart) {
|
||||
mState |= 2;
|
||||
if (mLoop - mStart <= 0.0f) {
|
||||
break;
|
||||
}
|
||||
mFrame += mLoop - mStart;
|
||||
}
|
||||
while (mFrame >= mEnd) {
|
||||
mState |= 2;
|
||||
if (mEnd - mLoop <= 0.0f) {
|
||||
break;
|
||||
}
|
||||
mFrame -= mEnd - mLoop;
|
||||
}
|
||||
break;
|
||||
case LOOP_MIRROR_ONCE_e:
|
||||
if (mFrame >= mEnd) {
|
||||
mFrame = mEnd - 0.001f;
|
||||
mRate = -mRate;
|
||||
}
|
||||
if (mFrame < mStart) {
|
||||
mFrame = mStart;
|
||||
mRate = 0.0f;
|
||||
mState |= 1;
|
||||
}
|
||||
break;
|
||||
case LOOP_MIRROR_REPEAT_e:
|
||||
if (mFrame >= mEnd) {
|
||||
mFrame = mEnd - 0.001f;
|
||||
mRate = -mRate;
|
||||
}
|
||||
if (mFrame < mStart) {
|
||||
mFrame = mStart;
|
||||
mRate = -mRate;
|
||||
mState |= 2;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/* 802EFFE4-802F06D8 .text getTransform__19J3DAnmTransformFullCFUsP16J3DTransformInfo */
|
||||
void J3DAnmTransformFull::getTransform(unsigned short, J3DTransformInfo*) const {
|
||||
void J3DAnmTransformFull::getTransform(u16, J3DTransformInfo*) const {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F06D8-802F072C .text J3DHermiteInterpolationS__FfPsPsPsPsPsPs */
|
||||
void J3DHermiteInterpolationS(float, short*, short*, short*, short*, short*, short*) {
|
||||
f32 J3DHermiteInterpolationS(f32 t, s16* time0, s16* value0, s16* tangent0, s16* time1, s16* value1, s16* tangent1) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F072C-802F0954 .text J3DGetKeyFrameInterpolationS__FfP18J3DAnmKeyTableBasePs */
|
||||
void J3DGetKeyFrameInterpolationS(float, J3DAnmKeyTableBase*, short*) {
|
||||
void J3DGetKeyFrameInterpolationS(f32, J3DAnmKeyTableBase*, s16*) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F0954-802F0E20 .text calcTransform__18J3DAnmTransformKeyCFfUsP16J3DTransformInfo */
|
||||
void J3DAnmTransformKey::calcTransform(float, unsigned short, J3DTransformInfo*) const {
|
||||
void J3DAnmTransformKey::calcTransform(f32, u16, J3DTransformInfo*) const {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F0E20-802F10D4 .text calcTransform__19J3DAnmTextureSRTKeyCFfUsP17J3DTextureSRTInfo */
|
||||
void J3DAnmTextureSRTKey::calcTransform(float, unsigned short, J3DTextureSRTInfo*) const {
|
||||
void J3DAnmTextureSRTKey::calcTransform(f32, u16, J3DTextureSRTInfo*) const {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F10D4-802F1188 .text getWeight__17J3DAnmClusterFullCFUs */
|
||||
f32 J3DAnmClusterFull::getWeight(unsigned short) const {
|
||||
f32 J3DAnmClusterFull::getWeight(u16) const {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F1188-802F120C .text getWeight__16J3DAnmClusterKeyCFUs */
|
||||
f32 J3DAnmClusterKey::getWeight(unsigned short) const {
|
||||
f32 J3DAnmClusterKey::getWeight(u16) const {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F120C-802F14B4 .text getColor__18J3DAnmVtxColorFullCFUcUsP8_GXColor */
|
||||
void J3DAnmVtxColorFull::getColor(unsigned char, unsigned short, _GXColor*) const {
|
||||
void J3DAnmVtxColorFull::getColor(unsigned char, u16, _GXColor*) const {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F14B4-802F17D0 .text getColor__17J3DAnmVtxColorKeyCFUcUsP8_GXColor */
|
||||
void J3DAnmVtxColorKey::getColor(unsigned char, unsigned short, _GXColor*) const {
|
||||
void J3DAnmVtxColorKey::getColor(unsigned char, u16, _GXColor*) const {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
@@ -77,17 +262,17 @@ void J3DAnmColor::searchUpdateMaterialID(J3DModelData*) {
|
||||
}
|
||||
|
||||
/* 802F188C-802F1BDC .text getColor__15J3DAnmColorFullCFUsP8_GXColor */
|
||||
void J3DAnmColorFull::getColor(unsigned short, _GXColor*) const {
|
||||
void J3DAnmColorFull::getColor(u16, _GXColor*) const {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F1BDC-802F1F20 .text getColor__14J3DAnmColorKeyCFUsP8_GXColor */
|
||||
void J3DAnmColorKey::getColor(unsigned short, _GXColor*) const {
|
||||
void J3DAnmColorKey::getColor(u16, _GXColor*) const {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F1F20-802F200C .text getTexNo__16J3DAnmTexPatternCFUsPUs */
|
||||
void J3DAnmTexPattern::getTexNo(unsigned short, unsigned short*) const {
|
||||
void J3DAnmTexPattern::getTexNo(u16, u16*) const {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
@@ -117,12 +302,12 @@ void J3DAnmTextureSRTKey::searchUpdateMaterialID(J3DModelData*) {
|
||||
}
|
||||
|
||||
/* 802F22E0-802F2624 .text getTevColorReg__15J3DAnmTevRegKeyCFUsP11_GXColorS10 */
|
||||
void J3DAnmTevRegKey::getTevColorReg(unsigned short, _GXColorS10*) const {
|
||||
void J3DAnmTevRegKey::getTevColorReg(u16, _GXColorS10*) const {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F2624-802F2968 .text getTevKonstReg__15J3DAnmTevRegKeyCFUsP8_GXColor */
|
||||
void J3DAnmTevRegKey::getTevKonstReg(unsigned short, _GXColor*) const {
|
||||
void J3DAnmTevRegKey::getTevKonstReg(u16, _GXColor*) const {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
@@ -135,68 +320,3 @@ void J3DAnmTevRegKey::searchUpdateMaterialID(J3DMaterialTable*) {
|
||||
void J3DAnmTevRegKey::searchUpdateMaterialID(J3DModelData*) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F2EF8-802F2F7C .text __dt__14J3DAnmColorKeyFv */
|
||||
J3DAnmColorKey::~J3DAnmColorKey() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F2F7C-802F2FF0 .text __dt__11J3DAnmColorFv */
|
||||
J3DAnmColor::~J3DAnmColor() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F2FF0-802F2FF4 .text getColor__11J3DAnmColorCFUsP8_GXColor */
|
||||
void J3DAnmColor::getColor(unsigned short, _GXColor*) const {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F2FF4-802F3078 .text __dt__15J3DAnmColorFullFv */
|
||||
J3DAnmColorFull::~J3DAnmColorFull() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F3078-802F30E4 .text __dt__17J3DAnmVtxColorKeyFv */
|
||||
J3DAnmVtxColorKey::~J3DAnmVtxColorKey() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F30E4-802F3140 .text __dt__14J3DAnmVtxColorFv */
|
||||
J3DAnmVtxColor::~J3DAnmVtxColor() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F3140-802F3144 .text getColor__14J3DAnmVtxColorCFUcUsP8_GXColor */
|
||||
void J3DAnmVtxColor::getColor(unsigned char, unsigned short, _GXColor*) const {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F3144-802F31B0 .text __dt__18J3DAnmVtxColorFullFv */
|
||||
J3DAnmVtxColorFull::~J3DAnmVtxColorFull() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F31B0-802F321C .text __dt__16J3DAnmClusterKeyFv */
|
||||
J3DAnmClusterKey::~J3DAnmClusterKey() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F321C-802F3278 .text __dt__13J3DAnmClusterFv */
|
||||
J3DAnmCluster::~J3DAnmCluster() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F3278-802F3280 .text getWeight__13J3DAnmClusterCFUs */
|
||||
f32 J3DAnmCluster::getWeight(unsigned short) const {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F3280-802F32EC .text __dt__17J3DAnmClusterFullFv */
|
||||
J3DAnmClusterFull::~J3DAnmClusterFull() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F32EC-802F3358 .text __dt__19J3DAnmTransformFullFv */
|
||||
J3DAnmTransformFull::~J3DAnmTransformFull() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
@@ -7,36 +7,67 @@
|
||||
#include "dolphin/types.h"
|
||||
|
||||
/* 802F3358-802F3394 .text calc__14J3DMatColorAnmCFP8_GXColor */
|
||||
void J3DMatColorAnm::calc(_GXColor*) const {
|
||||
/* Nonmatching */
|
||||
void J3DMatColorAnm::calc(GXColor* pColor) const {
|
||||
mAnmColor->getColor(mAnmIndex, pColor);
|
||||
}
|
||||
|
||||
/* 802F3394-802F33C8 .text calc__12J3DTexMtxAnmCFP17J3DTextureSRTInfo */
|
||||
void J3DTexMtxAnm::calc(J3DTextureSRTInfo*) const {
|
||||
/* Nonmatching */
|
||||
void J3DTexMtxAnm::calc(J3DTextureSRTInfo* pSRTInfo) const {
|
||||
mAnmTransform->getTransform(mAnmIndex, pSRTInfo);
|
||||
}
|
||||
|
||||
/* 802F33C8-802F33F8 .text calc__11J3DTexNoAnmCFPUs */
|
||||
void J3DTexNoAnm::calc(unsigned short*) const {
|
||||
/* Nonmatching */
|
||||
void J3DTexNoAnm::calc(u16* pTexNo) const {
|
||||
mAnmTexPattern->getTexNo(mAnmIndex, pTexNo);
|
||||
}
|
||||
|
||||
/* 802F33F8-802F3428 .text calc__14J3DTevColorAnmCFP11_GXColorS10 */
|
||||
void J3DTevColorAnm::calc(_GXColorS10*) const {
|
||||
/* Nonmatching */
|
||||
void J3DTevColorAnm::calc(GXColorS10* pColor) const {
|
||||
mAnmTevReg->getTevColorReg(mAnmIndex, pColor);
|
||||
}
|
||||
|
||||
/* 802F3428-802F3458 .text calc__15J3DTevKColorAnmCFP8_GXColor */
|
||||
void J3DTevKColorAnm::calc(_GXColor*) const {
|
||||
/* Nonmatching */
|
||||
void J3DTevKColorAnm::calc(GXColor* pColor) const {
|
||||
mAnmTevReg->getTevKonstReg(mAnmIndex, pColor);
|
||||
}
|
||||
|
||||
/* 802F3458-802F34FC .text initialize__14J3DMaterialAnmFv */
|
||||
void J3DMaterialAnm::initialize() {
|
||||
/* Nonmatching */
|
||||
for (u32 i = 0; i < ARRAY_SIZE(mMatColorAnm); i++)
|
||||
mMatColorAnm[i] = NULL;
|
||||
for (u32 i = 0; i < ARRAY_SIZE(mTexNoAnm); i++)
|
||||
mTexNoAnm[i] = NULL;
|
||||
for (u32 i = 0; i < ARRAY_SIZE(mTevColorAnm); i++)
|
||||
mTevColorAnm[i] = NULL;
|
||||
for (u32 i = 0; i < ARRAY_SIZE(mTevKColorAnm); i++)
|
||||
mTevKColorAnm[i] = NULL;
|
||||
for (u32 i = 0; i < ARRAY_SIZE(mTexMtxAnm); i++)
|
||||
mTexMtxAnm[i] = NULL;
|
||||
}
|
||||
|
||||
/* 802F34FC-802F36BC .text calc__14J3DMaterialAnmCFP11J3DMaterial */
|
||||
void J3DMaterialAnm::calc(J3DMaterial*) const {
|
||||
/* Nonmatching */
|
||||
void J3DMaterialAnm::calc(J3DMaterial* pMaterial) const {
|
||||
for (u32 i = 0; i < ARRAY_SIZE(mMatColorAnm); i++) {
|
||||
if (mMatColorAnm[i] != NULL)
|
||||
mMatColorAnm[i]->calc(&pMaterial->getColorBlock()->getMatColor(i)->mColor);
|
||||
}
|
||||
for (u32 i = 0; i < ARRAY_SIZE(mTexNoAnm); i++) {
|
||||
if (mTexNoAnm[i] != NULL) {
|
||||
u16 texNo;
|
||||
mTexNoAnm[i]->calc(&texNo);
|
||||
pMaterial->getTevBlock()->setTexNo(i, texNo);
|
||||
}
|
||||
}
|
||||
for (u32 i = 0; i < 3; i++) {
|
||||
if (mTevColorAnm[i] != NULL)
|
||||
mTevColorAnm[i]->calc(&pMaterial->getTevColor(i)->mColor);
|
||||
}
|
||||
for (u32 i = 0; i < ARRAY_SIZE(mTevKColorAnm); i++) {
|
||||
if (mTevKColorAnm[i] != NULL)
|
||||
mTevKColorAnm[i]->calc(&pMaterial->getTevKColor(i)->mColor);
|
||||
}
|
||||
for (u32 i = 0; i < ARRAY_SIZE(mTexMtxAnm); i++) {
|
||||
if (mTexMtxAnm[i] != NULL)
|
||||
mTexMtxAnm[i]->calc(&pMaterial->getTexMtx(i)->getTexMtxInfo().mSRT);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -102,7 +102,7 @@ JPABaseShapeArc::JPABaseShapeArc(const u8* pData, JKRHeap* pHeap) {
|
||||
bFlag1 = true;
|
||||
}
|
||||
|
||||
mGlobalAnmFlags = (bFlag2 ? 2 : 0) | (bFlag1 ? 1 : 0);
|
||||
mGlobalAnmFlags = bFlag2 << 1 | bFlag1 << 0;
|
||||
if (isEnableTextureAnm() && getTextureAnmKeyNum() != 0)
|
||||
mpTexAnmIdxArr = (const u8*)(pData + 0x60);
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user