setup dolphin VEC/MTX function defines (#1903)

* setup VEC function defines

* setup MTX function defines
This commit is contained in:
TakaRikka
2023-09-02 06:38:08 -07:00
committed by GitHub
parent f90d73eeeb
commit 2a67e0a8ba
102 changed files with 479 additions and 404 deletions
+4 -4
View File
@@ -3296,10 +3296,10 @@ void daAlink_c::setMatrixWorldAxisRot(MtxP param_0, s16 param_1, s16 param_2, s1
mDoMtx_stack_c::YrotM(-shape_angle.y);
concatMagneBootInvMtx();
mDoMtx_stack_c::transM(-tmp.x, -tmp.y, -tmp.z);
PSMTXConcat(mDoMtx_stack_c::get(), param_0, mDoMtx_stack_c::get());
PSMTXCopy(mDoMtx_stack_c::get(), param_0);
MTXConcat(mDoMtx_stack_c::get(), param_0, mDoMtx_stack_c::get());
MTXCopy(mDoMtx_stack_c::get(), param_0);
if (param_4 != 0) {
PSMTXCopy(mDoMtx_stack_c::get(), J3DSys::mCurrentMtx);
MTXCopy(mDoMtx_stack_c::get(), J3DSys::mCurrentMtx);
}
}
@@ -3335,7 +3335,7 @@ asm void daAlink_c::changeBlendRate(int param_0) {
/* 8009EB18-8009EB58 099458 0040+00 1/1 0/0 0/0 .text resetRootMtx__9daAlink_cFv */
void daAlink_c::resetRootMtx() {
PSMTXCopy(mRootMtx, J3DSys::mCurrentMtx);
MTXCopy(mRootMtx, J3DSys::mCurrentMtx);
field_0x2f90 = 0;
}
+1 -1
View File
@@ -3440,7 +3440,7 @@ MtxP J3DModel::getAnmMtx(int i) {
/* 800CFFF4-800D0020 0CA934 002C+00 1/1 0/0 0/0 .text setBaseTRMtx__8J3DModelFPA4_f */
void J3DModel::setBaseTRMtx(MtxP matrix) {
PSMTXCopy(matrix, mBaseTransformMtx);
MTXCopy(matrix, mBaseTransformMtx);
}
/* 800D0020-800D0048 0CA960 0028+00 1/1 0/0 0/0 .text checkFmChainGrabAnime__9daAlink_cCFv */
+3 -3
View File
@@ -1040,7 +1040,7 @@ int daNpcT_Path_c::chkPassed1(cXyz param_0, int param_1) {
s16 angle = cLib_targetAngleY(&l_pos1,&l_pos2);
mDoMtx_YrotS((MtxP)&mDoMtx_stack_c::now,angle);
PSMTXMultVec((MtxP)&mDoMtx_stack_c::now,&l_vec,&l_vec);
MTXMultVec((MtxP)&mDoMtx_stack_c::now,&l_vec,&l_vec);
l_pos4 = (cXyz)l_vec + l_pos2;
l_pos3 = l_pos4;
}
@@ -1052,7 +1052,7 @@ int daNpcT_Path_c::chkPassed1(cXyz param_0, int param_1) {
s16 angle = cLib_targetAngleY(&l_pos3,&l_pos2);
mDoMtx_YrotS((MtxP)&mDoMtx_stack_c::now,angle);
PSMTXMultVec((MtxP)&mDoMtx_stack_c::now,&l_vec,&l_vec);
MTXMultVec((MtxP)&mDoMtx_stack_c::now,&l_vec,&l_vec);
l_pos5 = (cXyz)l_vec + l_pos2;
l_pos1 = l_pos5;
}
@@ -5705,7 +5705,7 @@ BOOL daNpcF_chkPointInArea(cXyz param_0, cXyz param_1, cXyz param_2, s16 param_3
mDoMtx_YrotS((MtxP)&mDoMtx_stack_c::now,-param_3);
mDoMtx_stack_c::transM(-param_1.x,-param_1.y,-param_1.z);
PSMTXMultVec((MtxP)&mDoMtx_stack_c::now,(Vec*)&param_0,&l_vec);
MTXMultVec((MtxP)&mDoMtx_stack_c::now,(Vec*)&param_0,&l_vec);
l_float1 = fabsf(param_2.x);
l_float2 = fabsf(param_2.z);
+3 -3
View File
@@ -793,10 +793,10 @@ void dBgS_MoveBGProc_Typical(dBgW* i_bgw, void* i_actor_ptr, cBgS_PolyInfo const
Mtx m;
if (i_bgw->GetOldInvMtx(m) != NULL) {
cXyz move_old;
PSMTXMultVec(m, i_pos, &move_old);
MTXMultVec(m, i_pos, &move_old);
cXyz move_pos;
PSMTXMultVec(i_bgw->GetBaseMtxP(), &move_old, &move_pos);
MTXMultVec(i_bgw->GetBaseMtxP(), &move_old, &move_pos);
i_pos->x = move_pos.x;
i_pos->y = move_pos.y;
i_pos->z = move_pos.z;
@@ -835,7 +835,7 @@ void dBgS_MoveBGProc_Trans(dBgW* i_bgw, void* i_actor_ptr, cBgS_PolyInfo const&
cXyz trans;
i_bgw->GetTrans(&trans);
PSVECAdd(i_pos, &trans, i_pos);
VECAdd(i_pos, &trans, i_pos);
}
/* 80075B84-80075BF4 0704C4 0070+00 0/0 1/1 2/2 .text
+4 -4
View File
@@ -108,9 +108,9 @@ int dBgS_MoveBgActor::MoveBGCreate(char const* i_arcName, int i_dzb_id,
mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z);
mDoMtx_stack_c::YrotM(shape_angle.y);
mDoMtx_stack_c::scaleM(mScale.x, mScale.y, mScale.z);
PSMTXCopy(mDoMtx_stack_c::get(), mBgMtx);
MTXCopy(mDoMtx_stack_c::get(), mBgMtx);
} else {
PSMTXCopy(*i_bgMtx, mBgMtx);
MTXCopy(*i_bgMtx, mBgMtx);
}
m_name = i_arcName;
@@ -148,9 +148,9 @@ int dBgS_MoveBgActor::MoveBGExecute() {
mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z);
mDoMtx_stack_c::YrotM(shape_angle.y);
mDoMtx_stack_c::scaleM(mScale.x, mScale.y, mScale.z);
PSMTXCopy(mDoMtx_stack_c::get(), mBgMtx);
MTXCopy(mDoMtx_stack_c::get(), mBgMtx);
} else {
PSMTXCopy(*new_mtx, mBgMtx);
MTXCopy(*new_mtx, mBgMtx);
}
if (mpBgW != NULL) {
+14 -14
View File
@@ -257,8 +257,8 @@ cBgW::cBgW() {
pm_vtx_tbl = NULL;
pm_base = NULL;
PSMTXIdentity(m_inv_mtx);
PSMTXIdentity(m_mtx);
MTXIdentity(m_inv_mtx);
MTXIdentity(m_mtx);
m_rootGrpIdx = 0xFFFF;
field_0x91 = 0;
}
@@ -284,11 +284,11 @@ void cBgW::GlobalVtx() {
if (!mNeedsFullTransform) {
for (int i = 0; i < pm_bgd->m_v_num; i++) {
Vec* vtx = &pm_vtx_tbl[i];
PSVECAdd(vtx, &mTransVel, vtx);
VECAdd(vtx, &mTransVel, vtx);
}
} else {
for (int i = 0; i < pm_bgd->m_v_num; i++) {
PSMTXMultVec(pm_base, &pm_bgd->m_v_tbl[i], &pm_vtx_tbl[i]);
MTXMultVec(pm_base, &pm_bgd->m_v_tbl[i], &pm_vtx_tbl[i]);
}
}
}
@@ -340,7 +340,7 @@ void cBgW::CalcPlane() {
if (pm_vtx_tbl != NULL) {
if (!mNeedsFullTransform) {
for (int i = 0; i < pm_bgd->m_t_num; i++) {
pm_tri[i].m_plane.mD -= PSVECDotProduct(&pm_tri[i].m_plane.mNormal, &mTransVel);
pm_tri[i].m_plane.mD -= VECDotProduct(&pm_tri[i].m_plane.mNormal, &mTransVel);
}
} else {
for (int i = 0; i < pm_bgd->m_t_num; i++) {
@@ -443,8 +443,8 @@ asm void cBgW::ClassifyPlane() {
/* 8007998C-800799E0 0742CC 0054+00 1/1 0/0 0/0 .text MakeBlckTransMinMax__4cBgWFP4cXyzP4cXyz */
void cBgW::MakeBlckTransMinMax(cXyz* i_min, cXyz* i_max) {
PSVECAdd(i_min, &mTransVel, i_min);
PSVECAdd(i_max, &mTransVel, i_max);
VECAdd(i_min, &mTransVel, i_min);
VECAdd(i_max, &mTransVel, i_max);
}
/* 800799E0-80079A68 074320 0088+00 1/1 0/0 0/0 .text MakeBlckMinMax__4cBgWFiP4cXyzP4cXyz
@@ -637,12 +637,12 @@ bool cBgW::Set(cBgD_t* pbgd, u32 flags, Mtx* pbase_mtx) {
mFlags = flags;
if (mFlags & GLOBAL_e) {
pm_base = NULL;
PSMTXIdentity(m_inv_mtx);
PSMTXIdentity(m_mtx);
MTXIdentity(m_inv_mtx);
MTXIdentity(m_mtx);
} else {
pm_base = *pbase_mtx;
PSMTXCopy(pm_base, m_inv_mtx);
PSMTXCopy(pm_base, m_mtx);
MTXCopy(pm_base, m_inv_mtx);
MTXCopy(pm_base, m_mtx);
}
pm_bgd = pbgd;
@@ -933,8 +933,8 @@ bool cBgW::GroundCross(cBgS_GndChk* pchk) {
/* 8007ABC4-8007AC10 075504 004C+00 1/1 0/0 0/0 .text CopyOldMtx__4cBgWFv */
void cBgW::CopyOldMtx() {
if (pm_base != NULL) {
PSMTXCopy(m_mtx, m_inv_mtx);
PSMTXCopy(pm_base, m_mtx);
MTXCopy(m_mtx, m_inv_mtx);
MTXCopy(pm_base, m_mtx);
}
}
@@ -952,7 +952,7 @@ void cBgW::Move() {
} else if (m_mtx[0][3] == pm_base[0][3] && m_mtx[1][3] == pm_base[1][3] &&
m_mtx[2][3] == pm_base[2][3])
{
PSMTXCopy(pm_base, m_inv_mtx);
MTXCopy(pm_base, m_inv_mtx);
if (!ChkFlush()) {
return;
}
+1 -1
View File
@@ -279,7 +279,7 @@ cM3dGPla dBgWKCol::GetTriPla(int poly_index) const {
Vec* tri_pos;
getTri1Pos(pd, &tri_pos);
PSVECDotProduct(tri_nrm, tri_pos);
VECDotProduct(tri_nrm, tri_pos);
cM3dGPla plane;
plane.SetupNP(*tri_nrm, *tri_pos);
+5 -5
View File
@@ -171,13 +171,13 @@ u32 dCcMassS_Mng::Chk(cXyz* p_xyz, fopAc_ac_c** p_actor, dCcMassS_HitInf* p_hitI
if (field_0x200 & 0x10) {
Vec vec;
PSVECSubtract(&(*p_actor)->current.pos, p_xyz, &vec);
VECSubtract(&(*p_actor)->current.pos, p_xyz, &vec);
vec.y = 0;
f32 vecMag = PSVECMag(&vec);
f32 vecMag = VECMag(&vec);
if (cM3d_IsZero(vecMag)) {
vec.x = 1;
} else {
PSVECScale(&vec, &vec, f / vecMag);
VECScale(&vec, &vec, f / vecMag);
}
obj->GetStts()->PlusCcMove(vec.x, vec.y, vec.z);
}
@@ -203,7 +203,7 @@ u32 dCcMassS_Mng::Chk(cXyz* p_xyz, fopAc_ac_c** p_actor, dCcMassS_HitInf* p_hitI
tmpVec.z = p_xyz->z;
if (mCamTopPos.y < (20.0f + plusH)) {
f32 newCamTopDist = PSVECSquareDistance(&tmpVec, &mCpsAttr.GetStartP());
f32 newCamTopDist = VECSquareDistance(&tmpVec, &mCpsAttr.GetStartP());
if (mCamTopDist > newCamTopDist) {
mCamTopDist = newCamTopDist;
mCamTopPos = tmpVec;
@@ -211,7 +211,7 @@ u32 dCcMassS_Mng::Chk(cXyz* p_xyz, fopAc_ac_c** p_actor, dCcMassS_HitInf* p_hitI
}
if (mCamBottomPos.y < (20.0f + plusH)) {
f32 newCamBottomDist = PSVECSquareDistance(&tmpVec, &mCpsAttr.GetEndP());
f32 newCamBottomDist = VECSquareDistance(&tmpVec, &mCpsAttr.GetEndP());
if (mCamBottomDist > newCamBottomDist) {
mCamBottomDist = newCamBottomDist;
mCamBottomPos = tmpVec;
+10 -10
View File
@@ -403,8 +403,8 @@ void dCcS::SetPosCorrect(cCcD_Obj* param_0, cXyz* param_1, cCcD_Obj* param_2, cX
f32 fvar14;
if (bvar2) {
PSVECSubtract(param_3, param_1, &local_c8);
fvar14 = PSVECMag(&local_c8);
VECSubtract(param_3, param_1, &local_c8);
fvar14 = VECMag(&local_c8);
} else {
local_c8.x = param_3->x - param_1->x;
local_c8.y = 0.0f;
@@ -414,10 +414,10 @@ void dCcS::SetPosCorrect(cCcD_Obj* param_0, cXyz* param_1, cCcD_Obj* param_2, cX
if (!cM3d_IsZero(fvar14)) {
if (bvar2) {
PSVECScale(&local_c8, &local_c8, param_4 / fvar14);
VECScale(&local_c8, &local_c8, param_4 / fvar14);
fvar1 *= -1.0f;
PSVECScale(&local_c8, &local_b0, fvar1);
PSVECScale(&local_c8, &local_bc, fvar2);
VECScale(&local_c8, &local_b0, fvar1);
VECScale(&local_c8, &local_bc, fvar2);
} else {
fvar14 = param_4 / fvar14;
local_c8.x *= fvar14;
@@ -458,7 +458,7 @@ void dCcS::CalcParticleAngle(dCcD_GObjInf* i_atObjInf, cCcD_Stts* i_atStts, cCcD
csXyz* o_angle) {
cXyz vec(*i_atObjInf->GetAtVecP());
if (cM3d_IsZero(PSVECMag(&vec))) {
if (cM3d_IsZero(VECMag(&vec))) {
fopAc_ac_c* atActor = i_atStts->GetActor();
fopAc_ac_c* tgActor = i_tgStts->GetActor();
@@ -467,18 +467,18 @@ void dCcS::CalcParticleAngle(dCcD_GObjInf* i_atObjInf, cCcD_Stts* i_atStts, cCcD
vec.x = 0.0f;
vec.y = -1.0f;
} else {
PSVECSubtract(&tgActor->current.pos, &atActor->current.pos, &vec);
VECSubtract(&tgActor->current.pos, &atActor->current.pos, &vec);
if (cM3d_IsZero(PSVECMag(&vec))) {
if (cM3d_IsZero(VECMag(&vec))) {
vec.z = 0.0f;
vec.x = 0.0f;
vec.y = -1.0f;
} else {
PSVECNormalize(&vec, &vec);
VECNormalize(&vec, &vec);
}
}
} else {
PSVECNormalize(&vec, &vec);
VECNormalize(&vec, &vec);
}
cM3d_CalcVecZAngle(vec, o_angle);
+2 -2
View File
@@ -1640,7 +1640,7 @@ void dAttention_c::Draw() {
}
Mtx tmp;
PSMTXInverse(dComIfGd_getViewRotMtx(), tmp);
MTXInverse(dComIfGd_getViewRotMtx(), tmp);
fopAc_ac_c* target = LockonTarget(0);
if (!i_dComIfGp_event_runCheck()) {
@@ -1775,7 +1775,7 @@ void dAttDraw_c::draw(cXyz& param_0, Mtx param_1) {
f32 temp_f30 = (-100.0f - g_AttDwHIO.mCursorDistance) / temp_f31;
cXyz tmp;
PSMTXMultVec(dComIfGd_getViewMtx(), &param_0, &tmp);
MTXMultVec(dComIfGd_getViewMtx(), &param_0, &tmp);
f32 var_f2 = 1.0f;
if (tmp.z < temp_f30) {
+2 -2
View File
@@ -88,7 +88,7 @@ cXyz dCamMath::xyzRotateX(cXyz& i_xyz, cSAngle i_angle) {
s16 angle = i_angle.Val();
mDoMtx_XrotS(m, angle);
PSMTXMultVec(m, &i_xyz, &rot_xyz);
MTXMultVec(m, &i_xyz, &rot_xyz);
return rot_xyz;
}
@@ -99,7 +99,7 @@ cXyz dCamMath::xyzRotateY(cXyz& i_xyz, cSAngle i_angle) {
s16 angle = i_angle.Val();
mDoMtx_YrotS(m, angle);
PSMTXMultVec(m, &i_xyz, &rot_xyz);
MTXMultVec(m, &i_xyz, &rot_xyz);
return rot_xyz;
}
+1 -1
View File
@@ -1671,7 +1671,7 @@ s32 dDemo_actor_c::JSGFindNodeID(char const* param_0) const {
/* 8003A088-8003A0C8 0349C8 0040+00 1/0 0/0 0/0 .text
* JSGGetNodeTransformation__13dDemo_actor_cCFUlPA4_f */
int dDemo_actor_c::JSGGetNodeTransformation(u32 param_0, Mtx param_1) const {
PSMTXCopy(mModel->i_getAnmMtx((u16)param_0), param_1);
MTXCopy(mModel->i_getAnmMtx((u16)param_0), param_1);
return 1;
}
+3 -3
View File
@@ -1673,9 +1673,9 @@ int dDlst_shadowPoly_c::set(cBgD_Vtx_t* i_vtx, u16 param_1, u16 param_2, u16 par
b.z *= temp_f3;
b *= 2.0f;
PSVECAdd(&i_vtx[param_1], &b, &dst->mPos[0]);
PSVECAdd(&i_vtx[param_2], &b, &dst->mPos[1]);
PSVECAdd(&i_vtx[param_3], &b, &dst->mPos[2]);
VECAdd(&i_vtx[param_1], &b, &dst->mPos[0]);
VECAdd(&i_vtx[param_2], &b, &dst->mPos[1]);
VECAdd(&i_vtx[param_3], &b, &dst->mPos[2]);
mCount++;
return 1;
}
+1 -1
View File
@@ -52,7 +52,7 @@ int dThunder_c::draw() {
mDoMtx_stack_c::XrotM(field_0x15c);
Mtx m;
PSMTXCopy(mDoMtx_stack_c::get(), m);
MTXCopy(mDoMtx_stack_c::get(), m);
mModelInfo.mpModel->setBaseScale(field_0x138);
mModelInfo.mpModel->i_setBaseTRMtx(m);
+1 -1
View File
@@ -42,7 +42,7 @@ void dMdl_c::draw() {
Mtx m;
for (dMdl_obj_c* obj = mpModelObj; obj != NULL; obj = obj->mpObj) {
PSMTXConcat(j3dSys.getViewMtx(), obj->getMtx(), m);
MTXConcat(j3dSys.getViewMtx(), obj->getMtx(), m);
GXLoadPosMtxImm(m, GX_PNMTX0);
GXLoadNrmMtxImm(m, GX_PNMTX0);
shape->simpleDrawCache();
+2 -2
View File
@@ -349,9 +349,9 @@ void dDlst_FileInfo_c::draw() {
MtxP glbMtx2 = mBasePane->getGlbMtx();
// Fake match
MtxP glbMtx = (MtxP)&glbMtx2[0][0];
PSMTXScale(m, mBasePane->getWidth() / field_0x10->getWidth(),
MTXScale(m, mBasePane->getWidth() / field_0x10->getWidth(),
mBasePane->getHeight() / field_0x10->getHeight(), 1.0f);
PSMTXConcat(glbMtx, m, glbMtx);
MTXConcat(glbMtx, m, glbMtx);
Scr->search('Nm_02')->setMtx(glbMtx);
}
Scr->draw(0.0f, 0.0f, ctx);
+3 -3
View File
@@ -394,11 +394,11 @@ Vec CPaneMgr::getGlobalVtx(J2DPane* p_pane, Mtx* param_1, u8 param_2, bool param
if (parent != NULL) {
getGlobalVtx(parent, param_1, param_2, param_3, param_4);
PSMTXCopy(*param_1, m);
PSMTXConcat(m, *p_pane->getMtx(), *param_1);
MTXCopy(*param_1, m);
MTXConcat(m, *p_pane->getMtx(), *param_1);
} else {
p_pane->calcMtx();
PSMTXCopy(*p_pane->getMtx(), *param_1);
MTXCopy(*p_pane->getMtx(), *param_1);
}
Vec outVec;
+12 -12
View File
@@ -981,7 +981,7 @@ static void static_light8EcallBack(JPABaseEmitter* param_0) {
static void static_gen_b_light8EcallBack(JPABaseEmitter* param_0) {
GXFlush();
Mtx identity;
PSMTXIdentity(identity);
MTXIdentity(identity);
GXLoadPosMtxImm(identity, 0);
GXLoadNrmMtxImm(identity, 0);
GXInvalidateVtxCache();
@@ -1093,27 +1093,27 @@ SECTION_SDATA2 static f64 lit_4093 = 4503599627370496.0 /* cast u32 to float */;
void dPa_modelPcallBack::draw(JPABaseEmitter* param_0, JPABaseParticle* param_1) {
Mtx local_74;
Mtx local_44;
PSMTXIdentity(local_74);
PSMTXIdentity(local_44);
MTXIdentity(local_74);
MTXIdentity(local_44);
f32 f31 = -90.0f / 16384.0f * param_1->getRotateAngle();
if (f31) {
switch(dPa_modelEcallBack::getRotAxis(param_0)) {
case 0:
PSMTXRotRad(local_44, 0x79, DEG_TO_RAD(f31));
MTXRotRad(local_44, 0x79, DEG_TO_RAD(f31));
break;
case 1:
PSMTXRotRad(local_44, 0x78, DEG_TO_RAD(f31));
MTXRotRad(local_44, 0x78, DEG_TO_RAD(f31));
break;
case 2:
PSMTXRotRad(local_44, 0x7a, DEG_TO_RAD(f31));
MTXRotRad(local_44, 0x7a, DEG_TO_RAD(f31));
break;
case 3:
Vec vec = {1.0f, 1.0f, 1.0f};
PSMTXRotAxisRad(local_44, &vec, DEG_TO_RAD(f31));
MTXRotAxisRad(local_44, &vec, DEG_TO_RAD(f31));
break;
}
PSMTXConcat(local_74, local_44, local_74);
MTXConcat(local_74, local_44, local_74);
}
JGeometry::TVec3<f32> local_cc;
param_1->getGlobalPosition(local_cc);
@@ -1125,8 +1125,8 @@ void dPa_modelPcallBack::draw(JPABaseEmitter* param_0, JPABaseParticle* param_1)
local_fc.x *= param_1->getParticleScaleX();
local_fc.y *= param_1->getParticleScaleY();
Mtx auStack_c0;
PSMTXScale(auStack_c0, local_fc.x, local_fc.y, local_fc.x);
PSMTXConcat(local_74, auStack_c0, local_74);
MTXScale(auStack_c0, local_fc.x, local_fc.y, local_fc.x);
MTXConcat(local_74, auStack_c0, local_74);
dPa_modelEcallBack::drawModel(param_0, local_74);
param_1->setInvisibleParticleFlag();
}
@@ -1264,7 +1264,7 @@ void dPa_modelEcallBack::model_c::draw(f32 (*param_0)[4]) {
dKy_Global_amb_set(&field_0x8);
dKy_GxFog_tevstr_set(&field_0x8);
Mtx auStack_48;
PSMTXConcat(j3dSys.getViewMtx(), param_0, auStack_48);
MTXConcat(j3dSys.getViewMtx(), param_0, auStack_48);
GXLoadPosMtxImm(auStack_48, 0);
GXLoadNrmMtxImm(auStack_48, 0);
material->getShape()->simpleDrawCache();
@@ -1919,7 +1919,7 @@ dPa_control_c::dPa_control_c() {
mSceneResMng = NULL;
m_sceneRes = NULL;
PSMTXIdentity(mWindViewMatrix);
MTXIdentity(mWindViewMatrix);
}
/* 8004BB70-8004BB78 0464B0 0008+00 4/4 0/0 0/0 .text getRM_ID__13dPa_control_cFUs */
+3 -3
View File
@@ -217,12 +217,12 @@ void dScnName_c::setView() {
mCamera.mFar);
mDoMtx_lookAt(mCamera.mViewMtx, &mCamera.mLookat.mEye, &mCamera.mLookat.mCenter,
mCamera.mBank);
PSMTXInverse(mCamera.mViewMtx, mCamera.mInvViewMtx);
PSMTXCopy(mCamera.mViewMtx, mCamera.mViewMtxNoTrans);
MTXInverse(mCamera.mViewMtx, mCamera.mInvViewMtx);
MTXCopy(mCamera.mViewMtx, mCamera.mViewMtxNoTrans);
mCamera.mViewMtxNoTrans[0][3] = 0.0f;
mCamera.mViewMtxNoTrans[1][3] = 0.0f;
mCamera.mViewMtxNoTrans[2][3] = 0.0f;
PSMTXCopy(mCamera.mViewMtx, j3dSys.mViewMtx);
MTXCopy(mCamera.mViewMtx, j3dSys.mViewMtx);
mDoMtx_concatProjView(mCamera.mProjMtx, mCamera.mViewMtx, mCamera.mProjViewMtx);
}