#include "CGfxPlayer.h" #include "CPlayerShader.h" #include "CFTTBatchModelBin.h" #include "CGFXSpec.h" #include "CFTTBatchModelManager.h" #include "memctrl.h" #include "CGfxKits.h" #include "CMatchSetup.h" #include "TGame.h" //0033F40C int GFXPLAYER_spBatchBinMats[8] = {-1, -1, -1, -1, -1, -1, -1, -1}; int GFXPLAYER_iKitTextureID[7]; //0045FC68 CFTTBatchModelBin *GFXPLAYER_spBatchBins[8]; //0045FC88 HashNode HashNode_45FC88[8] = { {-1, 0x28000, FTTHash("torso"), 0, 0, 0, 1}, {-1, 0x40000, FTTHash("suit"), 0, 0, 0, 0}, {-1, 0x20000, FTTHash("kit"), 0, 0, 0, 0}, {-1, 0x4000, FTTHash("kit_a"), 0, 0, 0, 0}, {-1, 0x4000, FTTHash("atlas_a"), 1, 0, 0, 1}, {-1, 0x60000, FTTHash("atlas"), 1, 0, 0, 1}, {-1, 0x10000, FTTHash("hair"), 1, 1, 0, 2}, {6, 0x10000, FTTHash("hair_x"), 1, 1, 0, 2}, }; //002FEEEC int s_ePerCharacterMat[8] = {2, 2, 2, 2, 0, 1, 2, 2}; //0045FBD8 int GFXPLAYER_iNumCharacters; //0045DC28 CGfxCharacter *GFXPLAYER_pPlayer[33]; //0045EBE4 CFTTAABB32 GFXPLAYER_tPlayerAABBV[33]; //0045F94C CFTTAABB32 GFXPLAYER_tShadowMapAABB[4]; //0045E4EC bool GFXPLAYER_bPlayerVisible[33]; //0045E50D bool GFXPLAYER_bPlayerShadowVisible[35]; //0045F298 CFTTAABB32 GFXPLAYER_tPlayerAABBL[33]; //int CGfxPlayer::ms_iHairMatList[33]; //int CGfxPlayer::ms_iNumHairMats; //------------------------------------------------------------------------------------------------- //00186800 void CGfxPlayer::LoadBuildKitTextures() { } //------------------------------------------------------------------------------------------------- //00186848 void CGfxPlayer::FreeBuildKitTextures() { } //------------------------------------------------------------------------------------------------- //00186868 // 00186868 经过单元测试,功能正常,每个分支都走到了 void CGfxPlayer::InitKits(int i0) { switch (i0) { case 0: // loc_186886 CGfxKits::BeginBuildKit(0); break; case 1: // loc_186890 CGfxKits::GetTexture(GFXPLAYER_iKitTextureID[0], &GFXPLAYER_tGameKitTextures[tGame.mTLogic_6678.field_0], CMatchSetup::ms_tInfo.field_18[0], EKitTextureType_0, nullptr); break; case 2: // loc_1868B2 CGfxKits::GetTexture(GFXPLAYER_iKitTextureID[1], &GFXPLAYER_tGameKitTextures[tGame.mTLogic_6678.field_0^1], CMatchSetup::ms_tInfo.field_18[1], EKitTextureType_0, nullptr); break; case 3: // loc_1868E6 CGfxKits::GetTexture(GFXPLAYER_iKitTextureID[2], &GFXPLAYER_tGameKitTextures[tGame.mTLogic_6678.field_0], CMatchSetup::ms_tInfo.field_20[0], EKitTextureType_1, nullptr); CGfxKits::GetTexture(GFXPLAYER_iKitTextureID[3], &GFXPLAYER_tGameKitTextures[tGame.mTLogic_6678.field_0^1], CMatchSetup::ms_tInfo.field_20[1], EKitTextureType_1, nullptr); break; case 4: // loc_186934 CGfxKits::GetTexture(GFXPLAYER_iKitTextureID[4], 0, CMatchSetup::ms_tInfo.field_20[2], EKitTextureType_2, 0); CGfxKits::GetTexture(GFXPLAYER_iKitTextureID[5], &GFXPLAYER_tGameKitTextures[tGame.mTLogic_6678.field_0], CMatchSetup::ms_tInfo.field_18[0], EKitTextureType_3, nullptr); break; case 5: CGfxKits::GetTexture(GFXPLAYER_iKitTextureID[6], &GFXPLAYER_tGameKitTextures[tGame.mTLogic_6678.field_0^1], CMatchSetup::ms_tInfo.field_18[1], EKitTextureType_4, nullptr); CGfxKits::EndBuildKit(); break; default: break; } } //------------------------------------------------------------------------------------------------- //001869E8 -_- void CGfxPlayer::InitBatchManager() { LOGI("CGfxPlayer::InitBatchManager End"); } //------------------------------------------------------------------------------------------------- //00186B68 void CGfxPlayer::ShutdownBatchManager() { } //------------------------------------------------------------------------------------------------- //00186BD4 void CGfxPlayer::SetupBatchConstants() { LOGE("CGfxPlayer::SetupBatchConstants"); } //------------------------------------------------------------------------------------------------- //00186D48 void CGfxPlayer::InitPlayersGame() { LOGE("CGfxPlayer::InitPlayersGame"); } //------------------------------------------------------------------------------------------------- //00186F9C void CGfxPlayer::ReInitialisePlayer(int a0, int a1, int a2) { //empty } //------------------------------------------------------------------------------------------------- //00186FA0 void CGfxPlayer::RenderProps() { } //------------------------------------------------------------------------------------------------- //00186FEC void CGfxPlayer::RenderPlayerOpaque(int) { } //------------------------------------------------------------------------------------------------- //00187338 void CGfxPlayer::GetFrustumCullingSphere(CFTTSphere32 &, int, bool) { } //------------------------------------------------------------------------------------------------- //001873C0 void CGfxPlayer::RenderPlayerAlphaTested(bool) { } //------------------------------------------------------------------------------------------------- //001874A8 void CGfxPlayer::RenderPlayerTranslucent(bool) { } //------------------------------------------------------------------------------------------------- //00187598 void CGfxPlayer::FlushPlayerSkins() { LOGE("CGfxPlayer::FlushPlayerSkins"); } //------------------------------------------------------------------------------------------------- //00187604 void CGfxPlayer::FreeKits() { } //------------------------------------------------------------------------------------------------- //0018763C void CGfxPlayer::FreePlayers() { } //------------------------------------------------------------------------------------------------- //00187684 void CGfxPlayer::UpdateProps() { } //------------------------------------------------------------------------------------------------- //00187790 void CGfxPlayer::AnimatePlayer(CPlayer *) { } //------------------------------------------------------------------------------------------------- //001877D4 void CGfxPlayer::AnimatePlayer(CGfxCharacter *, CFTTMatrix32 *) { } //------------------------------------------------------------------------------------------------- //001877F8 void CGfxPlayer::SkinPlayers() { } //------------------------------------------------------------------------------------------------- //00187D04 void CGfxPlayer::SwapTeamKits() { } //------------------------------------------------------------------------------------------------- //00187EB4 void CGfxPlayer::GetKitFileName(int) { } //------------------------------------------------------------------------------------------------- //00187EC0 void CGfxPlayer::AddPlayer(CGfxCharacter *) { } //------------------------------------------------------------------------------------------------- //00187EE0 void CGfxPlayer::RemovePlayer(CGfxCharacter *) { } //-------------------------------------------------------------------------------------------------