Skip to content

xFX progress#569

Merged
mattbruv merged 7 commits intobfbbdecomp:mainfrom
stravant:xFX
May 25, 2025
Merged

xFX progress#569
mattbruv merged 7 commits intobfbbdecomp:mainfrom
stravant:xFX

Conversation

@stravant
Copy link
Collaborator

@stravant stravant commented May 24, 2025

  • I'm pretty confident that RwEngineInstance has type RwGlobals. There's only one match for it in these changes, but that match is pretty convincing, and I checked cross-checked a couple of other usages which also have the argument counts of the function pointers called in it line up correctly.

@github-actions
Copy link

🆗 ✅

+2480 bytes
🆗 Bot Rating: Amazing contribution, you are the decomp GOAT 🐐

No Regressions 🎉

Progress: 57

📈 main/SB/Core/x/xFX - .text +2316 bytes -> 17.80%
📈 main/SB/Core/x/xFX - .text +4 bytes -> 0.15%
📈 main/SB/Core/x/xFX - .rodata +9 bytes -> 29.48%
📈 main/SB/Core/x/xFX - .sdata2 +101 bytes -> 63.28%
main/SB/Core/x/xFX - .text +52 bytes -> 100.00%
📈 main/SB/Core/x/xFX - xFXRenderProximityFade(const xModelInstance&, float, float) +4 bytes -> 0.25%
📈 main/SB/Core/x/xFX - xFXFireworksUpdate(float) +880 bytes -> 81.78%
📈 main/SB/Core/x/xFX - xFXShineRender() +4 bytes -> 0.40%
📈 main/SB/Core/x/xFX - xFXShineUpdate(float) +4 bytes -> 0.46%
📈 main/SB/Core/x/xFX - xFXStreakUpdate(float) +4 bytes -> 0.68%
📈 main/SB/Core/x/xFX - xFXStreakStart(float, float, float, unsigned int, const iColor_tag*, const iColor_tag*, int) +4 bytes -> 0.69%
📈 main/SB/Core/x/xFX - xFXAuraUpdate(float) +4 bytes -> 0.74%
📈 main/SB/Core/x/xFX - xFXStreakRender() +4 bytes -> 0.74%
📈 main/SB/Core/x/xFX - xFXAuraRender() +4 bytes -> 0.94%
📈 main/SB/Core/x/xFX - xFXBubbleRender(RpAtomic*) +4 bytes -> 1.25%
📈 main/SB/Core/x/xFX - xFXShinyRender(RpAtomic*) +4 bytes -> 1.25%
📈 main/SB/Core/x/xFX - xFXAuraAdd(void*, xVec3*, iColor_tag*, float) +4 bytes -> 1.69%
📈 main/SB/Core/x/xFX - xFXRingCreate(const xVec3*, const xFXRing*) +3 bytes -> 70.69%
📈 main/SB/Core/x/xFX - xFXRibbon::insert(const xVec3&, float, float, float, unsigned int) +4 bytes -> 1.72%
📈 main/SB/Core/x/xFX - xFXRibbonRender() +3 bytes -> 1.82%
📈 main/SB/Core/x/xFX - xFXStreakUpdate(unsigned int, const xVec3*, const xVec3*) +4 bytes -> 1.89%
📈 main/SB/Core/x/xFX - xFXRibbon::insert(const xVec3&, const xVec3&, float, float, unsigned int) +4 bytes -> 1.89%
📈 main/SB/Core/x/xFX - MaterialSetEnvMap(RpMaterial*, void*) +172 bytes -> 84.31%
main/SB/Core/x/xFX - MaterialSetBumpEnvMap(RpMaterial*, RwTexture*, float, RwTexture*, float) +204 bytes -> 100.00%
main/SB/Core/x/xFX - xFXFireworksInit(const char*, const char*, const char*, const char*, const char*) +200 bytes -> 100.00%
📈 main/SB/Core/x/xFX - MaterialSetEnvMap2(RpMaterial*, void*) +128 bytes -> 71.11%
📈 main/SB/Core/x/xFX - tier_queue<xFXRibbon::joint_data>::clear() +4 bytes -> 2.27%
main/SB/Core/x/xFX - xFXAtomicEnvMapSetup(RpAtomic*, unsigned int, float) +172 bytes -> 100.00%
📈 main/SB/Core/x/xFX - MaterialSetBumpMap(RpMaterial*, void*) +4 bytes -> 2.78%
📈 main/SB/Core/x/xFX - xFXRibbon::init(const char*, const char*) +4 bytes -> 2.86%
📈 main/SB/Core/x/xFX - xFXFireworksLaunch(float, const xVec3*, float) +104 bytes -> 90.00%
📈 main/SB/Core/x/xFX - xFXStreakInit() +4 bytes -> 3.70%
📈 main/SB/Core/x/xFX - xFXShineInit() +4 bytes -> 3.85%
📈 main/SB/Core/x/xFX - xFXRibbonUpdate(float) +4 bytes -> 3.85%
main/SB/Core/x/xFX - xFXRibbon::refresh_config() +96 bytes -> 100.00%
📈 main/SB/Core/x/xFX - xFXanimUVSetAngle(float) +72 bytes -> 78.26%
📈 main/SB/Core/x/xFX - xFXanimUV2PSetAngle(float) +4 bytes -> 4.35%
📈 main/SB/Core/x/xFX - AtomicSetEnvMap(RpAtomic*, void*) +4 bytes -> 4.55%
📈 main/SB/Core/x/xFX - xFXRibbon::set_texture(unsigned int) +4 bytes -> 5.00%
📈 main/SB/Core/x/xFX - xFXAuraInit() +4 bytes -> 5.00%
📈 main/SB/Core/x/xFX - xFXRibbonSceneEnter() +4 bytes -> 5.26%
📈 main/SB/Core/x/xFX - xFXStreakStop(unsigned int) +4 bytes -> 5.88%
📈 main/SB/Core/x/xFX - xFXanimUVCreate() +4 bytes -> 6.25%
main/SB/Core/x/xFX - xFXRibbon::set_default_config() +64 bytes -> 100.00%
📈 main/SB/Core/x/xFX - xFXRibbon::set_curve(const xFXRibbon::curve_node*, unsigned long) +4 bytes -> 6.67%
📈 main/SB/Core/x/xFX - xFXRibbon::set_texture(const char*) +4 bytes -> 6.67%
📈 main/SB/Core/x/xFX - xFXRibbon::set_texture(RwTexture*) +4 bytes -> 7.69%
main/SB/Core/x/xFX - xParInterp::set(float, float, float, unsigned int) +52 bytes -> 100.00%
📈 main/SB/Core/x/xFX - xFXSceneFinish() +4 bytes -> 10.00%
📈 main/SB/Core/x/xFX - xFXSceneSetup() +4 bytes -> 11.11%
📈 main/SB/Core/x/xFX - xFXanimUVAtomicSetup(RpAtomic*) +4 bytes -> 14.29%
main/SB/Core/x/xFX - xFXanimUVSetTranslation(const xVec3*) +24 bytes -> 100.00%
main/SB/Core/x/xFX - xFXanimUVSetScale(const xVec3*) +24 bytes -> 100.00%
📈 main/SB/Core/x/xFX - xFXanimUV2PSetTranslation(const xVec3*) +4 bytes -> 16.67%
main/SB/Core/x/xFX - xFXanimUV2PSetScale(const xVec3*) +24 bytes -> 100.00%
main/SB/Core/x/xFX - xFXanimUV2PSetTexture(RwTexture*) +8 bytes -> 100.00%
📈 main/SB/Core/x/xFX - xFXShineStart(const xVec3*, float, float, float, float, unsigned int, const iColor_tag*, const iColor_tag*, float, int) +4 bytes -> 50.00%

@bfbbdecomp bfbbdecomp deleted a comment from github-actions bot May 24, 2025
@github-actions
Copy link

🆗 ✅

+2480 bytes
🆗 Bot Rating: Amazing contribution, you are the decomp GOAT 🐐

No Regressions 🎉

Progress: 57

📈 main/SB/Core/x/xFX - .text +2316 bytes -> 17.80%
📈 main/SB/Core/x/xFX - .text +4 bytes -> 0.15%
📈 main/SB/Core/x/xFX - .rodata +9 bytes -> 29.48%
📈 main/SB/Core/x/xFX - .sdata2 +101 bytes -> 63.28%
main/SB/Core/x/xFX - .text +52 bytes -> 100.00%
📈 main/SB/Core/x/xFX - xFXRenderProximityFade(const xModelInstance&, float, float) +4 bytes -> 0.25%
📈 main/SB/Core/x/xFX - xFXFireworksUpdate(float) +880 bytes -> 81.78%
📈 main/SB/Core/x/xFX - xFXShineRender() +4 bytes -> 0.40%
📈 main/SB/Core/x/xFX - xFXShineUpdate(float) +4 bytes -> 0.46%
📈 main/SB/Core/x/xFX - xFXStreakUpdate(float) +4 bytes -> 0.68%
📈 main/SB/Core/x/xFX - xFXStreakStart(float, float, float, unsigned int, const iColor_tag*, const iColor_tag*, int) +4 bytes -> 0.69%
📈 main/SB/Core/x/xFX - xFXAuraUpdate(float) +4 bytes -> 0.74%
📈 main/SB/Core/x/xFX - xFXStreakRender() +4 bytes -> 0.74%
📈 main/SB/Core/x/xFX - xFXAuraRender() +4 bytes -> 0.94%
📈 main/SB/Core/x/xFX - xFXBubbleRender(RpAtomic*) +4 bytes -> 1.25%
📈 main/SB/Core/x/xFX - xFXShinyRender(RpAtomic*) +4 bytes -> 1.25%
📈 main/SB/Core/x/xFX - xFXAuraAdd(void*, xVec3*, iColor_tag*, float) +4 bytes -> 1.69%
📈 main/SB/Core/x/xFX - xFXRingCreate(const xVec3*, const xFXRing*) +3 bytes -> 70.69%
📈 main/SB/Core/x/xFX - xFXRibbon::insert(const xVec3&, float, float, float, unsigned int) +4 bytes -> 1.72%
📈 main/SB/Core/x/xFX - xFXRibbonRender() +3 bytes -> 1.82%
📈 main/SB/Core/x/xFX - xFXStreakUpdate(unsigned int, const xVec3*, const xVec3*) +4 bytes -> 1.89%
📈 main/SB/Core/x/xFX - xFXRibbon::insert(const xVec3&, const xVec3&, float, float, unsigned int) +4 bytes -> 1.89%
📈 main/SB/Core/x/xFX - MaterialSetEnvMap(RpMaterial*, void*) +172 bytes -> 84.31%
main/SB/Core/x/xFX - MaterialSetBumpEnvMap(RpMaterial*, RwTexture*, float, RwTexture*, float) +204 bytes -> 100.00%
main/SB/Core/x/xFX - xFXFireworksInit(const char*, const char*, const char*, const char*, const char*) +200 bytes -> 100.00%
📈 main/SB/Core/x/xFX - MaterialSetEnvMap2(RpMaterial*, void*) +128 bytes -> 71.11%
📈 main/SB/Core/x/xFX - tier_queue<xFXRibbon::joint_data>::clear() +4 bytes -> 2.27%
main/SB/Core/x/xFX - xFXAtomicEnvMapSetup(RpAtomic*, unsigned int, float) +172 bytes -> 100.00%
📈 main/SB/Core/x/xFX - MaterialSetBumpMap(RpMaterial*, void*) +4 bytes -> 2.78%
📈 main/SB/Core/x/xFX - xFXRibbon::init(const char*, const char*) +4 bytes -> 2.86%
📈 main/SB/Core/x/xFX - xFXFireworksLaunch(float, const xVec3*, float) +104 bytes -> 90.00%
📈 main/SB/Core/x/xFX - xFXStreakInit() +4 bytes -> 3.70%
📈 main/SB/Core/x/xFX - xFXShineInit() +4 bytes -> 3.85%
📈 main/SB/Core/x/xFX - xFXRibbonUpdate(float) +4 bytes -> 3.85%
main/SB/Core/x/xFX - xFXRibbon::refresh_config() +96 bytes -> 100.00%
📈 main/SB/Core/x/xFX - xFXanimUVSetAngle(float) +72 bytes -> 78.26%
📈 main/SB/Core/x/xFX - xFXanimUV2PSetAngle(float) +4 bytes -> 4.35%
📈 main/SB/Core/x/xFX - AtomicSetEnvMap(RpAtomic*, void*) +4 bytes -> 4.55%
📈 main/SB/Core/x/xFX - xFXRibbon::set_texture(unsigned int) +4 bytes -> 5.00%
📈 main/SB/Core/x/xFX - xFXAuraInit() +4 bytes -> 5.00%
📈 main/SB/Core/x/xFX - xFXRibbonSceneEnter() +4 bytes -> 5.26%
📈 main/SB/Core/x/xFX - xFXStreakStop(unsigned int) +4 bytes -> 5.88%
📈 main/SB/Core/x/xFX - xFXanimUVCreate() +4 bytes -> 6.25%
main/SB/Core/x/xFX - xFXRibbon::set_default_config() +64 bytes -> 100.00%
📈 main/SB/Core/x/xFX - xFXRibbon::set_curve(const xFXRibbon::curve_node*, unsigned long) +4 bytes -> 6.67%
📈 main/SB/Core/x/xFX - xFXRibbon::set_texture(const char*) +4 bytes -> 6.67%
📈 main/SB/Core/x/xFX - xFXRibbon::set_texture(RwTexture*) +4 bytes -> 7.69%
main/SB/Core/x/xFX - xParInterp::set(float, float, float, unsigned int) +52 bytes -> 100.00%
📈 main/SB/Core/x/xFX - xFXSceneFinish() +4 bytes -> 10.00%
📈 main/SB/Core/x/xFX - xFXSceneSetup() +4 bytes -> 11.11%
📈 main/SB/Core/x/xFX - xFXanimUVAtomicSetup(RpAtomic*) +4 bytes -> 14.29%
main/SB/Core/x/xFX - xFXanimUVSetTranslation(const xVec3*) +24 bytes -> 100.00%
main/SB/Core/x/xFX - xFXanimUVSetScale(const xVec3*) +24 bytes -> 100.00%
📈 main/SB/Core/x/xFX - xFXanimUV2PSetTranslation(const xVec3*) +4 bytes -> 16.67%
main/SB/Core/x/xFX - xFXanimUV2PSetScale(const xVec3*) +24 bytes -> 100.00%
main/SB/Core/x/xFX - xFXanimUV2PSetTexture(RwTexture*) +8 bytes -> 100.00%
📈 main/SB/Core/x/xFX - xFXShineStart(const xVec3*, float, float, float, float, unsigned int, const iColor_tag*, const iColor_tag*, float, int) +4 bytes -> 50.00%

@mattbruv mattbruv merged commit e1a527f into bfbbdecomp:main May 25, 2025
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants