mirror of
https://github.com/zeldaret/tww.git
synced 2026-07-07 21:30:47 -04:00
J3DAnimation work
This commit is contained in:
@@ -35,8 +35,8 @@ struct J3DAnmColorFullTable {
|
||||
}; // Size = 0x10
|
||||
|
||||
struct J3DAnmVisibilityFullTable {
|
||||
u16 _0;
|
||||
u16 _2;
|
||||
u16 mMaxFrame;
|
||||
u16 mOffset;
|
||||
}; // Size = 0x4
|
||||
|
||||
struct J3DAnmTransformKeyTable {
|
||||
@@ -367,9 +367,14 @@ public:
|
||||
|
||||
u16 getUpdateMaterialID(u16 idx) const { return mUpdateMaterialID[idx]; }
|
||||
u16 getUpdateMaterialNum() const { return mTrackNum / 3; }
|
||||
JUTNameTab * getUpdateMaterialName() { return &mMaterialName; }
|
||||
JUTNameTab * getUpdateMaterialName() { return &mUpdateMaterialName; }
|
||||
u16 getUpdateTexMtxID(u16 idx) const { return mUpdateTexMtxID[idx]; }
|
||||
|
||||
u16 getPostUpdateMaterialID(u16 idx) const { return mPostUpdateMaterialID[idx]; }
|
||||
u16 getPostUpdateMaterialNum() const { return mPostTrackNum / 3; }
|
||||
JUTNameTab * getPostUpdateMaterialName() { return &mPostUpdateMaterialName; }
|
||||
u16 getPostUpdateTexMtxID(u16 idx) const { return mPostUpdateTexMtxID[idx]; }
|
||||
|
||||
u32 getTexMtxCalcType() const { return mTexMtxCalcType; }
|
||||
Vec& getSRTCenter(u16 idx) const { return mSRTCenter[idx]; }
|
||||
|
||||
@@ -386,20 +391,20 @@ private:
|
||||
/* 0x2C */ f32* mTransData;
|
||||
/* 0x30 */ u8* mUpdateTexMtxID;
|
||||
/* 0x34 */ u16* mUpdateMaterialID;
|
||||
/* 0x38 */ JUTNameTab mMaterialName;
|
||||
/* 0x38 */ JUTNameTab mUpdateMaterialName;
|
||||
/* 0x48 */ Vec* mSRTCenter;
|
||||
/* 0x4C */ u16 mPostTrackNum;
|
||||
/* 0x4C */ void * field_0x4c;
|
||||
/* 0x50 */ void * mPostAnmTable;
|
||||
/* 0x54 */ void * field_0x54;
|
||||
/* 0x58 */ void * field_0x58;
|
||||
/* 0x5C */ f32* mPostScaleData;
|
||||
/* 0x60 */ f32* mPostRotData;
|
||||
/* 0x64 */ f32* mPostTransData;
|
||||
/* 0x5C */ void * field_0x5c;
|
||||
/* 0x60 */ u16 mPostTrackNum;
|
||||
/* 0x64 */ void * field_0x60;
|
||||
/* 0x68 */ u8* mPostUpdateTexMtxID;
|
||||
/* 0x68 */ u16* mPostUpdateMaterialID;
|
||||
/* 0x70 */ JUTNameTab mDualName;
|
||||
/* 0x6C */ u16* mPostUpdateMaterialID;
|
||||
/* 0x70 */ JUTNameTab mPostUpdateMaterialName;
|
||||
/* 0x80 */ Vec* mPostSRTCenter;
|
||||
/* 0x80 */ u32 mTexMtxCalcType;
|
||||
/* 0x84 */ u32 mTexMtxCalcType;
|
||||
}; // Size: 0x88
|
||||
|
||||
STATIC_ASSERT(sizeof(J3DAnmTextureSRTKey) == 0x88);
|
||||
@@ -407,17 +412,18 @@ STATIC_ASSERT(sizeof(J3DAnmTextureSRTKey) == 0x88);
|
||||
class J3DAnmVisibilityFull : public J3DAnmBase {
|
||||
public:
|
||||
J3DAnmVisibilityFull();
|
||||
bool getVisibility(u16, u8*) const;
|
||||
void getVisibility(u16, u8*) const;
|
||||
|
||||
virtual ~J3DAnmVisibilityFull();
|
||||
virtual s32 getKind() const;
|
||||
|
||||
J3DAnmVisibilityFullTable * getAnmTable() const { return mAnmTable; }
|
||||
|
||||
private:
|
||||
/* 0x0C */ void* field_0xc;
|
||||
/* 0x10 */ void* mAnmTable;
|
||||
/* 0x14 */ u16 field_0x14;
|
||||
/* 0x16 */ u16 mUpdateMaterialNum;
|
||||
/* 0x18 */ u16* field_0x18;
|
||||
/* 0x10 */ u16 mUpdateMaterialNum;
|
||||
/* 0x14 */ J3DAnmVisibilityFullTable * mAnmTable;
|
||||
/* 0x18 */ u8* mVisibility;
|
||||
/* 0x1C */ JUTNameTab field_0x1c;
|
||||
}; // Size: 0x2C
|
||||
|
||||
@@ -430,6 +436,7 @@ public:
|
||||
|
||||
u16 getUpdateMaterialID(u16 idx) const { return mUpdateMaterialID[idx]; }
|
||||
u16 getUpdateMaterialNum() const { return mUpdateMaterialNum; }
|
||||
JUTNameTab * getUpdateMaterialName() { return &mUpdateMaterialName; }
|
||||
|
||||
J3DAnmTexPatternFullTable * getAnmTable() const { return mAnmTable; }
|
||||
|
||||
@@ -438,12 +445,12 @@ public:
|
||||
|
||||
private:
|
||||
/* 0x0C */ void* field_0xc;
|
||||
/* 0x10 */ s16* mTextureIndex;
|
||||
/* 0x10 */ u16* mTextureIndex;
|
||||
/* 0x14 */ J3DAnmTexPatternFullTable* mAnmTable;
|
||||
/* 0x18 */ u16 field_0x18;
|
||||
/* 0x1A */ u16 mUpdateMaterialNum;
|
||||
/* 0x1C */ u16* mUpdateMaterialID;
|
||||
/* 0x20 */ JUTNameTab mMaterialName;
|
||||
/* 0x20 */ JUTNameTab mUpdateMaterialName;
|
||||
}; // Size: 0x2C
|
||||
|
||||
class J3DAnmTevRegKey : public J3DAnmBase {
|
||||
@@ -463,6 +470,9 @@ public:
|
||||
u16 getCRegUpdateMaterialID(u16 idx) const { return mCRegUpdateMaterialID[idx]; }
|
||||
u16 getKRegUpdateMaterialID(u16 idx) const { return mKRegUpdateMaterialID[idx]; }
|
||||
|
||||
JUTNameTab * getCRegUpdateMaterialName() { return &mCRegUpdateMaterialName; }
|
||||
JUTNameTab * getKRegUpdateMaterialName() { return &mKRegUpdateMaterialName; }
|
||||
|
||||
J3DAnmCRegKeyTable * getAnmCRegKeyTable() const { return mAnmCRegKeyTable; }
|
||||
J3DAnmKRegKeyTable * getAnmKRegKeyTable() const { return mAnmKRegKeyTable; }
|
||||
|
||||
@@ -473,9 +483,9 @@ private:
|
||||
/* 0x14 */ u16 mCRegDataCount[4];
|
||||
/* 0x1C */ u16 mKRegDataCount[4];
|
||||
/* 0x24 */ u16* mCRegUpdateMaterialID;
|
||||
/* 0x28 */ JUTNameTab mCRegNameTab;
|
||||
/* 0x28 */ JUTNameTab mCRegUpdateMaterialName;
|
||||
/* 0x38 */ u16* mKRegUpdateMaterialID;
|
||||
/* 0x3C */ JUTNameTab mKRegNameTab;
|
||||
/* 0x3C */ JUTNameTab mKRegUpdateMaterialName;
|
||||
/* 0x4C */ J3DAnmCRegKeyTable* mAnmCRegKeyTable;
|
||||
/* 0x50 */ J3DAnmKRegKeyTable* mAnmKRegKeyTable;
|
||||
/* 0x54 */ s16 * mAnmCRegData[4];
|
||||
@@ -494,6 +504,7 @@ public:
|
||||
u16 getUpdateMaterialNum() const { return mUpdateMaterialNum; }
|
||||
bool isValidUpdateMaterialID(u16 id) const { return mUpdateMaterialID[id] != 0xFFFF; }
|
||||
u16 getUpdateMaterialID(u16 idx) const { return mUpdateMaterialID[idx]; }
|
||||
JUTNameTab * getUpdateMaterialName() { return &mUpdateMaterialName; }
|
||||
|
||||
private:
|
||||
/* 0x0C */ u16 field_0xc;
|
||||
@@ -503,7 +514,7 @@ private:
|
||||
/* 0x14 */ u32 field_0x14;
|
||||
/* 0x18 */ u16 mUpdateMaterialNum;
|
||||
/* 0x1C */ u16* mUpdateMaterialID;
|
||||
/* 0x20 */ JUTNameTab field_0x1c;
|
||||
/* 0x20 */ JUTNameTab mUpdateMaterialName;
|
||||
}; // Size: 0x30
|
||||
|
||||
class J3DAnmColorKey : public J3DAnmColor {
|
||||
@@ -530,12 +541,14 @@ public:
|
||||
virtual s32 getKind() const;
|
||||
virtual void getColor(u16, GXColor*) const;
|
||||
|
||||
J3DAnmColorFullTable * getAnmTable() const { return mAnmTable; }
|
||||
|
||||
private:
|
||||
/* 0x2C */ int field_0x2c;
|
||||
/* 0x30 */ int field_0x30;
|
||||
/* 0x34 */ int field_0x34;
|
||||
/* 0x38 */ int field_0x38;
|
||||
/* 0x3C */ int field_0x3c;
|
||||
/* 0x30 */ u8 * mColorR;
|
||||
/* 0x34 */ u8 * mColorG;
|
||||
/* 0x38 */ u8 * mColorB;
|
||||
/* 0x3C */ u8 * mColorA;
|
||||
/* 0x40 */ J3DAnmColorFullTable * mAnmTable;
|
||||
};
|
||||
|
||||
class J3DAnmVtxColor : public J3DAnmBase {
|
||||
@@ -590,8 +603,11 @@ public:
|
||||
virtual s32 getKind() const;
|
||||
virtual f32 getWeight(u16) const;
|
||||
|
||||
J3DAnmVisibilityFullTable * getAnmTable() const { return mAnmTable; }
|
||||
|
||||
private:
|
||||
/* 0x10 */ int field_0x10;
|
||||
/* 0x10 */ f32 * mWeight;
|
||||
/* 0x14 */ J3DAnmVisibilityFullTable * mAnmTable;
|
||||
};
|
||||
|
||||
class J3DAnmClusterKey : public J3DAnmCluster {
|
||||
|
||||
@@ -232,8 +232,14 @@ void J3DAnmTextureSRTKey::calcTransform(f32, u16, J3DTextureSRTInfo*) const {
|
||||
}
|
||||
|
||||
/* 802F10D4-802F1188 .text getWeight__17J3DAnmClusterFullCFUs */
|
||||
f32 J3DAnmClusterFull::getWeight(u16) const {
|
||||
/* Nonmatching */
|
||||
f32 J3DAnmClusterFull::getWeight(u16 idx) const {
|
||||
u16 maxFrame = getAnmTable()[idx].mMaxFrame;
|
||||
if (0.0f <= getFrame() && getFrame() < maxFrame)
|
||||
return mWeight[(s32)getFrame() + getAnmTable()[idx].mOffset];
|
||||
if (getFrame() < 0.0f)
|
||||
return mWeight[getAnmTable()[idx].mOffset];
|
||||
else
|
||||
return mWeight[maxFrame - 1 + getAnmTable()[idx].mOffset];
|
||||
}
|
||||
|
||||
/* 802F1188-802F120C .text getWeight__16J3DAnmClusterKeyCFUs */
|
||||
@@ -242,81 +248,166 @@ f32 J3DAnmClusterKey::getWeight(u16) const {
|
||||
}
|
||||
|
||||
/* 802F120C-802F14B4 .text getColor__18J3DAnmVtxColorFullCFUcUsP8_GXColor */
|
||||
void J3DAnmVtxColorFull::getColor(unsigned char, u16, _GXColor*) const {
|
||||
void J3DAnmVtxColorFull::getColor(u8, u16, GXColor* dst) const {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F14B4-802F17D0 .text getColor__17J3DAnmVtxColorKeyCFUcUsP8_GXColor */
|
||||
void J3DAnmVtxColorKey::getColor(unsigned char, u16, _GXColor*) const {
|
||||
void J3DAnmVtxColorKey::getColor(u8, u16, GXColor* dst) const {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F17D0-802F1868 .text searchUpdateMaterialID__11J3DAnmColorFP16J3DMaterialTable */
|
||||
void J3DAnmColor::searchUpdateMaterialID(J3DMaterialTable*) {
|
||||
/* Nonmatching */
|
||||
void J3DAnmColor::searchUpdateMaterialID(J3DMaterialTable* table) {
|
||||
for (u16 i = 0; i < getUpdateMaterialNum(); i++) {
|
||||
s32 materialID = table->getMaterialName()->getIndex(getUpdateMaterialName()->getName(i));
|
||||
if (materialID != -1)
|
||||
mUpdateMaterialID[i] = materialID;
|
||||
else
|
||||
mUpdateMaterialID[i] = 0xFFFF;
|
||||
}
|
||||
}
|
||||
|
||||
/* 802F1868-802F188C .text searchUpdateMaterialID__11J3DAnmColorFP12J3DModelData */
|
||||
void J3DAnmColor::searchUpdateMaterialID(J3DModelData*) {
|
||||
/* Nonmatching */
|
||||
void J3DAnmColor::searchUpdateMaterialID(J3DModelData* modelData) {
|
||||
searchUpdateMaterialID(&modelData->getMaterialTable());
|
||||
}
|
||||
|
||||
/* 802F188C-802F1BDC .text getColor__15J3DAnmColorFullCFUsP8_GXColor */
|
||||
void J3DAnmColorFull::getColor(u16, _GXColor*) const {
|
||||
/* Nonmatching */
|
||||
void J3DAnmColorFull::getColor(u16 idx, GXColor* dst) const {
|
||||
{
|
||||
u16 maxFrame = getAnmTable()[idx].mRMaxFrame;
|
||||
if (getFrame() < 0.0f)
|
||||
dst->r = mColorR[getAnmTable()[idx].mROffset];
|
||||
if (getFrame() >= maxFrame)
|
||||
dst->r = mColorR[maxFrame - 1 + getAnmTable()[idx].mROffset];
|
||||
if (0.0f <= getFrame() && getFrame() < maxFrame)
|
||||
dst->r = mColorR[(s32)getFrame() + getAnmTable()[idx].mROffset];
|
||||
}
|
||||
{
|
||||
u16 maxFrame = getAnmTable()[idx].mGMaxFrame;
|
||||
if (getFrame() < 0.0f)
|
||||
dst->g = mColorG[getAnmTable()[idx].mGOffset];
|
||||
if (getFrame() >= maxFrame)
|
||||
dst->g = mColorG[maxFrame - 1 + getAnmTable()[idx].mGOffset];
|
||||
if (0.0f <= getFrame() && getFrame() < maxFrame)
|
||||
dst->g = mColorG[(s32)getFrame() + getAnmTable()[idx].mGOffset];
|
||||
}
|
||||
{
|
||||
u16 maxFrame = getAnmTable()[idx].mBMaxFrame;
|
||||
if (getFrame() < 0.0f)
|
||||
dst->b = mColorB[getAnmTable()[idx].mBOffset];
|
||||
if (getFrame() >= maxFrame)
|
||||
dst->b = mColorB[maxFrame - 1 + getAnmTable()[idx].mBOffset];
|
||||
if (0.0f <= getFrame() && getFrame() < maxFrame)
|
||||
dst->b = mColorB[(s32)getFrame() + getAnmTable()[idx].mBOffset];
|
||||
}
|
||||
{
|
||||
u16 maxFrame = getAnmTable()[idx].mAMaxFrame;
|
||||
if (getFrame() < 0.0f)
|
||||
dst->a = mColorA[getAnmTable()[idx].mAOffset];
|
||||
if (getFrame() >= maxFrame)
|
||||
dst->a = mColorA[maxFrame - 1 + getAnmTable()[idx].mAOffset];
|
||||
if (0.0f <= getFrame() && getFrame() < maxFrame)
|
||||
dst->a = mColorA[(s32)getFrame() + getAnmTable()[idx].mAOffset];
|
||||
}
|
||||
}
|
||||
|
||||
/* 802F1BDC-802F1F20 .text getColor__14J3DAnmColorKeyCFUsP8_GXColor */
|
||||
void J3DAnmColorKey::getColor(u16, _GXColor*) const {
|
||||
void J3DAnmColorKey::getColor(u16 idx, GXColor* dst) const {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F1F20-802F200C .text getTexNo__16J3DAnmTexPatternCFUsPUs */
|
||||
void J3DAnmTexPattern::getTexNo(u16, u16*) const {
|
||||
/* Nonmatching */
|
||||
void J3DAnmTexPattern::getTexNo(u16 idx, u16* dst) const {
|
||||
u16 maxFrame = getAnmTable()[idx].mMaxFrame;
|
||||
if (0.0f <= getFrame() && getFrame() < maxFrame)
|
||||
*dst = mTextureIndex[(s32)getFrame() + getAnmTable()[idx].mOffset];
|
||||
if (getFrame() < 0.0f)
|
||||
*dst = mTextureIndex[getAnmTable()[idx].mOffset];
|
||||
if (getFrame() >= maxFrame)
|
||||
*dst = mTextureIndex[maxFrame - 1 + getAnmTable()[idx].mOffset];
|
||||
}
|
||||
|
||||
/* 802F200C-802F20EC .text getVisibility__20J3DAnmVisibilityFullCFUsPUc */
|
||||
bool J3DAnmVisibilityFull::getVisibility(u16, u8*) const {
|
||||
/* Nonmatching */
|
||||
void J3DAnmVisibilityFull::getVisibility(u16 idx, u8* dst) const {
|
||||
u16 maxFrame = getAnmTable()[idx].mMaxFrame;
|
||||
if (0.0f <= getFrame() && getFrame() < maxFrame)
|
||||
*dst = mVisibility[(s32)getFrame() + getAnmTable()[idx].mOffset];
|
||||
if (getFrame() < 0.0f)
|
||||
*dst = mVisibility[getAnmTable()[idx].mOffset];
|
||||
if (getFrame() >= maxFrame)
|
||||
*dst = mVisibility[maxFrame - 1 + getAnmTable()[idx].mOffset];
|
||||
}
|
||||
|
||||
/* 802F20EC-802F2184 .text searchUpdateMaterialID__16J3DAnmTexPatternFP16J3DMaterialTable */
|
||||
void J3DAnmTexPattern::searchUpdateMaterialID(J3DMaterialTable*) {
|
||||
/* Nonmatching */
|
||||
void J3DAnmTexPattern::searchUpdateMaterialID(J3DMaterialTable* table) {
|
||||
for (u16 i = 0; i < getUpdateMaterialNum(); i++) {
|
||||
s32 materialID = table->getMaterialName()->getIndex(getUpdateMaterialName()->getName(i));
|
||||
if (materialID != -1)
|
||||
mUpdateMaterialID[i] = materialID;
|
||||
else
|
||||
mUpdateMaterialID[i] = 0xFFFF;
|
||||
}
|
||||
}
|
||||
|
||||
/* 802F2184-802F21A8 .text searchUpdateMaterialID__16J3DAnmTexPatternFP12J3DModelData */
|
||||
void J3DAnmTexPattern::searchUpdateMaterialID(J3DModelData*) {
|
||||
/* Nonmatching */
|
||||
void J3DAnmTexPattern::searchUpdateMaterialID(J3DModelData* modelData) {
|
||||
searchUpdateMaterialID(&modelData->getMaterialTable());
|
||||
}
|
||||
|
||||
/* 802F21A8-802F22BC .text searchUpdateMaterialID__19J3DAnmTextureSRTKeyFP16J3DMaterialTable */
|
||||
void J3DAnmTextureSRTKey::searchUpdateMaterialID(J3DMaterialTable*) {
|
||||
/* Nonmatching */
|
||||
void J3DAnmTextureSRTKey::searchUpdateMaterialID(J3DMaterialTable* table) {
|
||||
for (u16 i = 0; i < getUpdateMaterialNum(); i++) {
|
||||
s32 materialID = table->getMaterialName()->getIndex(getUpdateMaterialName()->getName(i));
|
||||
if (materialID != -1)
|
||||
mUpdateMaterialID[i] = materialID;
|
||||
else
|
||||
mUpdateMaterialID[i] = 0xFFFF;
|
||||
}
|
||||
for (u16 i = 0; i < getPostUpdateMaterialNum(); i++) {
|
||||
s32 materialID = table->getMaterialName()->getIndex(getPostUpdateMaterialName()->getName(i));
|
||||
if (materialID != -1)
|
||||
mPostUpdateMaterialID[i] = materialID;
|
||||
else
|
||||
mPostUpdateMaterialID[i] = 0xFFFF;
|
||||
}
|
||||
}
|
||||
|
||||
/* 802F22BC-802F22E0 .text searchUpdateMaterialID__19J3DAnmTextureSRTKeyFP12J3DModelData */
|
||||
void J3DAnmTextureSRTKey::searchUpdateMaterialID(J3DModelData*) {
|
||||
/* Nonmatching */
|
||||
void J3DAnmTextureSRTKey::searchUpdateMaterialID(J3DModelData* modelData) {
|
||||
searchUpdateMaterialID(&modelData->getMaterialTable());
|
||||
}
|
||||
|
||||
/* 802F22E0-802F2624 .text getTevColorReg__15J3DAnmTevRegKeyCFUsP11_GXColorS10 */
|
||||
void J3DAnmTevRegKey::getTevColorReg(u16, _GXColorS10*) const {
|
||||
void J3DAnmTevRegKey::getTevColorReg(u16 idx, GXColorS10* dst) const {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F2624-802F2968 .text getTevKonstReg__15J3DAnmTevRegKeyCFUsP8_GXColor */
|
||||
void J3DAnmTevRegKey::getTevKonstReg(u16, _GXColor*) const {
|
||||
void J3DAnmTevRegKey::getTevKonstReg(u16 idx, GXColor* dst) const {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802F2968-802F2A64 .text searchUpdateMaterialID__15J3DAnmTevRegKeyFP16J3DMaterialTable */
|
||||
void J3DAnmTevRegKey::searchUpdateMaterialID(J3DMaterialTable*) {
|
||||
/* Nonmatching */
|
||||
void J3DAnmTevRegKey::searchUpdateMaterialID(J3DMaterialTable* table) {
|
||||
for (u16 i = 0; i < getCRegUpdateMaterialNum(); i++) {
|
||||
s32 materialID = table->getMaterialName()->getIndex(getCRegUpdateMaterialName()->getName(i));
|
||||
if (materialID != -1)
|
||||
mCRegUpdateMaterialID[i] = materialID;
|
||||
else
|
||||
mCRegUpdateMaterialID[i] = 0xFFFF;
|
||||
}
|
||||
for (u16 i = 0; i < getKRegUpdateMaterialNum(); i++) {
|
||||
s32 materialID = table->getMaterialName()->getIndex(getKRegUpdateMaterialName()->getName(i));
|
||||
if (materialID != -1)
|
||||
mKRegUpdateMaterialID[i] = materialID;
|
||||
else
|
||||
mKRegUpdateMaterialID[i] = 0xFFFF;
|
||||
}
|
||||
}
|
||||
|
||||
/* 802F2A64-802F2A88 .text searchUpdateMaterialID__15J3DAnmTevRegKeyFP12J3DModelData */
|
||||
void J3DAnmTevRegKey::searchUpdateMaterialID(J3DModelData*) {
|
||||
/* Nonmatching */
|
||||
void J3DAnmTevRegKey::searchUpdateMaterialID(J3DModelData* modelData) {
|
||||
searchUpdateMaterialID(&modelData->getMaterialTable());
|
||||
}
|
||||
|
||||
@@ -8,9 +8,9 @@
|
||||
#include "dolphin/types.h"
|
||||
|
||||
/* 802DDBC4-802DDDC4 .text createColorBlock__11J3DMaterialFUl */
|
||||
J3DColorBlock * J3DMaterial::createColorBlock(u32 param_0) {
|
||||
J3DColorBlock * J3DMaterial::createColorBlock(u32 createFlag) {
|
||||
J3DColorBlock* rv = NULL;
|
||||
switch (param_0) {
|
||||
switch (createFlag) {
|
||||
case 0:
|
||||
rv = new J3DColorBlockLightOff();
|
||||
break;
|
||||
@@ -26,8 +26,8 @@ J3DColorBlock * J3DMaterial::createColorBlock(u32 param_0) {
|
||||
}
|
||||
|
||||
/* 802DDDC4-802DDF28 .text createTexGenBlock__11J3DMaterialFUl */
|
||||
J3DTexGenBlock * J3DMaterial::createTexGenBlock(u32 param_0) {
|
||||
switch (param_0) {
|
||||
J3DTexGenBlock * J3DMaterial::createTexGenBlock(u32 createFlag) {
|
||||
switch (createFlag) {
|
||||
case 0x8000000:
|
||||
return new J3DTexGenBlock4();
|
||||
case 0:
|
||||
@@ -37,15 +37,15 @@ J3DTexGenBlock * J3DMaterial::createTexGenBlock(u32 param_0) {
|
||||
}
|
||||
|
||||
/* 802DDF28-802DE29C .text createTevBlock__11J3DMaterialFi */
|
||||
J3DTevBlock * J3DMaterial::createTevBlock(int param_0) {
|
||||
J3DTevBlock * J3DMaterial::createTevBlock(int num) {
|
||||
J3DTevBlock* rv = NULL;
|
||||
if (param_0 <= 1) {
|
||||
if (num <= 1) {
|
||||
rv = new J3DTevBlock1();
|
||||
} else if (param_0 == 2) {
|
||||
} else if (num == 2) {
|
||||
rv = new J3DTevBlock2();
|
||||
} else if (param_0 <= 4) {
|
||||
} else if (num <= 4) {
|
||||
rv = new J3DTevBlock4();
|
||||
} else if (param_0 <= 16) {
|
||||
} else if (num <= 16) {
|
||||
rv = new J3DTevBlock16();
|
||||
}
|
||||
return rv;
|
||||
@@ -61,10 +61,10 @@ J3DIndBlock * J3DMaterial::createIndBlock(int param_0) {
|
||||
}
|
||||
|
||||
/* 802DE384-802DE548 .text createPEBlock__11J3DMaterialFUlUl */
|
||||
J3DPEBlock * J3DMaterial::createPEBlock(u32 createFlags, u32 materialMode) {
|
||||
J3DPEBlock * J3DMaterial::createPEBlock(u32 createFlag, u32 materialMode) {
|
||||
J3DPEBlock* rv = NULL;
|
||||
|
||||
if (createFlags == 0) {
|
||||
if (createFlag == 0) {
|
||||
if (materialMode & 1) {
|
||||
rv = new J3DPEBlockOpa();
|
||||
return rv;
|
||||
@@ -77,9 +77,9 @@ J3DPEBlock * J3DMaterial::createPEBlock(u32 createFlags, u32 materialMode) {
|
||||
}
|
||||
}
|
||||
|
||||
if (createFlags == 0x10000000) {
|
||||
if (createFlag == 0x10000000) {
|
||||
rv = new J3DPEBlockFull();
|
||||
} else if (createFlags == 0x20000000) {
|
||||
} else if (createFlag == 0x20000000) {
|
||||
rv = new J3DPEBlockFogOff();
|
||||
}
|
||||
|
||||
@@ -87,9 +87,9 @@ J3DPEBlock * J3DMaterial::createPEBlock(u32 createFlags, u32 materialMode) {
|
||||
}
|
||||
|
||||
/* 802DE548-802DE598 .text calcSizeColorBlock__11J3DMaterialFUl */
|
||||
u32 J3DMaterial::calcSizeColorBlock(u32 param_0) {
|
||||
u32 J3DMaterial::calcSizeColorBlock(u32 createFlag) {
|
||||
u32 rv = 0;
|
||||
switch (param_0) {
|
||||
switch (createFlag) {
|
||||
case 0:
|
||||
rv = sizeof(J3DColorBlockLightOff);
|
||||
break;
|
||||
@@ -105,8 +105,8 @@ u32 J3DMaterial::calcSizeColorBlock(u32 param_0) {
|
||||
}
|
||||
|
||||
/* 802DE598-802DE5C4 .text calcSizeTexGenBlock__11J3DMaterialFUl */
|
||||
u32 J3DMaterial::calcSizeTexGenBlock(u32 param_0) {
|
||||
switch (param_0) {
|
||||
u32 J3DMaterial::calcSizeTexGenBlock(u32 createFlag) {
|
||||
switch (createFlag) {
|
||||
case 0x8000000:
|
||||
return sizeof(J3DTexGenBlock4);
|
||||
case 0:
|
||||
@@ -116,15 +116,15 @@ u32 J3DMaterial::calcSizeTexGenBlock(u32 param_0) {
|
||||
}
|
||||
|
||||
/* 802DE5C4-802DE60C .text calcSizeTevBlock__11J3DMaterialFi */
|
||||
u32 J3DMaterial::calcSizeTevBlock(int param_0) {
|
||||
u32 J3DMaterial::calcSizeTevBlock(int num) {
|
||||
u32 rv = 0;
|
||||
if (param_0 <= 1) {
|
||||
if (num <= 1) {
|
||||
rv = sizeof(J3DTevBlock1);
|
||||
} else if (param_0 == 2) {
|
||||
} else if (num == 2) {
|
||||
rv = sizeof(J3DTevBlock2);
|
||||
} else if (param_0 <= 4) {
|
||||
} else if (num <= 4) {
|
||||
rv = sizeof(J3DTevBlock4);
|
||||
} else if (param_0 <= 16) {
|
||||
} else if (num <= 16) {
|
||||
rv = sizeof(J3DTevBlock16);
|
||||
}
|
||||
return rv;
|
||||
@@ -140,20 +140,20 @@ u32 J3DMaterial::calcSizeIndBlock(int param_0) {
|
||||
}
|
||||
|
||||
/* 802DE620-802DE688 .text calcSizePEBlock__11J3DMaterialFUlUl */
|
||||
u32 J3DMaterial::calcSizePEBlock(u32 param_0, u32 param_1) {
|
||||
u32 J3DMaterial::calcSizePEBlock(u32 createFlag, u32 materialMode) {
|
||||
u32 rv = 0;
|
||||
if (param_0 == 0) {
|
||||
if (param_1 & 1) {
|
||||
if (createFlag == 0) {
|
||||
if (materialMode & 1) {
|
||||
rv = sizeof(J3DPEBlockOpa);
|
||||
} else if (param_1 & 2) {
|
||||
} else if (materialMode & 2) {
|
||||
rv = sizeof(J3DPEBlockTexEdge);
|
||||
} else if (param_1 & 4) {
|
||||
} else if (materialMode & 4) {
|
||||
rv = sizeof(J3DPEBlockXlu);
|
||||
}
|
||||
}
|
||||
else if (param_0 == 0x10000000) {
|
||||
else if (createFlag == 0x10000000) {
|
||||
rv = sizeof(J3DPEBlockFull);
|
||||
} else if (param_0 == 0x20000000) {
|
||||
} else if (createFlag == 0x20000000) {
|
||||
rv = sizeof(J3DPEBlockFogOff);
|
||||
}
|
||||
return rv;
|
||||
@@ -315,7 +315,7 @@ s32 J3DMaterial::newSharedDisplayList(u32 param_0) {
|
||||
if (mSharedDLObj == NULL) {
|
||||
mSharedDLObj = new J3DDisplayListObj();
|
||||
if (mSharedDLObj == NULL) {
|
||||
return 4;
|
||||
return kJ3DError_Alloc;
|
||||
}
|
||||
s32 res = mSharedDLObj->newDisplayList(param_0);
|
||||
switch (res) {
|
||||
@@ -325,7 +325,7 @@ s32 J3DMaterial::newSharedDisplayList(u32 param_0) {
|
||||
return res;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
return kJ3DError_Success;
|
||||
}
|
||||
|
||||
/* 802DF1AC-802DF240 .text newSingleSharedDisplayList__11J3DMaterialFUl */
|
||||
@@ -333,7 +333,7 @@ s32 J3DMaterial::newSingleSharedDisplayList(u32 param_0) {
|
||||
if (mSharedDLObj == NULL) {
|
||||
mSharedDLObj = new J3DDisplayListObj();
|
||||
if (mSharedDLObj == NULL) {
|
||||
return 4;
|
||||
return kJ3DError_Alloc;
|
||||
}
|
||||
s32 res = mSharedDLObj->newSingleDisplayList(param_0);
|
||||
switch (res) {
|
||||
@@ -343,7 +343,7 @@ s32 J3DMaterial::newSingleSharedDisplayList(u32 param_0) {
|
||||
return res;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
return kJ3DError_Success;
|
||||
}
|
||||
|
||||
/* 802DF240-802DF260 .text initialize__18J3DPatchedMaterialFv */
|
||||
@@ -360,7 +360,7 @@ void J3DPatchedMaterial::makeSharedDisplayList() {}
|
||||
/* 802DF268-802DF2AC .text load__18J3DPatchedMaterialFv */
|
||||
void J3DPatchedMaterial::load() {
|
||||
j3dSys.setMaterialMode(mMaterialMode);
|
||||
if (j3dSys.checkFlag(2)) {
|
||||
if (j3dSys.checkFlag(0x02)) {
|
||||
return;
|
||||
}
|
||||
j3dSys.mMatPacket->callDL();
|
||||
@@ -402,7 +402,7 @@ void J3DLockedMaterial::makeSharedDisplayList() {}
|
||||
/* 802DF368-802DF3AC .text load__17J3DLockedMaterialFv */
|
||||
void J3DLockedMaterial::load() {
|
||||
j3dSys.setMaterialMode(mMaterialMode);
|
||||
if (j3dSys.checkFlag(2)) {
|
||||
if (j3dSys.checkFlag(0x02)) {
|
||||
return;
|
||||
}
|
||||
j3dSys.mMatPacket->callDL();
|
||||
|
||||
Reference in New Issue
Block a user