v3.1.0 Minor Release
Shape Engine » Devlog
Summary
This release addresses various fixes and improvements that were missed in the 3.0 release. Despite introducing some breaking changes, I decided to classify this as a minor release rather than version 4.0, as all the breaking changes pertain to the same systems as the 3.0 release.
FirstContact / ContactEnded System Overhaul:
Previously, the FirstContact was only reported for Colliders and not for CollisionObjects. The system has now been split into two separate systems: one for Collider pairs and one for CollisionObject pairs.
- CollisionObjects:
- A
FirstContactbetween twoCollisionObjectsis reported once anyColliderof one contacts anyColliderof the otherCollisionObject. - The
ContactEnded()function for theCollisionObjectis called once all contacts between all of theCollidershave ended.
- A
- Colliders:
- A
FirstContactbetween twoCollidersis reported the first time they contact (no contact in the previous frame). - The
ColliderContactEnded()function is called once the contact ends (contact in the previous frame but no contact in the current frame).
- A
Other Changes:
- Namespace Changes:
CollisionObjectmoved to theCollisionSystemnamespace.
- Class Removals:
ContactEndedInformationclass removed.Contactclass removed.
- Function Parameter Changes:
ContactEnded(CollisionObject other)function parameters changed.ColliderContactEnded(Collider self, Collider other)function parameters changed.
- CollisionInformation Improvements:
CollisionInformationnow includes aFirstContactmember, reported only for the two involved CollisionObjects, separate from any FirstContact reporting between Colliders.- General improvements and cleanup of
CollisionInformation, including new functions. - New functions for Exists, Find, and FindAll
CollisionPoints. - New functions for finding Closest, Furthest, and Combined
CollisionPoint.
- Collision Improvements:
- Functions for Exists, Find, and FindAll
CollisionPointsadded.
- Functions for Exists, Find, and FindAll
- CollisionPoints:
- GetClosest/Furthest/FacingTowards functions now skip invalid collision points
- Renaming:
GetAverageCollisionPoint()renamed toGetCombinedCollisionPoint()in multiple classes.
- ResolveCollision Update:
CollisionObject.ResolveCollision()is now called for each generatedCollisionInformationinstead of receiving a list ofCollisionInformation.
Release on GitHub.
Files
Shape Engine Examples (v3.1.0) 33 MB
Dec 15, 2024
Shape Engine Examples (v3.1.0) 33 MB
Dec 15, 2024
Get Shape Engine
Download NowName your own price
Shape Engine
Simple 2d Engine focused on drawing shapes rather than using textures/sprites.
| Status | In development |
| Category | Tool |
| Author | Dave Green |
| Tags | 2D, Colorful, Game engine, Pixel Art, shapes, Singleplayer, Top-Down |
| Languages | English |
More posts
- Dev News - DocumentationJul 18, 2025
- Shape Engine - v4.0.4 Patch ReleaseMay 30, 2025
- Shape Engine - v4.0.0 Major ReleaseMay 19, 2025
- Shape Engine - 4.0 Teaser 2 - Rays & LinesFeb 28, 2025
- Shape Engine - 4.0 Teaser - Striped FillFeb 28, 2025
- v3.0.0 Major ReleaseDec 09, 2024
- v2.4.0 Minor ReleaseDec 09, 2024
- v2.3.0 Minor ReleaseDec 09, 2024
- v2.2.0 Minor ReleaseDec 09, 2024

Leave a comment
Log in with itch.io to leave a comment.