Skip to content

xEntBoulder work#649

Merged
JoshSanch merged 4 commits intobfbbdecomp:mainfrom
escape209:xentboulder
Nov 21, 2025
Merged

xEntBoulder work#649
JoshSanch merged 4 commits intobfbbdecomp:mainfrom
escape209:xentboulder

Conversation

@escape209
Copy link
Contributor

Few variable names not right but I feel like I need to understand the code better to give more accurate variable names.

@github-actions
Copy link

main/SB/Core/x/xEntBoulder

Section From To Bytes
.bss 0.00% 100.00% +1464
.data 0.00% 100.00% +192
.rodata 0.00% 100.00% +80
.sdata 0.00% 100.00% +8
📈 .sdata2 14.29% 96.00% +84
📈 .text 3.00% 79.14% +8835
Function From To Bytes
📈 xEntBoulder_Render(xEnt*) 0.00% 96.25% +277
📈 xEntBoulder_Init(xEntBoulder*, xEntAsset*) 0.00% 99.86% +531
xEntBoulder_ApplyForces(xEntCollis*) 0.00% 100.00% +236
xEntBoulder_RealBUpdate(xEnt*, xVec3*) 0.00% 100.00% +104
📈 xEntBoulder_Update(xEntBoulder*, xScene*, float) 0.00% 99.98% +3495
xEntBoulder_KilledBySurface(xEntBoulder*, xScene*, float) 0.00% 100.00% +616
xEntBoulder_Kill(xEntBoulder*) 0.00% 100.00% +116
📈 xEntBoulder_BubbleBowl(float) 0.00% 97.20% +828
xEntBoulder_Reset(xEntBoulder*, xScene*) 0.00% 100.00% +348
xBoulderGenerator_Init(xBase&, xDynAsset&, unsigned long) 0.00% 100.00% +32
xBoulderGenerator_Init(xBoulderGenerator*, xBoulderGeneratorAsset*) 0.00% 100.00% +428
xBoulderGenerator_Reset(xBoulderGenerator*) 0.00% 100.00% +120
BoulderGen_GiveBirth(xBoulderGenerator*, int) 0.00% 100.00% +68
GetBoulderForGenerating(xBoulderGenerator*) 0.00% 100.00% +360
xBoulderGenerator_Launch(xBoulderGenerator*, xVec3*, float) 0.00% 100.00% +424
xBoulderGenerator_EventCB(xBase*, xBase*, unsigned int, const float*, xBase*) 0.00% 100.00% +752
xMat3x3RMulVec(xVec3*, const xMat3x3*, const xVec3*) 0.00% 100.00% +100

@escape209 escape209 marked this pull request as draft November 19, 2025 15:26
@github-actions
Copy link

main/SB/Core/x/xEntBoulder

Section From To Bytes
.bss 0.00% 100.00% +1464
.data 0.00% 100.00% +192
.rodata 0.00% 100.00% +80
.sdata 0.00% 100.00% +8
📈 .sdata2 14.29% 96.00% +84
📈 .text 3.00% 79.14% +8835
Function From To Bytes
📈 xEntBoulder_Render(xEnt*) 0.00% 96.25% +277
📈 xEntBoulder_Init(xEntBoulder*, xEntAsset*) 0.00% 99.86% +531
xEntBoulder_ApplyForces(xEntCollis*) 0.00% 100.00% +236
xEntBoulder_RealBUpdate(xEnt*, xVec3*) 0.00% 100.00% +104
📈 xEntBoulder_Update(xEntBoulder*, xScene*, float) 0.00% 99.98% +3495
xEntBoulder_KilledBySurface(xEntBoulder*, xScene*, float) 0.00% 100.00% +616
xEntBoulder_Kill(xEntBoulder*) 0.00% 100.00% +116
📈 xEntBoulder_BubbleBowl(float) 0.00% 97.20% +828
xEntBoulder_Reset(xEntBoulder*, xScene*) 0.00% 100.00% +348
xBoulderGenerator_Init(xBase&, xDynAsset&, unsigned long) 0.00% 100.00% +32
xBoulderGenerator_Init(xBoulderGenerator*, xBoulderGeneratorAsset*) 0.00% 100.00% +428
xBoulderGenerator_Reset(xBoulderGenerator*) 0.00% 100.00% +120
BoulderGen_GiveBirth(xBoulderGenerator*, int) 0.00% 100.00% +68
GetBoulderForGenerating(xBoulderGenerator*) 0.00% 100.00% +360
xBoulderGenerator_Launch(xBoulderGenerator*, xVec3*, float) 0.00% 100.00% +424
xBoulderGenerator_EventCB(xBase*, xBase*, unsigned int, const float*, xBase*) 0.00% 100.00% +752
xMat3x3RMulVec(xVec3*, const xMat3x3*, const xVec3*) 0.00% 100.00% +100

@escape209 escape209 marked this pull request as ready for review November 19, 2025 16:15
@github-actions
Copy link

main/SB/Core/x/xEntBoulder

Section From To Bytes
.bss 0.00% 100.00% +1464
.data 0.00% 100.00% +192
.rodata 0.00% 100.00% +80
.sdata 0.00% 100.00% +8
📈 .sdata2 14.29% 96.00% +84
📈 .text 3.00% 79.14% +8835
Function From To Bytes
📈 xEntBoulder_Render(xEnt*) 0.00% 96.25% +277
📈 xEntBoulder_Init(xEntBoulder*, xEntAsset*) 0.00% 99.86% +531
xEntBoulder_ApplyForces(xEntCollis*) 0.00% 100.00% +236
xEntBoulder_RealBUpdate(xEnt*, xVec3*) 0.00% 100.00% +104
📈 xEntBoulder_Update(xEntBoulder*, xScene*, float) 0.00% 99.98% +3495
xEntBoulder_KilledBySurface(xEntBoulder*, xScene*, float) 0.00% 100.00% +616
xEntBoulder_Kill(xEntBoulder*) 0.00% 100.00% +116
📈 xEntBoulder_BubbleBowl(float) 0.00% 97.20% +828
xEntBoulder_Reset(xEntBoulder*, xScene*) 0.00% 100.00% +348
xBoulderGenerator_Init(xBase&, xDynAsset&, unsigned long) 0.00% 100.00% +32
xBoulderGenerator_Init(xBoulderGenerator*, xBoulderGeneratorAsset*) 0.00% 100.00% +428
xBoulderGenerator_Reset(xBoulderGenerator*) 0.00% 100.00% +120
BoulderGen_GiveBirth(xBoulderGenerator*, int) 0.00% 100.00% +68
GetBoulderForGenerating(xBoulderGenerator*) 0.00% 100.00% +360
xBoulderGenerator_Launch(xBoulderGenerator*, xVec3*, float) 0.00% 100.00% +424
xBoulderGenerator_EventCB(xBase*, xBase*, unsigned int, const float*, xBase*) 0.00% 100.00% +752
xMat3x3RMulVec(xVec3*, const xMat3x3*, const xVec3*) 0.00% 100.00% +100

xVec3 shadVec;
F32 radius;

if ((model != NULL) && (xEntIsVisible(ent) != 0))
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
if ((model != NULL) && (xEntIsVisible(ent) != 0))
if ((model != NULL) && (xEntIsVisible(ent) != FALSE))

case 0:
if (ent->flags & 0x40)
{
if (iModelCull(model->Data, model->Mat) == 0)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
if (iModelCull(model->Data, model->Mat) == 0)
if (!iModelCull(model->Data, model->Mat))

shadVec.y = model->Mat->pos.y - 10.0f;
shadVec.z = model->Mat->pos.z;

if (iModelCullPlusShadow(model->Data, model->Mat, &shadVec, &shadowResult) == 0)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
if (iModelCullPlusShadow(model->Data, model->Mat, &shadVec, &shadowResult) == 0)
if (!iModelCullPlusShadow(model->Data, model->Mat, &shadVec, &shadowResult))

xModelRender(model);
}

if (shadowResult == 0)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Generally opt for !truthyValue instead of truthyValue == 0/FALSE) - it's more aligned with project conventions.

xEntBoulderAsset* basset;

xEntInit(ent, asset);
ent->collType = 4;
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please use the coll types xEnt.h, such as XENT_COLLTYPE_DYN.

xEntInit(ent, asset);
ent->collType = 4;
ent->collLev = 4;
ent->bound.type = 1;
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bound type macros can be find in xBound.h - please use that instead.

@github-actions
Copy link

main/SB/Core/x/xEntBoulder

Section From To Bytes
.bss 0.00% 100.00% +1464
.data 0.00% 100.00% +192
.rodata 0.00% 100.00% +80
.sdata 0.00% 100.00% +8
📈 .sdata2 14.29% 96.00% +84
📈 .text 3.00% 79.14% +8835
Function From To Bytes
📈 xEntBoulder_Render(xEnt*) 0.00% 96.25% +277
📈 xEntBoulder_Init(xEntBoulder*, xEntAsset*) 0.00% 99.86% +531
xEntBoulder_ApplyForces(xEntCollis*) 0.00% 100.00% +236
xEntBoulder_RealBUpdate(xEnt*, xVec3*) 0.00% 100.00% +104
📈 xEntBoulder_Update(xEntBoulder*, xScene*, float) 0.00% 99.98% +3495
xEntBoulder_KilledBySurface(xEntBoulder*, xScene*, float) 0.00% 100.00% +616
xEntBoulder_Kill(xEntBoulder*) 0.00% 100.00% +116
📈 xEntBoulder_BubbleBowl(float) 0.00% 97.20% +828
xEntBoulder_Reset(xEntBoulder*, xScene*) 0.00% 100.00% +348
xBoulderGenerator_Init(xBase&, xDynAsset&, unsigned long) 0.00% 100.00% +32
xBoulderGenerator_Init(xBoulderGenerator*, xBoulderGeneratorAsset*) 0.00% 100.00% +428
xBoulderGenerator_Reset(xBoulderGenerator*) 0.00% 100.00% +120
BoulderGen_GiveBirth(xBoulderGenerator*, int) 0.00% 100.00% +68
GetBoulderForGenerating(xBoulderGenerator*) 0.00% 100.00% +360
xBoulderGenerator_Launch(xBoulderGenerator*, xVec3*, float) 0.00% 100.00% +424
xBoulderGenerator_EventCB(xBase*, xBase*, unsigned int, const float*, xBase*) 0.00% 100.00% +752
xMat3x3RMulVec(xVec3*, const xMat3x3*, const xVec3*) 0.00% 100.00% +100

main/dolphin/src/ax/AXAlloc

Section From To Bytes
⚠️ .text 100.00% 97.44% --31
Function From To Bytes
⚠️ AXAcquireVoice 100.00% 91.59% --31

main/dolphin/src/ax/AXCL

Section From To Bytes
⚠️ .text 100.00% 84.77% --277
Function From To Bytes
⚠️ __AXNextFrame 100.00% 83.81% --277

main/dolphin/src/ax/AXOut

Section From To Bytes
⚠️ .text 100.00% 80.41% --391
Function From To Bytes
⚠️ __AXOutInit 100.00% 57.79% --391

main/dolphin/src/ax/AXVPB

Section From To Bytes
⚠️ .data 100.00% 51.11% --109
⚠️ .text 100.00% 90.69% --431
Function From To Bytes
⚠️ __AXServiceVPB 100.00% 90.61% --175
⚠️ __AXSyncPBs 100.00% 84.64% --97
⚠️ __AXVPBInit 100.00% 68.88% --159

main/dolphin/src/ax/DSPCode

Section From To Bytes
⚠️ .data 100.00% 17.67% --6480
⚠️ .sdata 100.00% 0.00% --8
Function From To Bytes

main/dolphin/src/card/CARDUnlock

Section From To Bytes
⚠️ .text 100.00% 99.23% --36
Function From To Bytes
⚠️ __CARDUnlock 100.00% 98.75% --36

main/dolphin/src/exi/EXIBios

Section From To Bytes
Function From To Bytes

main/dolphin/src/gx/GXInit

Section From To Bytes
Function From To Bytes

main/dolphin/src/gx/GXFifo

Section From To Bytes
Function From To Bytes

main/dolphin/src/gx/GXGeometry

Section From To Bytes
⚠️ .text 100.00% 99.49% --4
Function From To Bytes
⚠️ __GXSendFlushPrim 100.00% 96.62% --4

main/dolphin/src/gx/GXLight

Section From To Bytes
⚠️ .text 100.00% 95.44% --70
Function From To Bytes
⚠️ GXSetChanAmbColor 100.00% 92.50% --18
⚠️ GXSetChanMatColor 100.00% 92.50% --18
⚠️ GXSetChanCtrl 100.00% 80.98% --34

main/dolphin/src/gx/GXPixel

Section From To Bytes
⚠️ .text 100.00% 86.18% --222
Function From To Bytes
⚠️ GXSetFog 100.00% 85.40% --80
⚠️ GXSetFogRangeAdj 100.00% 51.27% --142

main/dolphin/src/os/init/__start

Section From To Bytes
⚠️ .text 100.00% 99.48% --4
Function From To Bytes
⚠️ InitMetroTRK_BBA 100.00% 0.00% --4

main/debugger/embedded/MetroTRK/Processor/ppc/Export/targsupp

Section From To Bytes
⚠️ .text 100.00% 0.00% --32
Function From To Bytes
⚠️ TRKAccessFile 100.00% 0.00% --8
⚠️ TRKOpenFile 100.00% 0.00% --8
⚠️ TRKCloseFile 100.00% 0.00% --8
⚠️ TRKPositionFile 100.00% 0.00% --8

main/debugger/embedded/MetroTRK/Processor/ppc/Generic/__exception

Section From To Bytes
⚠️ .init 100.00% 0.00% --7988
Function From To Bytes
⚠️ gTRKInterruptVectorTable 100.00% 0.00% --7988

@github-actions
Copy link

main/SB/Core/x/xEntBoulder

Section From To Bytes
.bss 0.00% 100.00% +1464
.data 0.00% 100.00% +192
.rodata 0.00% 100.00% +80
.sdata 0.00% 100.00% +8
📈 .sdata2 14.29% 96.00% +84
📈 .text 3.00% 79.14% +8835
Function From To Bytes
📈 xEntBoulder_Render(xEnt*) 0.00% 96.25% +277
📈 xEntBoulder_Init(xEntBoulder*, xEntAsset*) 0.00% 99.86% +531
xEntBoulder_ApplyForces(xEntCollis*) 0.00% 100.00% +236
xEntBoulder_RealBUpdate(xEnt*, xVec3*) 0.00% 100.00% +104
📈 xEntBoulder_Update(xEntBoulder*, xScene*, float) 0.00% 99.98% +3495
xEntBoulder_KilledBySurface(xEntBoulder*, xScene*, float) 0.00% 100.00% +616
xEntBoulder_Kill(xEntBoulder*) 0.00% 100.00% +116
📈 xEntBoulder_BubbleBowl(float) 0.00% 97.20% +828
xEntBoulder_Reset(xEntBoulder*, xScene*) 0.00% 100.00% +348
xBoulderGenerator_Init(xBase&, xDynAsset&, unsigned long) 0.00% 100.00% +32
xBoulderGenerator_Init(xBoulderGenerator*, xBoulderGeneratorAsset*) 0.00% 100.00% +428
xBoulderGenerator_Reset(xBoulderGenerator*) 0.00% 100.00% +120
BoulderGen_GiveBirth(xBoulderGenerator*, int) 0.00% 100.00% +68
GetBoulderForGenerating(xBoulderGenerator*) 0.00% 100.00% +360
xBoulderGenerator_Launch(xBoulderGenerator*, xVec3*, float) 0.00% 100.00% +424
xBoulderGenerator_EventCB(xBase*, xBase*, unsigned int, const float*, xBase*) 0.00% 100.00% +752
xMat3x3RMulVec(xVec3*, const xMat3x3*, const xVec3*) 0.00% 100.00% +100

Copy link
Collaborator

@JoshSanch JoshSanch left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@JoshSanch JoshSanch merged commit 80dcce6 into bfbbdecomp:main Nov 21, 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.

2 participants