Get initial JParticle import to build, label symbols.txt

This commit is contained in:
robojumper
2025-04-27 07:49:37 +02:00
parent c1a0264e6a
commit 6468fc663c
60 changed files with 411 additions and 333 deletions
+8 -8
View File
@@ -3,14 +3,14 @@
// Translation Unit: JPABaseShape
//
#include "egg/core/eggHeap.h"
#include "JSystem/JParticle/JPABaseShape.h"
#include "JSystem/JKernel/JKRHeap.h"
#include "JSystem/JParticle/JPAParticle.h"
#include "JSystem/JParticle/JPAEmitter.h"
#include "JSystem/JParticle/JPAResourceManager.h"
#include "JSystem/JMath/JMATrigonometric.h"
#include "dolphin/mtx.h"
#include "dolphin/gx.h"
#include "rvl/MTX.h"
#include "rvl/GX.h"
/* 80276A90-80276ACC 2713D0 003C+00 0/0 1/1 0/0 .text JPASetPointSize__FP18JPAEmitterWorkData */
void JPASetPointSize(JPAEmitterWorkData* work) {
@@ -1266,10 +1266,10 @@ void JPADrawParticleCallBack(JPAEmitterWorkData* work, JPABaseParticle* ptcl) {
}
/* 8027A454-8027A6DC 274D94 0288+00 1/1 0/0 0/0 .text
* makeColorTable__FPP8_GXColorPC16JPAClrAnmKeyDataUcsP7JKRHeap */
* makeColorTable__FPP8_GXColorPC16JPAClrAnmKeyDataUcsP7EGG::Heap */
static void makeColorTable(GXColor** o_color_table, JPAClrAnmKeyData const* i_data, u8 param_2,
s16 i_size, JKRHeap* i_heap) {
GXColor* color_table = (GXColor*)JKRAllocFromHeap(i_heap, (i_size + 1) * 4, 4);
s16 i_size, EGG::Heap* i_heap) {
GXColor* color_table = (GXColor*)i_heap->alloc((i_size + 1) * 4, 4);
f32 r_step, g_step, b_step, a_step;
r_step = g_step = b_step = a_step = 0.0f;
f32 r = i_data[0].color.r;
@@ -1308,9 +1308,9 @@ static void makeColorTable(GXColor** o_color_table, JPAClrAnmKeyData const* i_da
*o_color_table = color_table;
}
/* 8027A6DC-8027A7E8 27501C 010C+00 0/0 1/1 0/0 .text __ct__12JPABaseShapeFPCUcP7JKRHeap
/* 8027A6DC-8027A7E8 27501C 010C+00 0/0 1/1 0/0 .text __ct__12JPABaseShapeFPCUcP7EGG::Heap
*/
JPABaseShape::JPABaseShape(u8 const* pData, JKRHeap* pHeap) {
JPABaseShape::JPABaseShape(u8 const* pData, EGG::Heap* pHeap) {
mpData = (const JPABaseShapeData*)pData;
if (isTexCrdAnm()) {
+2 -2
View File
@@ -6,8 +6,8 @@
#include "JSystem/JParticle/JPAChildShape.h"
#include "JSystem/JParticle/JPAParticle.h"
#include "JSystem/JParticle/JPAEmitter.h"
#include "dolphin/gx.h"
#include "dolphin/os.h"
#include "rvl/GX.h"
#include "rvl/OS.h"
/* 8027AEBC-8027AFDC 2757FC 0120+00 0/0 1/1 0/0 .text JPARegistChildPrmEnv__FP18JPAEmitterWorkData
*/
-1
View File
@@ -8,7 +8,6 @@
#include "JSystem/JParticle/JPAParticle.h"
#include "JSystem/JParticle/JPAResourceManager.h"
#include "JSystem/JParticle/JPABaseShape.h"
#include "dolphin/types.h"
//
// Types:
+4 -4
View File
@@ -3,17 +3,17 @@
// Translation Unit: JPAEmitterManager
//
#include "egg/core/eggHeap.h"
#include "JSystem/JParticle/JPAEmitterManager.h"
#include "JSystem/JKernel/JKRHeap.h"
#include "JSystem/JParticle/JPAEmitter.h"
#include "JSystem/JParticle/JPAParticle.h"
#include "JSystem/JParticle/JPAResourceManager.h"
#include "JSystem/JUtility/JUTAssert.h"
#include "dolphin/gx.h"
#include "rvl/GX.h"
/* 8027DCA0-8027DEBC 2785E0 021C+00 0/0 1/1 0/0 .text __ct__17JPAEmitterManagerFUlUlP7JKRHeapUcUc
/* 8027DCA0-8027DEBC 2785E0 021C+00 0/0 1/1 0/0 .text __ct__17JPAEmitterManagerFUlUlP7EGG::HeapUcUc
*/
JPAEmitterManager::JPAEmitterManager(u32 i_ptclNum, u32 i_emtrNum, JKRHeap* pHeap, u8 i_gidMax,
JPAEmitterManager::JPAEmitterManager(u32 i_ptclNum, u32 i_emtrNum, EGG::Heap* pHeap, u8 i_gidMax,
u8 i_ridMax) {
emtrNum = i_emtrNum;
ptclNum = i_ptclNum;
+2 -2
View File
@@ -6,7 +6,7 @@
#include "JSystem/JParticle/JPAExTexShape.h"
#include "JSystem/JParticle/JPAResourceManager.h"
#include "JSystem/JParticle/JPAEmitter.h"
#include "dolphin/gx.h"
#include "rvl/GX.h"
/* 8027B040-8027B13C 275980 00FC+00 0/0 1/1 0/0 .text JPALoadExTex__FP18JPAEmitterWorkData */
void JPALoadExTex(JPAEmitterWorkData* work) {
@@ -32,4 +32,4 @@ void JPALoadExTex(JPAEmitterWorkData* work) {
/* 8027B13C-8027B144 -00001 0008+00 0/0 0/0 0/0 .text __ct__13JPAExTexShapeFPCUc */
JPAExTexShape::JPAExTexShape(u8 const* data) {
mpData = (const JPAExTexShapeData*)data;
}
}
+1 -1
View File
@@ -7,7 +7,7 @@
#include "JSystem/JMath/JMATrigonometric.h"
#include "JSystem/JParticle/JPAParticle.h"
#include "JSystem/JParticle/JPAEmitter.h"
#include "dolphin/os.h"
#include "rvl/OS.h"
/* 8027A918-8027A990 275258 0078+00 0/0 1/1 0/0 .text
* JPACalcScaleX__FP18JPAEmitterWorkDataP15JPABaseParticle */
+5 -5
View File
@@ -3,8 +3,8 @@
// Translation Unit: JPAFieldBlock
//
#include "egg/core/eggHeap.h"
#include "JSystem/JParticle/JPAFieldBlock.h"
#include "JSystem/JKernel/JKRHeap.h"
#include "JSystem/JParticle/JPAEmitter.h"
#include "JSystem/JParticle/JPAParticle.h"
@@ -237,15 +237,15 @@ void JPAFieldSpin::calc(JPAEmitterWorkData* work, JPAFieldBlock* block, JPABaseP
calcAffect(block, ptcl);
}
/* 8027D088-8027D0C0 2779C8 0038+00 0/0 1/1 0/0 .text __ct__13JPAFieldBlockFPCUcP7JKRHeap
/* 8027D088-8027D0C0 2779C8 0038+00 0/0 1/1 0/0 .text __ct__13JPAFieldBlockFPCUcP7EGG::Heap
*/
JPAFieldBlock::JPAFieldBlock(u8 const* data, JKRHeap* heap)
JPAFieldBlock::JPAFieldBlock(u8 const* data, EGG::Heap* heap)
: mpData((const JPAFieldBlockData*)data) {
init(heap);
}
/* 8027D0C0-8027D3AC 277A00 02EC+00 2/1 0/0 0/0 .text init__13JPAFieldBlockFP7JKRHeap */
void JPAFieldBlock::init(JKRHeap* heap) {
/* 8027D0C0-8027D3AC 277A00 02EC+00 2/1 0/0 0/0 .text init__13JPAFieldBlockFP7EGG::Heap */
void JPAFieldBlock::init(EGG::Heap* heap) {
mFadeInRate = getFadeInTime() - getEnTime();
if (mFadeInRate == 0.0f) {
mFadeInRate = 1.0f;
-28
View File
@@ -5,34 +5,6 @@
#include "JSystem/JParticle/JPAMath.h"
#include "JSystem/JMath/JMATrigonometric.h"
#include "JSystem/J2DGraph/J2DAnimation.h"
//
// Types:
//
//
// Forward References:
//
extern "C" void func_80280588();
extern "C" void JPAGetYZRotateMtx__FssPA4_f();
extern "C" void JPAGetXYZRotateMtx__FsssPA4_f();
extern "C" void func_802807E0();
extern "C" void func_80280808();
extern "C" void JPACalcKeyAnmValue__FfUsPCf();
//
// External References:
//
extern "C" void _savegpr_28();
extern "C" void _restgpr_28();
extern "C" u8 sincosTable___5JMath[65536];
//
// Declarations:
//
/* ############################################################################################## */
// Probably some local function needed to change float literal order
+11 -12
View File
@@ -3,8 +3,8 @@
// Translation Unit: JPAResource
//
#include "egg/core/eggHeap.h"
#include "JSystem/JParticle/JPAResource.h"
#include "JSystem/JKernel/JKRHeap.h"
#include "JSystem/JParticle/JPABaseShape.h"
#include "JSystem/JParticle/JPAChildShape.h"
#include "JSystem/JParticle/JPAEmitter.h"
@@ -14,8 +14,7 @@
#include "JSystem/JParticle/JPAKeyBlock.h"
#include "JSystem/JParticle/JPAParticle.h"
#include "JSystem/JParticle/JPAResourceManager.h"
#include "dolphin/gx.h"
#include "global.h"
#include "rvl/GX.h"
/* 80274010-80274080 26E950 0070+00 0/0 1/1 0/0 .text __ct__11JPAResourceFv */
JPAResource::JPAResource() {
@@ -78,8 +77,8 @@ static u8 jpa_crd[32] ALIGN_DECL(32) = {
0x00, 0x00, 0x01, 0x00, 0x01, 0x02, 0x00, 0x02, 0x00, 0x00, 0x02, 0x00, 0x02, 0x02, 0x00, 0x02,
};
/* 80274080-802755E8 26E9C0 1568+00 2/0 1/1 0/0 .text init__11JPAResourceFP7JKRHeap */
void JPAResource::init(JKRHeap* heap) {
/* 80274080-802755E8 26E9C0 1568+00 2/0 1/1 0/0 .text init__11JPAResourceFP7EGG::Heap */
void JPAResource::init(EGG::Heap* heap) {
BOOL is_glbl_clr_anm = mpBaseShape->isGlblClrAnm();
BOOL is_glbl_tex_anm = mpBaseShape->isGlblTexAnm();
BOOL is_prm_anm = mpBaseShape->isPrmAnm();
@@ -123,7 +122,7 @@ void JPAResource::init(JKRHeap* heap) {
if (mpCalcEmitterFuncListNum != 0) {
mpCalcEmitterFuncList =
(EmitterFunc*)JKRAllocFromHeap(heap, mpCalcEmitterFuncListNum * 4, 4);
(EmitterFunc*)heap->alloc(mpCalcEmitterFuncListNum * 4, 4);
}
int func_no = 0;
@@ -220,7 +219,7 @@ void JPAResource::init(JKRHeap* heap) {
if (mpCalcParticleFuncListNum != 0) {
mpCalcParticleFuncList =
(ParticleFunc*)JKRAllocFromHeap(heap, mpCalcParticleFuncListNum * 4, 4);
(ParticleFunc*)heap->alloc(mpCalcParticleFuncListNum * 4, 4);
}
func_no = 0;
@@ -339,7 +338,7 @@ void JPAResource::init(JKRHeap* heap) {
if (mpCalcParticleChildFuncListNum != 0) {
mpCalcParticleChildFuncList =
(ParticleFunc*)JKRAllocFromHeap(heap, mpCalcParticleChildFuncListNum * 4, 4);
(ParticleFunc*)heap->alloc(mpCalcParticleChildFuncListNum * 4, 4);
}
func_no = 0;
@@ -383,7 +382,7 @@ void JPAResource::init(JKRHeap* heap) {
if (mpDrawEmitterFuncListNum != 0) {
mpDrawEmitterFuncList =
(EmitterFunc*)JKRAllocFromHeap(heap, mpDrawEmitterFuncListNum * 4, 4);
(EmitterFunc*)heap->alloc(mpDrawEmitterFuncListNum * 4, 4);
}
func_no = 0;
@@ -481,7 +480,7 @@ void JPAResource::init(JKRHeap* heap) {
if (mpDrawEmitterChildFuncListNum != 0) {
mpDrawEmitterChildFuncList =
(EmitterFunc*)JKRAllocFromHeap(heap, mpDrawEmitterChildFuncListNum * 4, 4);
(EmitterFunc*)heap->alloc(mpDrawEmitterChildFuncListNum * 4, 4);
}
func_no = 0;
@@ -530,7 +529,7 @@ void JPAResource::init(JKRHeap* heap) {
if (mpDrawParticleFuncListNum != 0) {
mpDrawParticleFuncList =
(ParticleFunc*)JKRAllocFromHeap(heap, mpDrawParticleFuncListNum * 4, 4);
(ParticleFunc*)heap->alloc(mpDrawParticleFuncListNum * 4, 4);
}
func_no = 0;
@@ -634,7 +633,7 @@ void JPAResource::init(JKRHeap* heap) {
if (mpDrawParticleChildFuncListNum != 0) {
mpDrawParticleChildFuncList =
(ParticleFunc*)JKRAllocFromHeap(heap, mpDrawParticleChildFuncListNum * 4, 4);
(ParticleFunc*)heap->alloc(mpDrawParticleChildFuncListNum * 4, 4);
}
func_no = 0;
+2 -2
View File
@@ -3,8 +3,8 @@
// Translation Unit: JPAResourceLoader
//
#include "egg/core/eggHeap.h"
#include "JSystem/JParticle/JPAResourceLoader.h"
#include "JSystem/JKernel/JKRHeap.h"
#include "JSystem/JParticle/JPABaseShape.h"
#include "JSystem/JParticle/JPAChildShape.h"
#include "JSystem/JParticle/JPADynamicsBlock.h"
@@ -34,7 +34,7 @@ struct JPAResourceHeader {
/* 8027D8E0-8027DCA0 278220 03C0+00 1/1 0/0 0/0 .text
* load_jpc__17JPAResourceLoaderFPCUcP18JPAResourceManager */
void JPAResourceLoader::load_jpc(u8 const* data, JPAResourceManager* mgr) {
JKRHeap* heap = mgr->mpHeap;
EGG::Heap* heap = mgr->mpHeap;
mgr->mResMax = *(u16*)(data + 8);
mgr->mTexMax = *(u16*)(data + 0xA);
mgr->mpResArr = new (heap, 0) JPAResource*[mgr->mResMax];
+3 -3
View File
@@ -12,8 +12,8 @@ struct JPAResourceLoader {
/* 8027D8A0 */ JPAResourceLoader(u8 const*, JPAResourceManager*);
};
/* 80273E10-80273E68 26E750 0058+00 0/0 2/2 0/0 .text __ct__18JPAResourceManagerFPCvP7JKRHeap */
JPAResourceManager::JPAResourceManager(void const* pData, JKRHeap* pHeap) {
/* 80273E10-80273E68 26E750 0058+00 0/0 2/2 0/0 .text __ct__18JPAResourceManagerFPCvP7EGG::Heap */
JPAResourceManager::JPAResourceManager(void const* pData, EGG::Heap* pHeap) {
mpResArr = NULL;
mpTexArr = NULL;
mResMax = 0;
@@ -81,4 +81,4 @@ u32 JPAResourceManager::getResUserWork(u16 usrIdx) const {
ret = res->getDyn()->getResUserWork();
return ret;
}
}
+1 -1
View File
@@ -159,4 +159,4 @@ JSUPtrLink* JSUPtrList::getNthLink(u32 index) const {
}
return node;
}
}
+3 -3
View File
@@ -334,7 +334,7 @@ void LightTexture::fn_804AC0E0(int i, const GXColor &color, bool b) {
mtx._13 = sDrawHeight - (h + sTexHeight);
GXLoadPosMtxImm(mtx, 0);
GXLoadTexMtxImm(sIdentityMtx, 0x1E, GX_MTX_2x4);
GXLoadTexMtxImm(sIdentityMtx, 0x1E, GX_MTX2x4);
GXColor c;
if ((field_0x36 & 1) != 0) {
@@ -474,7 +474,7 @@ void LightTexture::draw(int i) {
mtx._13 = sDrawHeight - (h + sTexHeight);
GXLoadPosMtxImm(mtx, 0);
GXLoadTexMtxImm(sIdentityMtx, 0x1E, GX_MTX_2x4);
GXLoadTexMtxImm(sIdentityMtx, 0x1E, GX_MTX2x4);
GXBegin(GX_QUADS, GX_VTXFMT0, 4);
GXPosition1x8(0);
@@ -520,7 +520,7 @@ void LightTexture::debugDraw(int i) {
mtx._13 = sDrawHeight - (u2 + sTexHeight);
GXLoadPosMtxImm(mtx, 0);
GXLoadTexMtxImm(sIdentityMtx, 0x1E, GX_MTX_2x4);
GXLoadTexMtxImm(sIdentityMtx, 0x1E, GX_MTX2x4);
GXBegin(GX_QUADS, GX_VTXFMT0, 4);
+1 -1
View File
@@ -77,7 +77,7 @@ void PostEffectBlur::drawInternal(u8 kernelIdx, u8 p2, f32 f1, f32 f2) {
// clang-format on
);
PSMTXConcat(m, mtx, m);
GXLoadTexMtxImm(m, texMtxId, GX_MTX_2x4);
GXLoadTexMtxImm(m, texMtxId, GX_MTX2x4);
unk_00_scale++;
}
+1 -1
View File
@@ -36,7 +36,7 @@ void PostEffectBlurGather::setMaterialInternal() {
} else {
loadTextureInternal();
}
GXLoadTexMtxImm(mtx, texMtxIdx, GX_MTX_2x4);
GXLoadTexMtxImm(mtx, texMtxIdx, GX_MTX2x4);
}
f32 v = field_0x30 * 255.0f;
+2 -2
View File
@@ -19,8 +19,8 @@ void PostEffectMask::setMaterialInternal() {
setMatColorChannel();
GXSetNumTexGens(2);
GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, GX_TEXMTX_IDENT, false, GX_DUALMTX_IDENT);
GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_TEX0, GX_TEXMTX_IDENT, false, GX_DUALMTX_IDENT);
GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, GX_IDENTITY, false, GX_DUALMTX_IDENT);
GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_TEX0, GX_IDENTITY, false, GX_DUALMTX_IDENT);
setMatInd();
GXSetTevSwapModeTable(GX_TEV_SWAP0, GX_CH_RED, GX_CH_GREEN, GX_CH_BLUE, GX_CH_ALPHA);
GXSetTevDirect(GX_TEVSTAGE0);
+2 -2
View File
@@ -118,10 +118,10 @@ void PostEffectMaskDOF::setMaterialInternal() {
setMatColorChannel();
GXSetNumTexGens(2);
GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, GX_TEXMTX0, false, GX_DUALMTX_IDENT);
GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_TEX1, GX_TEXMTX_IDENT, false, GX_DUALMTX_IDENT);
GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_TEX1, GX_IDENTITY, false, GX_DUALMTX_IDENT);
nw4r::math::MTX34 baseTexMtx;
getBaseTexMtx(&baseTexMtx);
GXLoadTexMtxImm(baseTexMtx, GX_TEXMTX0, GX_MTX_2x4);
GXLoadTexMtxImm(baseTexMtx, GX_TEXMTX0, GX_MTX2x4);
GXSetNumIndStages(1);
GXSetIndTexOrder(GX_INDTEXSTAGE0, GX_TEXCOORD0, mTex1.mTexMapID);
GXSetIndTexCoordScale(GX_INDTEXSTAGE0, GX_ITS_1, GX_ITS_1);
+1 -1
View File
@@ -20,7 +20,7 @@ void PostEffectSimple::setMaterialInternal() {
GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, 0x1e, 0, 0x7d);
nw4r::math::MTX34 mtx;
getBaseTexMtx(&mtx);
GXLoadTexMtxImm(mtx, 0x1e, GX_MTX_2x4);
GXLoadTexMtxImm(mtx, 0x1e, GX_MTX2x4);
setMatInd();
GXSetNumTevStages(1);
GXSetTevDirect(GX_TEVSTAGE0);
+1 -1
View File
@@ -94,7 +94,7 @@ void PostEffectUnk2::draw(f32 width, f32 height) {
mtx[1][3] = 0.f;
mtx[0][3] = 0.f;
GXLoadTexMtxImm(mtx, GXUtility::getTexMtxID(j), GX_MTX_2x4);
GXLoadTexMtxImm(mtx, GXUtility::getTexMtxID(j), GX_MTX2x4);
}
if (i == 1 && field_0x2C <= 1) {
GXSetBlendMode(GX_BM_LOGIC, GX_BL_ZERO, GX_BL_ZERO, GX_LO_OR);
+1 -1
View File
@@ -172,7 +172,7 @@ void StateGX::resetTexGen() {
GXSetNumTexGens(1);
for (u32 i = 0; i < 10; i++) {
GXLoadTexMtxImm(identity, i * 3 + 0x1E, GX_MTX_3x4);
GXLoadTexMtxImm(identity, i * 3 + 0x1E, GX_MTX3x4);
}
for (u32 i = 0; i < GX_MAX_TEXCOORD; i++) {
+1 -1
View File
@@ -109,7 +109,7 @@ void blineMat_c::setupGX(bool bTransparent) {
GXSetNumTevStages(1);
}
GXSetNumTexGens(1);
GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, GX_TEXMTX_IDENT, 0, GX_DUALMTX_IDENT);
GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, GX_IDENTITY, 0, GX_DUALMTX_IDENT);
GXSetNumIndStages(0);
GXSetTevDirect(GX_TEVSTAGE0);
GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR_NULL);
+2 -2
View File
@@ -271,7 +271,7 @@ static void drawSub2(void *data, u8 i) {
GXSetTexCoordGen2((GXTexCoordID)id, GX_TG_MTX2x4, GX_TG_TEX0, idx, FALSE, GX_DUALMTX_IDENT);
sTexMtx[0][3] = 0.01f * nw4r::math::CosIdx(ang);
sTexMtx[1][3] = 0.01f * nw4r::math::SinIdx(ang);
GXLoadTexMtxImm(sTexMtx, idx, GX_MTX_2x4);
GXLoadTexMtxImm(sTexMtx, idx, GX_MTX2x4);
}
GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR_NULL);
GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_TEXC, GX_CC_A0, GX_CC_ZERO);
@@ -596,7 +596,7 @@ void mShadowChild_c::draw() {
Mtx mtx;
C_MTXLightOrtho(mtx, field_0x13C, -field_0x13C, -field_0x13C, field_0x13C, 0.5f, -0.5f, 0.5f, 0.5f);
PSMTXConcat(mtx, mFrustum.mView.m, mtx);
GXLoadTexMtxImm(mtx, GX_TEXMTX0, GX_MTX_3x4);
GXLoadTexMtxImm(mtx, GX_TEXMTX0, GX_MTX3x4);
mShadow_c::GetInstance()->draw(mFrustum.mView, field_0x154);
GXSetTevSwapModeTable(GX_TEV_SWAP0, GX_CH_RED, GX_CH_GREEN, GX_CH_BLUE, GX_CH_ALPHA);
}
+3 -3
View File
@@ -729,7 +729,7 @@ public:
idArray[i] = GX_PNMTX0;
allIdent = false;
} else {
idArray[i] = GX_TEXMTX_IDENT;
idArray[i] = GX_IDENTITY;
}
}
@@ -1653,11 +1653,11 @@ void LoadResTexSrt(const ResTexSrt srt) {
sPostTexMtx.SetIdentity(i);
math::MTX34Identity(&identMtx);
GXLoadTexMtxImm(identMtx, i * 3 + GX_DUALMTX0, GX_MTX_3x4);
GXLoadTexMtxImm(identMtx, i * 3 + GX_DUALMTX0, GX_MTX3x4);
}
} else {
sPostTexMtx.ResetIdentity(i);
GXLoadTexMtxImm(mtx, i * 3 + GX_DUALMTX0, GX_MTX_3x4);
GXLoadTexMtxImm(mtx, i * 3 + GX_DUALMTX0, GX_MTX3x4);
}
} else {
+6 -6
View File
@@ -158,12 +158,12 @@ void GDSetIndTexMtx(u32 id, const math::MTX34 &rMtx) {
}
void GDResetCurrentMtx() {
u32 regA = GX_PNMTX0 << GX_CP_MATRIXINDEXA_POSNRM_SHIFT | GX_TEXMTX_IDENT << GX_CP_MATRIXINDEXA_TEX0_SHIFT |
GX_TEXMTX_IDENT << GX_CP_MATRIXINDEXA_TEX1_SHIFT | GX_TEXMTX_IDENT << GX_CP_MATRIXINDEXA_TEX2_SHIFT |
GX_TEXMTX_IDENT << GX_CP_MATRIXINDEXA_TEX3_SHIFT;
u32 regA = GX_PNMTX0 << GX_CP_MATRIXINDEXA_POSNRM_SHIFT | GX_IDENTITY << GX_CP_MATRIXINDEXA_TEX0_SHIFT |
GX_IDENTITY << GX_CP_MATRIXINDEXA_TEX1_SHIFT | GX_IDENTITY << GX_CP_MATRIXINDEXA_TEX2_SHIFT |
GX_IDENTITY << GX_CP_MATRIXINDEXA_TEX3_SHIFT;
u32 regB = GX_TEXMTX_IDENT << GX_CP_MATRIXINDEXB_TEX4_SHIFT | GX_TEXMTX_IDENT << GX_CP_MATRIXINDEXB_TEX5_SHIFT |
GX_TEXMTX_IDENT << GX_CP_MATRIXINDEXB_TEX6_SHIFT | GX_TEXMTX_IDENT << GX_CP_MATRIXINDEXB_TEX7_SHIFT;
u32 regB = GX_IDENTITY << GX_CP_MATRIXINDEXB_TEX4_SHIFT | GX_IDENTITY << GX_CP_MATRIXINDEXB_TEX5_SHIFT |
GX_IDENTITY << GX_CP_MATRIXINDEXB_TEX6_SHIFT | GX_IDENTITY << GX_CP_MATRIXINDEXB_TEX7_SHIFT;
LoadCPCmd(GX_CP_REG_MATRIXINDEXA, regA);
LoadCPCmd(GX_CP_REG_MATRIXINDEXB, regB);
@@ -204,7 +204,7 @@ void GDLoadTexMtxImm3x3(const math::MTX33 &rMtx, u32 id) {
mtx._22 = pMtx->_22;
mtx._23 = 0.0f;
GXLoadTexMtxImm(mtx, id, GX_MTX_3x4);
GXLoadTexMtxImm(mtx, id, GX_MTX3x4);
}
} // namespace fifo
+1 -1
View File
@@ -681,7 +681,7 @@ bool Material::SetupGX(bool bModVtxCol, u8 alpha) {
if (bUseTexMtx[i]) {
math::MTX34 texMtx;
CalcTextureMtx(&texMtx, texSRTs[i]);
GXLoadTexMtxImm(texMtx, GetTexMtx(i), GX_MTX_2x4);
GXLoadTexMtxImm(texMtx, GetTexMtx(i), GX_MTX2x4);
}
}
}
+1 -1
View File
@@ -14,7 +14,7 @@ static void SetupGXCommon() {
GXSetChanCtrl(GX_COLOR0A0, FALSE, GX_SRC_REG, GX_SRC_VTX, GX_LIGHT_NULL, GX_DF_NONE, GX_AF_NONE);
GXSetChanCtrl(GX_COLOR1A1, FALSE, GX_SRC_REG, GX_SRC_REG, GX_LIGHT_NULL, GX_DF_NONE, GX_AF_NONE);
GXSetNumTexGens(1);
GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, GX_TEXMTX_IDENT, FALSE, GX_DUALMTX_IDENT);
GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, GX_IDENTITY, FALSE, GX_DUALMTX_IDENT);
GXSetNumIndStages(0);
GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_SET);
}