GFXSCENE.cpp 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. #include "GFXSCENE.h"
  2. #include "CLegacyLitShader.h"
  3. #include "CMatchSetup.h"
  4. #include "CGfxEnv.h"
  5. #include "Matrix.h"
  6. CFTTVector32 GFXSCENE_vLightDir; //004613D8
  7. MYSTATIC int gs_i_3A4144;
  8. CLightingLUTSceneSettings *pLUTSceneSettings_33F448;
  9. //------------------------------------------------------------------------------------------------
  10. //0018BF4C
  11. void GFXSCENE_Init() {
  12. //empty
  13. }
  14. //------------------------------------------------------------------------------------------------
  15. //0018BF50
  16. void GFXSCENE_Shutdown() {
  17. //没有调用到
  18. }
  19. //------------------------------------------------------------------------------------------------
  20. //0018BF84
  21. void GFXSCENE_Apply(CLightingLUTSceneSettings const* plightingLUTSceneSettings0) {
  22. //LOGE("GFXSCENE_Apply");
  23. LOGE("GFXSCENE_Apply=%x",plightingLUTSceneSettings0);
  24. //loc_18C0F6
  25. return;
  26. }
  27. //------------------------------------------------------------------------------------------------
  28. //0018c19c ^_^ resetgame到 加载Hero场景没问题
  29. void GFXSCENE_CheckLUTs(ELightingLUTMat emat0) {
  30. //LOGI("GFXSCENE_CheckLUTs entry %d", emat0);
  31. //LOGE("GFXSCENE_CheckLUTs");
  32. //0018C19C
  33. if (gs_plightingLUTState_46121C[emat0].pTexture_0) {
  34. if (gs_plightingLUTState_46121C[emat0].Matches(emat0))
  35. return;
  36. //loc_18C1BC
  37. if (gs_plightingLUTState_46121C[emat0].pTexture_0) {
  38. // LOGE("GFXSCENE_CheckLUTs");
  39. delete gs_plightingLUTState_46121C[emat0].pTexture_0;
  40. }
  41. gs_plightingLUTState_46121C[emat0].pTexture_0 = 0;
  42. //loc_18C1C6
  43. if (gs_plightingLUTState_46121C[emat0].pTexture_4)
  44. delete gs_plightingLUTState_46121C[emat0].pTexture_4;
  45. gs_plightingLUTState_46121C[emat0].pTexture_4 = 0;
  46. }
  47. //LOGI("GFXSCENE_CheckLUTs loc_18C1DE");
  48. //loc_18C1DE
  49. memcpy(&gs_plightingLUTState_46121C[emat0].tSetting_8, pLUTSceneSettings_33F448, sizeof(CLightingLUTSceneSettings));
  50. gs_plightingLUTState_46121C[emat0].Generate(emat0);
  51. //LOGI("GFXSCENE_CheckLUTs end");
  52. }
  53. //------------------------------------------------------------------------------------------------
  54. //0018c8d8 ^_^ resetgame 到没问题
  55. CFTTTexture* GFXSCENE_GetDiffRimLUT(ELightingLUTMat emat0) {
  56. //LOGE("GFXSCENE_GetDiffRimLUT");
  57. GFXSCENE_CheckLUTs(emat0);
  58. return NULL;
  59. }
  60. //------------------------------------------------------------------------------------------------
  61. //0018c8f0 ^_^ resetgame到没问题
  62. CFTTTexture* GFXSCENE_GetSpecularLUT(ELightingLUTMat emat0) {
  63. //LOGE("GFXSCENE_GetSpecularLUT");
  64. return 0;
  65. }
  66. //------------------------------------------------------------------------------------------------
  67. //0018c90c ^_^ 测试玩俩关
  68. CFTTVector32 GFXSCENE_GetLightDirConst() {
  69. //LOGE("GFXSCENE_GetLightDirConst");
  70. //loc_18C926
  71. return GFXSCENE_vLightDir;
  72. }
  73. //------------------------------------------------------------------------------------------------