Releases: JujuAdams/Bonk
Releases · JujuAdams/Bonk
3.4.1-beta
- Fixes
BonkCollideMany*()returning the wrong shape in collision - Fixes edge case in capsule-cylinder collisions
3.4.0 (beta)
- Moves all async workers into a global handler
- ... which fixes a bug where all workers would run at the same time leading to lock-ups in extreme cases
- Adds
BonkAsyncSetBudget()andBonkAsyncGetBudget() - Adds
BonkAsyncGetPendingWorkers()
3.3.0 (beta)
- Fixes
.Collide()and.Touch()shape methods not working with worlds - More supercover fixes
3.2.6 (beta)
- Fixes edge cases in capsule-triangle and capsule-quad collisions
- Adds
toString()methods to result structs to try to solve internal GameMaker freezes when stringifying those structs
Since 3.2.6.1
- Fixes crash in
.GetCellsFromLine() - More supercover fixes, my nemesis
3.2.5 (beta)
- Fixes sphere/capsule vs. tri/quad edge cases
3.2.4 (beta)
- Fixes instance-based BonkWorlds having a collision mask that is slightly too small
- Fixes sphere-AABB collision case where the centre of the sphere is inside the AABB
3.2.3 (beta)
- Adds
BonkFilter()back in. No idea why this disappeared - Fixes capsule-AABB collisions where the capsule axis is inside the AABB
- Fixes input struct being ignored for some direct checker functions
- Fixes raycasting against BonkWorld
- Fixes crash when calling the
.Hit()method on lines/rays - Fixes a crash when a line/ray narrowly misses a cylinder
3.2.2 (beta)
- Adds
.RemoveWorld()to all Bonk structs (instances cannot be added to worlds so this method will do nothing when called on instances) - Fixes line/ray hit freezes in multiple places
- Fixes line/ray hit functions returning bad data
- Adds
BONK_SUPERCOVER_DEBUG. Bonk will show a loud warning if 1) you're running from the IDE and 2) it detects a line/ray hit test is taking too long to process. If you see this warning then please report it so the final algorithmic bugs can be sorted out - Fixes potential use of stagnant data for comparisons in deflect functions
- Works around stupid GameMaker
ds_exists()behaviour. I thought stronger data structure typing was meant to fix this nonsense? - Fixes memory leak when cancelling async load
- Fixes incorrect use of
array_find_index() - Works around
instance_exists()returning false positives
3.2.1 (alpha)
- Roughly doubles the performance of Bonk worlds in most situations (very sparse or very dense geometry probably won't see much of an improvement)
- Adds asynchronous vertex buffer-to-triangle methods to Bonk worlds. Documentation for this functions can be found in
BonkSetupWorld().AddVertexBufferAsync().GetVertexBufferAsyncCount().CancelVertexBufferAsync()
- Adds neighborhood functions to Bonk worlds to help debug collisions. Documentation for this functions can be found in
BonkSetupWorld().DrawNeighborhoodForRange().DrawNeighborhoodForArray().DrawNeighborhoodForShape().DrawNeighborhoodForLine().DrawNeighborhoodForLineExt()
- Potentially fixes lock-up when trying to calculate line/ray collisions using a Bonk world and the starting position is at negative coordinates
Since 3.2.1.1:
- Fixes line/ray hit functions returning bad data when targeting struct worlds
- Fixes potential use of stagnant data for comparisons in deflect functions
- Works around stupid GameMaker
ds_exists()behaviour. I thought stronger data structure typing was meant to fix this nonsense?
Since 3.2.1.2:
- More line/ray hit fixes
- Adds
BONK_SUPERCOVER_DEBUG. Bonk will show a loud warning if 1) you're running from the IDE and 2) it detects a line/ray hit test is taking too long to process. If you see this warning then please report it so the final algorithmic bugs can be sorted out - Fixes memory leak when cancelling async load
Since 3.2.1.3:
- Yet more line/ray hit fixes. Hopefully the last batch
3.1.0 (alpha)
- Adds JSDoc documentation
- Adds variable struct support to instance creators
- Adds
BONK_SET_INSTANCE_DEPTH - Adds
.DebugDrawMask() - Tidies up instance variables
- Removes
.AddVelocty() - Since 3.1.0.1: Fix world
.Deflect()not writing into the inbound struct in all cases leading toBonkMoveAndDeflectExt()rarely returning a useful.deflectType