mirror of
https://github.com/TwilitRealm/dusklight
synced 2026-05-30 00:16:19 -04:00
misc cleanup
This commit is contained in:
@@ -8,6 +8,11 @@
|
||||
#define M_PI 3.14159265358979323846f
|
||||
#endif
|
||||
|
||||
struct cXy {
|
||||
f32 x;
|
||||
f32 y;
|
||||
};
|
||||
|
||||
struct cXyz : Vec {
|
||||
static const cXyz Zero;
|
||||
static const cXyz BaseX;
|
||||
|
||||
+4
-11
@@ -16,6 +16,7 @@ class JKRHeap;
|
||||
class JKRSolidHeap;
|
||||
struct ResTIMG;
|
||||
class Z2Creature;
|
||||
struct cXy;
|
||||
|
||||
namespace mDoExt {
|
||||
extern u8 CurrentHeapAdjustVerbose;
|
||||
@@ -483,11 +484,6 @@ struct mDoExt_3Dline_field_0x10_c {
|
||||
s8 z;
|
||||
};
|
||||
|
||||
struct mDoExt_3Dline_field_0x18_c {
|
||||
f32 field_0x0;
|
||||
f32 field_0x4;
|
||||
};
|
||||
|
||||
class mDoExt_3Dline_c {
|
||||
public:
|
||||
int init(u16, int, BOOL);
|
||||
@@ -495,12 +491,9 @@ public:
|
||||
|
||||
/* 0x00 */ cXyz* field_0x0;
|
||||
/* 0x04 */ f32* field_0x4;
|
||||
/* 0x08 */ cXyz* field_0x8;
|
||||
/* 0x0C */ cXyz* field_0xc;
|
||||
/* 0x10 */ mDoExt_3Dline_field_0x10_c* field_0x10;
|
||||
/* 0x14 */ mDoExt_3Dline_field_0x10_c* field_0x14;
|
||||
/* 0x18 */ mDoExt_3Dline_field_0x18_c* field_0x18;
|
||||
/* 0x1C */ mDoExt_3Dline_field_0x18_c* field_0x1c;
|
||||
/* 0x08 */ cXyz* field_0x8[2];
|
||||
/* 0x10 */ mDoExt_3Dline_field_0x10_c* field_0x10[2];
|
||||
/* 0x18 */ cXy* field_0x18[2];
|
||||
};
|
||||
|
||||
class mDoExt_offCupOnAupPacket : public J3DPacket {
|
||||
|
||||
@@ -192,7 +192,7 @@ void J3DDifferedTexMtx::loadExecute(f32 const (*param_0)[4]) {
|
||||
mtx = &tex_mtx_obj->getMtx(i);
|
||||
}
|
||||
}
|
||||
GXLoadTexMtxImm(*mtx, i * 3 + 0x40, GX_MTX3x4);
|
||||
GXLoadTexMtxImm(*mtx, i * 3 + GX_PTTEXMTX0, GX_MTX3x4);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
@@ -282,7 +282,7 @@ void J3DDifferedTexMtx::loadExecute(f32 const (*param_0)[4]) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
GXLoadTexMtxImm(*mtx, i * 3 + 30, (GXTexMtxType)tex_mtx_info_1->mProjection);
|
||||
GXLoadTexMtxImm(*mtx, i * 3 + GX_TEXMTX0, (GXTexMtxType)tex_mtx_info_1->mProjection);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -362,31 +362,31 @@ void J3DShapeMtxConcatView::load() const {
|
||||
void J3DShapeMtxConcatView::loadNrmMtx(int param_0, u16 param_1, MtxP param_2) const {
|
||||
if (sCurrentScaleFlag[param_1] == 1) {
|
||||
if (sTexMtxLoadType == 0x2000) {
|
||||
J3DFifoLoadNrmMtxToTexMtx(param_2, 0x1e);
|
||||
J3DFifoLoadNrmMtxToTexMtx(param_2, GX_TEXMTX0);
|
||||
}
|
||||
|
||||
if (!sNBTFlag) {
|
||||
J3DFifoLoadNrmMtxImm(param_2, 0);
|
||||
J3DFifoLoadNrmMtxImm(param_2, GX_PNMTX0);
|
||||
} else {
|
||||
Mtx33 mtx;
|
||||
BE(Vec)* scale = j3dSys.getNBTScale();
|
||||
J3DPSMtx33CopyFrom34(param_2, mtx);
|
||||
J3DScaleNrmMtx33(mtx, *scale);
|
||||
J3DFifoLoadNrmMtxImm3x3(mtx, 0);
|
||||
J3DFifoLoadNrmMtxImm3x3(mtx, GX_PNMTX0);
|
||||
}
|
||||
} else {
|
||||
Mtx33 mtx;
|
||||
J3DPSCalcInverseTranspose(param_2, mtx);
|
||||
if (sTexMtxLoadType == 0x2000) {
|
||||
J3DFifoLoadNrmMtxToTexMtx3x3(mtx, 0x1e);
|
||||
J3DFifoLoadNrmMtxToTexMtx3x3(mtx, GX_TEXMTX0);
|
||||
}
|
||||
|
||||
if (!sNBTFlag) {
|
||||
J3DFifoLoadNrmMtxImm3x3(mtx, 0);
|
||||
J3DFifoLoadNrmMtxImm3x3(mtx, GX_PNMTX0);
|
||||
} else {
|
||||
BE(Vec)* scale = j3dSys.getNBTScale();
|
||||
J3DScaleNrmMtx33(mtx, *scale);
|
||||
J3DFifoLoadNrmMtxImm3x3(mtx, 0);
|
||||
J3DFifoLoadNrmMtxImm3x3(mtx, GX_PNMTX0);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -458,27 +458,27 @@ void J3DShapeMtxMultiConcatView::loadNrmMtx(int param_0, u16 param_1, MtxP param
|
||||
Mtx33 mtx1, mtx2;
|
||||
if (sCurrentScaleFlag[param_1] == 1) {
|
||||
if (sTexMtxLoadType == 0x2000) {
|
||||
J3DFifoLoadNrmMtxToTexMtx(param_2, param_0 * 3 + 0x1e);
|
||||
J3DFifoLoadNrmMtxToTexMtx(param_2, param_0 * 3 + GX_TEXMTX0);
|
||||
}
|
||||
if (!sNBTFlag) {
|
||||
J3DFifoLoadNrmMtxImm(param_2, param_0 * 3);
|
||||
J3DFifoLoadNrmMtxImm(param_2, param_0 * 3 + GX_PNMTX0);
|
||||
} else {
|
||||
BE(Vec)* nbt_scale = j3dSys.getNBTScale();
|
||||
J3DPSMtx33CopyFrom34(param_2, mtx1);
|
||||
J3DScaleNrmMtx33(mtx1, *nbt_scale);
|
||||
J3DFifoLoadNrmMtxImm3x3(mtx1, 0);
|
||||
J3DFifoLoadNrmMtxImm3x3(mtx1, GX_PNMTX0);
|
||||
}
|
||||
} else {
|
||||
J3DPSCalcInverseTranspose(param_2, mtx2);
|
||||
if (sTexMtxLoadType == 0x2000) {
|
||||
J3DFifoLoadNrmMtxToTexMtx3x3(mtx2, param_0 * 3 + 0x1e);
|
||||
J3DFifoLoadNrmMtxToTexMtx3x3(mtx2, param_0 * 3 + GX_TEXMTX0);
|
||||
}
|
||||
if (!sNBTFlag) {
|
||||
J3DFifoLoadNrmMtxImm3x3(mtx2, param_0 * 3);
|
||||
J3DFifoLoadNrmMtxImm3x3(mtx2, param_0 * 3 + GX_PNMTX0);
|
||||
} else {
|
||||
BE(Vec)* nbt_scale = j3dSys.getNBTScale();
|
||||
J3DScaleNrmMtx33(mtx2, *nbt_scale);
|
||||
J3DFifoLoadNrmMtxImm3x3(mtx2, param_0 * 3);
|
||||
J3DFifoLoadNrmMtxImm3x3(mtx2, param_0 * 3 + GX_PNMTX0);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -494,7 +494,7 @@ void J3DShapeMtxBBoardConcatView::load() const {
|
||||
}
|
||||
|
||||
J3DCalcBBoardMtx(mtx);
|
||||
J3DFifoLoadPosMtxImm(mtx, 0);
|
||||
J3DFifoLoadPosMtxImm(mtx, GX_PNMTX0);
|
||||
|
||||
mtx[0][0] = 1.0f / mtx[0][0];
|
||||
mtx[1][1] = 1.0f / mtx[1][1];
|
||||
@@ -505,11 +505,11 @@ void J3DShapeMtxBBoardConcatView::load() const {
|
||||
|
||||
|
||||
if (!sNBTFlag) {
|
||||
J3DFifoLoadNrmMtxImm(mtx, 0);
|
||||
J3DFifoLoadNrmMtxImm(mtx, GX_PNMTX0);
|
||||
} else {
|
||||
BE(Vec)* nbt_scale = j3dSys.getNBTScale();
|
||||
J3DScaleNrmMtx(mtx, *nbt_scale);
|
||||
J3DFifoLoadNrmMtxImm(mtx, 0);
|
||||
J3DFifoLoadNrmMtxImm(mtx, GX_PNMTX0);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -525,24 +525,24 @@ void J3DShapeMtxYBBoardConcatView::load() const {
|
||||
}
|
||||
|
||||
J3DCalcYBBoardMtx(mtx1);
|
||||
J3DFifoLoadPosMtxImm(mtx1, 0);
|
||||
J3DFifoLoadPosMtxImm(mtx1, GX_PNMTX0);
|
||||
|
||||
if (sCurrentScaleFlag[mUseMtxIndex] == 1) {
|
||||
if (!sNBTFlag) {
|
||||
J3DFifoLoadNrmMtxImm(mtx1, 0);
|
||||
J3DFifoLoadNrmMtxImm(mtx1, GX_PNMTX0);
|
||||
} else {
|
||||
BE(Vec)* nbt_scale = j3dSys.getNBTScale();
|
||||
J3DScaleNrmMtx(mtx1, *nbt_scale);
|
||||
J3DFifoLoadNrmMtxImm(mtx1, 0);
|
||||
J3DFifoLoadNrmMtxImm(mtx1, GX_PNMTX0);
|
||||
}
|
||||
} else {
|
||||
J3DPSCalcInverseTranspose(mtx1, mtx2);
|
||||
if (!sNBTFlag) {
|
||||
J3DFifoLoadNrmMtxImm3x3(mtx2, 0);
|
||||
J3DFifoLoadNrmMtxImm3x3(mtx2, GX_PNMTX0);
|
||||
} else {
|
||||
BE(Vec)* nbt_scale = j3dSys.getNBTScale();
|
||||
J3DScaleNrmMtx33(mtx2, *nbt_scale);
|
||||
J3DFifoLoadNrmMtxImm3x3(mtx2, 0);
|
||||
J3DFifoLoadNrmMtxImm3x3(mtx2, GX_PNMTX0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+47
-45
@@ -2276,45 +2276,48 @@ int mDoExt_3Dline_c::init(u16 param_0, int param_1, BOOL param_2) {
|
||||
|
||||
int sp20 = param_0 * 2;
|
||||
|
||||
field_0x8 = new cXyz[sp20];
|
||||
field_0x8[0] = new cXyz[sp20];
|
||||
if (field_0x8 == NULL) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
field_0xc = new cXyz[sp20];
|
||||
if (field_0xc == NULL) {
|
||||
field_0x8[1] = new cXyz[sp20];
|
||||
if (field_0x8[1] == NULL) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
field_0x10 = new mDoExt_3Dline_field_0x10_c[sp20];
|
||||
field_0x10[0] = new mDoExt_3Dline_field_0x10_c[sp20];
|
||||
if (field_0x10 == NULL) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
field_0x14 = new mDoExt_3Dline_field_0x10_c[sp20];
|
||||
if (field_0x14 == NULL) {
|
||||
field_0x10[1] = new mDoExt_3Dline_field_0x10_c[sp20];
|
||||
if (field_0x10[1] == NULL) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (param_2) {
|
||||
field_0x18 = new mDoExt_3Dline_field_0x18_c[sp20];
|
||||
if (field_0x18 == NULL) {
|
||||
field_0x18[0] = new cXy[sp20];
|
||||
if (field_0x18[0] == NULL) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
field_0x1c = new mDoExt_3Dline_field_0x18_c[sp20];
|
||||
if (field_0x1c == NULL) {
|
||||
field_0x18[1] = new cXy[sp20];
|
||||
if (field_0x18[1] == NULL) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
mDoExt_3Dline_field_0x18_c* var_r28 = field_0x18;
|
||||
mDoExt_3Dline_field_0x18_c* var_r27 = field_0x1c;
|
||||
cXy* tex0 = field_0x18[0];
|
||||
cXy* tex1 = field_0x18[1];
|
||||
for (s32 i = 0; i < param_0; i++) {
|
||||
var_r28++->field_0x0 = 0.0f;
|
||||
var_r27++->field_0x0 = 0.0f;
|
||||
tex0[0].x = 0.0f;
|
||||
tex1[0].x = 0.0f;
|
||||
|
||||
var_r28++->field_0x0 = 1.0f;
|
||||
var_r27++->field_0x0 = 1.0f;
|
||||
tex0[1].x = 1.0f;
|
||||
tex1[1].x = 1.0f;
|
||||
|
||||
tex0 += 2;
|
||||
tex1 += 2;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2379,8 +2382,8 @@ void mDoExt_3DlineMat0_c::draw() {
|
||||
int var_r26 = (field_0x14 << 1) & 0xFFFF;
|
||||
|
||||
for (int i = 0; i < field_0x10; i++) {
|
||||
GXSetArray(GX_VA_POS, ((mDoExt_3Dline_c*)((intptr_t)var_r28 + field_0x16 * 4))->field_0x8, sizeof(cXyz));
|
||||
GXSetArray(GX_VA_NRM, ((mDoExt_3Dline_c*)((intptr_t)var_r28 + field_0x16 * 4))->field_0x10, 3);
|
||||
GXSetArray(GX_VA_POS, field_0x18->field_0x8[field_0x16], sizeof(cXyz));
|
||||
GXSetArray(GX_VA_NRM, field_0x18->field_0x10[field_0x16], 3);
|
||||
|
||||
GXBegin(GX_TRIANGLESTRIP, GX_VTXFMT0, var_r26);
|
||||
for (u16 j = 0; j < (u16)var_r26; j++) {
|
||||
@@ -2435,9 +2438,9 @@ void mDoExt_3DlineMat0_c::update(int param_0, f32 param_1, GXColor& param_2, u16
|
||||
for (s32 sp_14 = 0; sp_14 < field_0x10; sp_14++) {
|
||||
local_r27 = sp_28->field_0x0;
|
||||
|
||||
sp_1c = ((mDoExt_3Dline_c*)((intptr_t)sp_28 + (field_0x16 << 2)))->field_0x8;
|
||||
sp_1c = sp_28->field_0x8[field_0x16];
|
||||
local_r26 = sp_1c;
|
||||
sp_18 = ((mDoExt_3Dline_c*)((intptr_t)sp_28 + (field_0x16 << 2)))->field_0x10;
|
||||
sp_18 = sp_28->field_0x10[field_0x16];
|
||||
local_r30 = sp_18;
|
||||
|
||||
local_r29 = local_r30 + 1;
|
||||
@@ -2556,9 +2559,9 @@ void mDoExt_3DlineMat0_c::update(int param_0, GXColor& param_2, dKy_tevstr_c* pa
|
||||
|
||||
JUT_ASSERT(5445, size_p != NULL);
|
||||
|
||||
sp_20 = ((mDoExt_3Dline_c*)((intptr_t)sp_30 + (field_0x16 << 2)))->field_0x8;
|
||||
sp_20 = sp_30->field_0x8[field_0x16];
|
||||
sp_24 = sp_20;
|
||||
sp_1c = ((mDoExt_3Dline_c*)((intptr_t)sp_30 + (field_0x16 << 2)))->field_0x10;
|
||||
sp_1c = sp_30->field_0x10[field_0x16];
|
||||
local_r30 = sp_1c;
|
||||
|
||||
local_r29 = local_r30 + 1;
|
||||
@@ -2749,29 +2752,28 @@ void mDoExt_3DlineMat1_c::update(int param_0, f32 param_1, _GXColor& param_2, u1
|
||||
mDoExt_3Dline_field_0x10_c* local_r28;
|
||||
mDoExt_3Dline_field_0x10_c* sp_20;
|
||||
|
||||
mDoExt_3Dline_field_0x18_c* sp_1c;
|
||||
|
||||
mDoExt_3Dline_field_0x18_c* sp_18;
|
||||
cXy* sp_1c;
|
||||
cXy* sp_18;
|
||||
|
||||
f32 local_f29;
|
||||
f32 local_f31 = 0.0f;
|
||||
|
||||
for (s32 sp_14 = 0; sp_14 < mNumLines; sp_14++) {
|
||||
local_r27 = sp_38[0].field_0x0;
|
||||
sp_24 = ((mDoExt_3Dline_c*)((intptr_t)sp_38 + (mIsDrawn << 2)))->field_0x8;
|
||||
sp_24 = sp_38->field_0x8[mIsDrawn];
|
||||
sp_28 = sp_24;
|
||||
|
||||
sp_20 = ((mDoExt_3Dline_c*)((intptr_t)sp_38 + (mIsDrawn << 2)))->field_0x10;
|
||||
sp_20 = sp_38->field_0x10[mIsDrawn];
|
||||
local_r30 = sp_20;
|
||||
local_r28 = local_r30 + 1;
|
||||
|
||||
sp_18 = ((mDoExt_3Dline_c*)((intptr_t)sp_38 + (mIsDrawn << 2)))->field_0x18;
|
||||
sp_18 = sp_38->field_0x18[mIsDrawn];
|
||||
sp_1c = sp_18;
|
||||
|
||||
local_f29 = param_1;
|
||||
|
||||
sp_1c++->field_0x4 = local_f31;
|
||||
sp_1c++->field_0x4 = local_f31;
|
||||
sp_1c++->y = local_f31;
|
||||
sp_1c++->y = local_f31;
|
||||
|
||||
sp_130 = local_r27[1] - local_r27[0];
|
||||
f32 local_f30 = sp_130.abs();
|
||||
@@ -2805,8 +2807,8 @@ void mDoExt_3DlineMat1_c::update(int param_0, f32 param_1, _GXColor& param_2, u1
|
||||
local_f29 -= local_f27;
|
||||
}
|
||||
|
||||
sp_1c++->field_0x4 = local_f31;
|
||||
sp_1c++->field_0x4 = local_f31;
|
||||
sp_1c++->y = local_f31;
|
||||
sp_1c++->y = local_f31;
|
||||
|
||||
sp_130 = local_r27[1] - local_r27[0];
|
||||
local_f30 = sp_130.abs();
|
||||
@@ -2842,8 +2844,8 @@ void mDoExt_3DlineMat1_c::update(int param_0, f32 param_1, _GXColor& param_2, u1
|
||||
sp_118 = local_r27[0] - sp_130;
|
||||
}
|
||||
|
||||
sp_1c++->field_0x4 = local_f31;
|
||||
sp_1c->field_0x4 = local_f31;
|
||||
sp_1c++->y = local_f31;
|
||||
sp_1c->y = local_f31;
|
||||
|
||||
local_r28 += 1;
|
||||
local_r28->x = local_r30->x;
|
||||
@@ -2914,23 +2916,23 @@ void mDoExt_3DlineMat1_c::update(int param_0, _GXColor& param_2, dKy_tevstr_c* p
|
||||
mDoExt_3Dline_field_0x10_c* local_r30;
|
||||
mDoExt_3Dline_field_0x10_c* local_r28;
|
||||
mDoExt_3Dline_field_0x10_c* sp_20;
|
||||
mDoExt_3Dline_field_0x18_c* sp_1c;
|
||||
mDoExt_3Dline_field_0x18_c* sp_18;
|
||||
cXy* sp_1c;
|
||||
cXy* sp_18;
|
||||
f32 local_f31 = 0.0f;
|
||||
f32* size_p;
|
||||
for (s32 sp_14 = 0; sp_14 < mNumLines; sp_14++) {
|
||||
local_r27 = sp_38[0].field_0x0;
|
||||
size_p = sp_38->field_0x4;
|
||||
JUT_ASSERT(5875, size_p != NULL);
|
||||
sp_24 = ((mDoExt_3Dline_c*)((intptr_t)sp_38 + (mIsDrawn << 2)))->field_0x8;
|
||||
sp_24 = sp_38->field_0x8[mIsDrawn];
|
||||
sp_28 = sp_24;
|
||||
sp_20 = ((mDoExt_3Dline_c*)((intptr_t)sp_38 + (mIsDrawn << 2)))->field_0x10;
|
||||
sp_20 = sp_38->field_0x10[mIsDrawn];
|
||||
local_r30 = sp_20;
|
||||
local_r28 = local_r30 + 1;
|
||||
sp_18 = ((mDoExt_3Dline_c*)((intptr_t)sp_38 + (mIsDrawn << 2)))->field_0x18;
|
||||
sp_18 = sp_38->field_0x18[mIsDrawn];
|
||||
sp_1c = sp_18;
|
||||
sp_1c++->field_0x4 = local_f31;
|
||||
sp_1c++->field_0x4 = local_f31;
|
||||
sp_1c++->y = local_f31;
|
||||
sp_1c++->y = local_f31;
|
||||
sp_130 = local_r27[1] - local_r27[0];
|
||||
local_f30 = sp_130.abs();
|
||||
local_f31 += local_f30 * 0.1f;
|
||||
@@ -2951,8 +2953,8 @@ void mDoExt_3DlineMat1_c::update(int param_0, _GXColor& param_2, dKy_tevstr_c* p
|
||||
sp_124 = local_r27[0] + sp_130;
|
||||
sp_118 = local_r27[0] - sp_130;
|
||||
for (s32 sp_10 = field_0x34 - 2; sp_10 > 0; sp_10--) {
|
||||
sp_1c++->field_0x4 = local_f31;
|
||||
sp_1c++->field_0x4 = local_f31;
|
||||
sp_1c++->y = local_f31;
|
||||
sp_1c++->y = local_f31;
|
||||
sp_130 = local_r27[1] - local_r27[0];
|
||||
local_f30 = sp_130.abs();
|
||||
local_f31 += local_f30 * 0.1f;
|
||||
@@ -2978,8 +2980,8 @@ void mDoExt_3DlineMat1_c::update(int param_0, _GXColor& param_2, dKy_tevstr_c* p
|
||||
sp_118 = local_r27[0] - sp_130;
|
||||
}
|
||||
|
||||
sp_1c++->field_0x4 = local_f31;
|
||||
sp_1c->field_0x4 = local_f31;
|
||||
sp_1c++->y = local_f31;
|
||||
sp_1c->y = local_f31;
|
||||
|
||||
local_r28 += 1;
|
||||
local_r28->x = local_r30->x;
|
||||
|
||||
Reference in New Issue
Block a user