#include "CShaderSetup.h"
#include "CFTTMaterialManager.h"
#include "CFTTModel.h"
#include "global_func.h"
#include "CBallShader.h"
#include "CFTT3dGenShader.h"
#include "CGfxSky.h"
#include "CTexLoadHelper.h"
#include "CFTTMatSetupData.h"
#include "CLegacyLitShader.h"
#include "CStadiumShader.h"
#include "CPlayerShader.h"
#include "CGraphicsTexLoadOptions.h"
#include "CDressingRoomShader.h"

uint32 dword_47BBB0[54] = {FTTHash("ball"),
                           FTTHash("sky"),
                           FTTHash("cornerflag"),
                           FTTHash("flag"),
                           FTTHash("redcard"),
                           FTTHash("yellowcard"),
                           FTTHash("green01"),
                           FTTHash("green02"),
                           FTTHash("red01"),
                           FTTHash("red02"),
                           FTTHash("subsboard"),
                           FTTHash("goalframe"),
                           FTTHash("armband"),
                           FTTHash("gloves"),
                           FTTHash("camera"),
                           FTTHash("camera_tv"),
                           FTTHash("water"),
                           FTTHash("stadium_default"),
                           FTTHash("stadium_seating"),
                           FTTHash("stadium_dressing"),
                           FTTHash("stadium_dressing_1"),
                           FTTHash("stadium_alpha"),
                           FTTHash("podium"),
                           FTTHash("playershadow"),
                           FTTHash("torso"),
                           FTTHash("suit"),
                           FTTHash("kit"),
                           FTTHash("kit_a"),
                           FTTHash("atlas_a"),
                           FTTHash("atlas"),
                           FTTHash("hair"),
                           0,
                           FTTHash("hair_x"),
                           FTTHash("starhead"),
                           FTTHash("starhair"),
                           FTTHash("chrome"),
                           FTTHash("gold brushed"),
                           FTTHash("gold plane"),
                           FTTHash("silver brushed"),
                           FTTHash("silver plane"),
                           FTTHash("wood dark"),
                           FTTHash("wood light"),
                           FTTHash("gloss"),
                           FTTHash("matt"),
                           FTTHash("star"),
                           FTTHash("prop"),
                           FTTHash("bench"),
                           FTTHash("rail"),
                           FTTHash("ceiling"),
                           FTTHash("walls"),
                           FTTHash("logo"),
                           FTTHash("floor"),
                           FTTHash("towels"),
                           FTTHash("poster")};
//-------------------------------------------------------------------------------------------------
//001D04CC ^_^
void CShaderSetup::Initialise() {
  FTT_pMtlL->SetMaterialCreateCallback(&MaterialCreateCB, nullptr);
}
//-------------------------------------------------------------------------------------------------
//001D04E8
ushort CShaderSetup::MaterialCreateCB(TMaterial const &a1, uint, CFTTMatSetupData const &a2, void *a3) {
  LOGI("CShaderSetup::MaterialCreateCB entry");

  return 0;
}
//-------------------------------------------------------------------------------------------------
//001D1160
void CShaderSetup::Shutdown() {
  //empty
}
//-------------------------------------------------------------------------------------------------
//001D1164 ^_- 经过单元测试，功能正常
void CShaderSetup::ExtractMaterialIDs(CFTTModel *pModel,
                                      int dCount,
                                      uint const *listHash,
                                      int *pHashList) {
}
//-------------------------------------------------------------------------------------------------