123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469 |
- #include <arm_neon.h>
- #include "FE2D.h"
- #include "FTT2D.h"
- #include "XMATH.h"
- #include "CPartAdditive2dShader.h"
- #include "CPolaroid2dShader.h"
- #include "CSheen2dShader.h"
- #include "CBlurVShader.h"
- #include "CSDFFontVisFBShader.h"
- #include "CKitGenShader.h"
- #include "CFTTCamera.h"
- #include "CFTTTime.h"
- #include "CKitGenShader.h"
- #include "CFTTMaterialManager.h"
- #include "CFTTVector32x4.h"
- #include "CFTTGraphicsDevice.h"
- int FE2D_iMaterialPartAdditive = -1; //003365A4
- int FE2D_iMaterialSDFFontVisFB = -1; //003365A8
- int FE2D_iMaterialSheenEffect = -1; //003365AC
- int FE2D_iMaterialPolaroidFade = -1; //003365B0
- int FE2D_iMaterialBlurVariable = -1; //003365B4
- int FE2D_iMaterialKitGen = -1; //003365B8
- //-------------------------------------------------------------------------------------------------
- //00148B34 //^_^
- void FE2D_DrawRectCol(float f0, float f1, float f2, float f3, uint a4) {
- LOGI("FE2D_DrawRectCol 00148B34 end");
- }
- //-------------------------------------------------------------------------------------------------
- //00148B6C //^_^0023A4D8
- void FE2D_DrawRectCol(float f0, float f1, float f2, float f3,
- uint a4, uint a5, uint a6, uint a7) {
- }
- //-------------------------------------------------------------------------------------------------
- //00148BB4 //^_^
- void FE2D_DrawTriangle(float f0, float f1, float f2, float f3, float f4,
- float f5, bool b6, uint a7) {
- }
- //-------------------------------------------------------------------------------------------------
- //00148BF0 //^_^
- void FE2D_DrawRectColRot(float f0, float f1, float f2, float f3,
- uint a4,
- float f5, float f6, float f7) {
- LOGI("FE2D_DrawRectColRot 00148BF0 end");
- }
- //-------------------------------------------------------------------------------------------------
- //00148C14 //^_^
- void FE2D_DrawRectColRot(float f0, float f1, float f2, float f3,
- uint a4, uint a5, uint a6, uint a7,
- float f8, float f9, float f10) {
- }
- //-------------------------------------------------------------------------------------------------
- //00148C38 //^_^
- void FE2D_DrawRectColRotAA(float f0, float f1, float f2, float f3,
- uint a4,
- float f5, float f6, float f7,
- TImage *pImage) {
- }
- //-------------------------------------------------------------------------------------------------
- //00148CE8 //^_^
- void FE2D_DrawTexScaleColCropRot(TImage *pImage,
- float f1, float f2, float f3, float f4,
- uint a5,
- float fx6, float fy7, float fWidth8, float fHeight9,
- float f10, float f11, float f12) {
- }
- //-------------------------------------------------------------------------------------------------
- //00148D44 //^_^
- void FE2D_DrawTex(CFTTTexture *pTexture, float f1, float f2) {
- }
- //-------------------------------------------------------------------------------------------------
- //00148D90 //^_^
- void FE2D_DrawTex(TImage *pImage, float f1, float f2) {
- LOGI("FE2D_DrawTex 00148D90 end");
- }
- //-------------------------------------------------------------------------------------------------
- //00148DD4 //^_^
- void FE2D_SetValidImage(TImage *pImage) {
- LOGI("FE2D_SetValidImage entry");
- LOGI("FE2D_SetValidImage end");
- }
- //-------------------------------------------------------------------------------------------------
- //00148DF4 //^_^
- void FE2D_DrawTexScale(CFTTTexture *pTexture, float f1, float f2, float f3, float f4) {
- }
- //-------------------------------------------------------------------------------------------------
- //00148E28 //^_^
- void FE2D_DrawTexScale(TImage *pImage, float f1, float f2, float f3, float f4) {
- LOGI("FE2D_DrawTexScale 00148E28 entry %p %.4f %.4f %.4f %.4f", pImage, f1, f2, f3, f4);
- LOGI("FE2D_DrawTexScale 00148E28 end");
- }
- //-------------------------------------------------------------------------------------------------
- //00148E58
- void FE2D_DrawTexCol(CFTTTexture *pTexture, float f1, float f2, uint a3) {
- }
- //-------------------------------------------------------------------------------------------------
- //00148EA8
- void FE2D_DrawTexCol(TImage *pImage, float f1, float f2, uint a3) {
- }
- //-------------------------------------------------------------------------------------------------
- //00148EEC
- void FE2D_DrawTexScaleCol(CFTTTexture *a1, float a2, float a3, float a4,
- float a5, uint a6) {
- srand(time(NULL));
- int ret = rand();
- printf("%d%d%d%d%d%d%d", a1, ret, a2, a3, a4, a5, a6);
- }
- //-------------------------------------------------------------------------------------------------
- //00148F20
- void FE2D_DrawTexScaleCol(TImage *pImage, float f1, float f2, float f3, float f4, uint a5) {
- }
- //-------------------------------------------------------------------------------------------------
- //00148F4C //^_^
- void FE2D_DrawTexScaleCol(TImage *pImage,
- float f1, float f2, float f3, float f4,
- uint a5, uint a6, uint a7, uint a8) {
- LOGI("FE2D_DrawTexScaleCol 00148F4C entry %p %.4f %.4f %.4f %.4f %x %x %x %x", pImage, f1, f2, f3, f4, a5, a6, a7, a8);
- LOGI("FE2D_DrawTexScaleCol 00148F4C end");
- }
- //-------------------------------------------------------------------------------------------------
- //00148F88
- void FE2D_DrawTexScaleCrop(CFTTTexture *pTexture,
- float f1, float f2, float f3, float f4,
- float f5, float f6, float f7, float f8) {
- }
- //-------------------------------------------------------------------------------------------------
- //00148FE0 //^_^
- void FE2D_DrawTexScaleCrop(TImage *pImage,
- float f1, float f2, float f3, float f4,
- float f5, float f6, float f7, float f8) {
- LOGI("FE2D_DrawTexScaleCrop 00148FE0 entry %p %.4f %.4f %.4f %.4f %.4f %.4f %.4f %.4f", pImage, f1, f2, f3, f4, f5, f6, f7, f8);
- LOGI("FE2D_DrawTexScaleCrop 00148FE0 end");
- }
- //-------------------------------------------------------------------------------------------------
- //00149034 //^_^
- void FE2D_SetValidImage(TImage *pImage, CFTT2D_TextureUV *pUV) {
- }
- //-------------------------------------------------------------------------------------------------
- //00149054
- void FE2D_DrawTexScaleRot(CFTTTexture *pTexture,
- float f1, float f2, float f3, float f4,
- float f5, float f6, float f7) {
- }
- //-------------------------------------------------------------------------------------------------
- //0014908E //^_^
- void FE2D_DrawTexScaleRot(TImage *pImage,
- float f1, float f2, float f3, float f4,
- float f5, float f6, float f7) {
- }
- //-------------------------------------------------------------------------------------------------
- //001490C8
- void FE2D_DrawTexColCrop(CFTTTexture *pTexture,
- float f1, float f2,
- uint a3,
- float f4, float f5, float f6, float f7) {
- }
- //-------------------------------------------------------------------------------------------------
- //00149124
- void FE2D_DrawTexColCrop(TImage *pImage,
- float f1, float f2,
- uint a3,
- float f4, float f5, float f6, float f7) {
- }
- //-------------------------------------------------------------------------------------------------
- //0014917C
- void FE2D_DrawTexScaleColCrop(CFTTTexture *pTexture,
- float f1, float f2, float f3, float f4,
- uint a5,
- float f6, float f7, float f8, float f9) {
- }
- //-------------------------------------------------------------------------------------------------
- //001491D0 //^_^
- void FE2D_DrawTexScaleColCrop(TImage *pImage,
- float f1, float f2, float f3, float f4,
- uint a5,
- float f6, float f7, float f8, float f9) {
- }
- //-------------------------------------------------------------------------------------------------
- //00149224
- void FE2D_DrawTexScaleColCrop(CFTTTexture *pTexture,
- float f1, float f2, float f3, float f4,
- uint a5, uint a6, uint a7, uint a8,
- float f9, float f10, float f11, float f12) {
- }
- //-------------------------------------------------------------------------------------------------
- //0014928C
- void FE2D_DrawTexScaleColCrop(TImage *pImage,
- float f1, float f2, float f3, float f4,
- uint a5, uint a6, uint a7, uint a8,
- float f9, float f10, float f11, float f12) {
- }
- //-------------------------------------------------------------------------------------------------
- //001492EC
- void FE2D_DrawTexScaleColRot(CFTTTexture *pTexture,
- float f1, float f2, float f3, float f4,
- uint a5,
- float f6, float f7, float f8) {
- LOGI("FE2D_DrawTexScaleColRot 001492EC entry");
- }
- //-------------------------------------------------------------------------------------------------
- //00149324 //^_^
- void FE2D_DrawTexScaleColRot(TImage *pImage, float f1, float f2, float f3, float f4, uint a5, float f6, float f7, float f8) {
- LOGI("FE2D_DrawTexScaleColRot 00149324 entry");
- LOGE("%p%f%f%f%f%x%f%f",pImage,f1,f2,f3,f4,a5,f6,f7,f8);
- }
- //-------------------------------------------------------------------------------------------------
- //0014935A //^_^
- void FE2D_DrawTexScaleColCropRot(TImage *pImage,
- float f1,
- float f2,
- float f3,
- float f4,
- uint a5,
- uint a6,
- uint a7,
- uint a8,
- float f9,
- float f10,
- float f11,
- float f12,
- float f13,
- float f14,
- float f15) {
- }
- //-------------------------------------------------------------------------------------------------
- //001493C4
- void FE2D_DrawTexScaleColCropRot(CFTTTexture *pTexture,
- float f1, float f2, float f3, float f4,
- uint a5,
- float f6, float f7, float f8,
- float f9, float f10, float f11, float f12) {
- }
- //-------------------------------------------------------------------------------------------------
- //00149422
- void FE2D_DrawLineCol(float f0, float f1, float f2, float f3, uint a4, bool b5) {
- FTT2D_DrawLineCol(f0, f1, f2, f3, a4);
- }
- //-------------------------------------------------------------------------------------------------
- //00149428
- void FE2D_DrawLineColX(float f0, float f1, float f2, float f3, float f4, uint a5, TImage *pImage6) {
- // loc_14951E
- }
- //-------------------------------------------------------------------------------------------------
- //00149528
- void FE2D_DrawDottedLineColX(float f0, float f1, float f2, float f3, float f4, float f5, uint a6) {
- }
- //-------------------------------------------------------------------------------------------------
- //00149628
- void FE2D_DrawDottedCurveLineCol(float f0, float f1, float f2, float f3, float f4, float f5, float f6, uint a7) {
- FE2D_DrawDottedCurveLineColX(f0, f1, f2, f3,
- (f0 + ((f2 - f0) * 0.5)) - ((f3 - f1) * f4),
- (f1 + ((f3 - f1) * 0.5)) + ((f2 - f0) * f4),
- f5, f6, a7);
- }
- //-------------------------------------------------------------------------------------------------
- //00149684
- void FE2D_DrawDottedCurveLineColX(float f0, float f1, float f2, float f3,
- float f4, float f5, float f6, float f7,
- uint a8) {
- }
- //-------------------------------------------------------------------------------------------------
- //00149788
- void FE2D_DrawDottedCurveLineColXS(float f0, float f1, float f2, float f3, float f4, float f5, float f6, float f7, uint a8, TImage *pImage9) {
- }
- //-------------------------------------------------------------------------------------------------
- //001497F0
- void FE2D_DrawDottedCurveLineColXXS(float f0, float f1, float f2, float f3, float f4, float f5, float f6, float f7, float f8, uint a9, TImage *pImage9) {
- }
- //-------------------------------------------------------------------------------------------------
- //00149A40
- void FE2D_DrawStarburst(float f0, float f1, int i2, float const *pf3, int const *pi4, float const *pf5, uint const *pi6) {
- //sp14 sp18= pf3 i2
- //s18=f0 s16=f1 s20=6.28318548f
- //loc_149BCE
- //loc_149BCE
- float r11_f=0;
- int r4_i=0;
- CFTT2D_TexturedVert texturedVert_sp50[305];
- TImage image_sp38;
- for(int r5_i=0;r5_i<i2;r5_i++){
- //loc_149A74
- uint r7_u=g_pGraphicsDevice->ARGBToPlatformU32(pi6[r5_i]);
- //sp28=pi4[r5_i]
- int r5_i1=0x40/(pi4[r5_i]*2);
- if(r5_i1<=1)
- r5_i1=1;
- float s26_f=pf5[r5_i];
- float s22_f=6.28318548f/(pi4[r5_i]*2);
- float s0_f=r5_i1;
- //sp1c=r5_i
- float s28_f=pf3[r5_i];
- float s24_f=s22_f/s0_f;
- //sp24=r5_i1*3
- //sp20=r5_i1*60
- //loc_149BC4
- for(int r1_i=0;r1_i<pi4[r5_i];r1_i++){
- //loc_149AFE
- float s2_f=r1_i*2;
- s0_f=s22_f*s2_f+s26_f;
- //sp34=r4
- //sp30=r10=texturedVert_sp50[r4_i]
- //loc_149BAE
- CFTT2D_TexturedVert *r10_pvert=&texturedVert_sp50[r4_i];
- for(uint r8_u=0;r8_u<r5_i1;r8_u++){
- //loc_149B1E
- r10_pvert[0].field_0=f0;
- r10_pvert[0].field_4=f1;
- float s30_f=s24_f+s0_f;
- r10_pvert[0].argb_8=r7_u;
- r10_pvert[0].field_C=r11_f;
- r10_pvert[0].field_10=r11_f;
- float s17_f=sinf(s0_f);
- s0_f=cosf(s0_f);
-
- r10_pvert[1].argb_8=r7_u;
- r10_pvert[1].field_C=1.0f;
- r10_pvert[1].field_10=r11_f;
- s2_f=f0+s28_f*s17_f;
- float s4_f=f1+s28_f*s0_f;
- r10_pvert[1].field_0=s2_f;
- r10_pvert[1].field_4=s4_f;
- s17_f= sinf(s30_f);
- s0_f=cosf(s30_f);
- r10_pvert[2].argb_8=r7_u;
- r10_pvert[2].field_C=1.0f;
- r10_pvert[2].field_10=r11_f;
- s2_f=f0+s28_f*s17_f;
- s4_f=f1+s28_f*s0_f;
- r10_pvert[2].field_0=s2_f;
- r10_pvert[2].field_4=s4_f;
- r10_pvert=r10_pvert+3;
- }
- //00149BB2
- //r10_pvert=texturedVert_sp50[r4_i]+r5_i1;
- r4_i=r4_i+r5_i1*3;
- }
- //00149BCA
- }
- //00149BD6
- FETU_GetImage(&image_sp38,"PKG:/Data/FE/UI/StarburstGrad.png",false,EFTTTexFormat_3,false,false,true);
- FE2D_SetBlendPartAdditive();
- FTT2D_SetTexture(image_sp38.pTexture_0,0);
- FTT2D_DrawTexturedVertList(texturedVert_sp50,r4_i);
- FE2D_SetBlendModulate();
- }
- //-------------------------------------------------------------------------------------------------
- //00149C24
- void FE2D_SetBlendPartAdditive() {
- LOGE("FE2D_SetBlendPartAdditive");
- }
- //-------------------------------------------------------------------------------------------------
- //00149C34 //^_^
- void FE2D_SetBlendModulate() {
- LOGE("FE2D_SetBlendModulate");
- }
- //-------------------------------------------------------------------------------------------------
- //00149C48
- void FE2D_DrawUnfilledRect(float f0, float f1, float f2, float f3,
- uint a4,
- float f5, float f6, float f7) {
- FTT2D_DrawUnfilledRect(f0, f1, f2, f3, a4, f5, f6, f7);
- }
- //-------------------------------------------------------------------------------------------------
- //00149C4C
- void FE2D_DrawBox(float f0, float f1, float f2, float f3, uint a4) {
- //00149C7C
- }
- //-------------------------------------------------------------------------------------------------
- //00149CF0
- void FE2D_DrawShadowBG(float f0, float f1, float f2, float f3,
- float f4,
- uint argb5, uint argb6) {
- }
- //-------------------------------------------------------------------------------------------------
- //00149DD0 //^_- 经过单元测试,功能正常
- void FE2D_Init() {
- LOGI("FE2D_Init: entry");
- LOGI("FE2D_Init: end");
- }
- //-------------------------------------------------------------------------------------------------
- //00149E98
- void FE2D_Shutdown() {
- }
- //-------------------------------------------------------------------------------------------------
- //00149F90
- void FE2D_SetBlendMat(int a0) {
- FTT2D_SetMaterial(a0);
- }
- //-------------------------------------------------------------------------------------------------
- //00149F94
- void FE2D_SetBlendAdditive() {
- }
- //-------------------------------------------------------------------------------------------------
- //00149FA8
- void FE2D_SetBlendAdditiveSimple() {
- }
- //-------------------------------------------------------------------------------------------------
- //00149FBC
- void FE2D_SetBlendSubtractiveSimple() {
- }
- //-------------------------------------------------------------------------------------------------
- //00149FD0
- void FE2D_SetBlendSubtractive() {
- }
- //-------------------------------------------------------------------------------------------------
- //00149FE4
- void FE2D_SetBlendRTTAlphaAccum() {
- }
- //-------------------------------------------------------------------------------------------------
- //00149FF8
- void FE2D_SetBlendOff() {
- FTT2D_SetMaterial(-1);
- FTT2D_SetDefaultMatBlend(EFTT2D_Blend_0);
- }
- //-------------------------------------------------------------------------------------------------
- //0014A00C
- void FE2D_SetBlendJustAlpha() {
- FTT2D_SetMaterial(-1);
- FTT2D_SetDefaultMatBlend(EFTT2D_Blend_10);
- }
- //-------------------------------------------------------------------------------------------------
- //0014A020
- void FE2D_SetBlendMultiply() {
- FTT2D_SetMaterial(-1);
- FTT2D_SetDefaultMatBlend(EFTT2D_Blend_7);
- }
- //-------------------------------------------------------------------------------------------------
- //0014A034
- void FE2D_SetBlendMultiply2x() {
- FTT2D_SetMaterial(-1);
- FTT2D_SetDefaultMatBlend(EFTT2D_Blend_9);
- }
- //-------------------------------------------------------------------------------------------------
- //0014A048 //^_-
- void FE2D_SetBlendSheenEffect() {
- LOGI("FE2D_SetBlendSheenEffect entry %lld", CFTTTime::s_uUnscaledTime);
- LOGI("FE2D_SetBlendSheenEffect end");
- }
- //-------------------------------------------------------------------------------------------------
- //0014A104
- void FE2D_SetBlendBlurVariable(float f0,
- float f1,
- EBlurVShader_Mode eMode2,
- CFTTTexture *pTex3) {
- }
- //-------------------------------------------------------------------------------------------------
- //0014A1A4
- void FE2D_SetBlendKitGen() {
- FTT2D_SetMaterial(FE2D_iMaterialKitGen);
- }
- //-------------------------------------------------------------------------------------------------
- //002A42A0 int64_to_float_2A42A0
- //第一个界面,不需要这儿的函数
|