Releases: snowkit/differ
Releases · snowkit/differ
differ 1.4.0 stable
differ 1.3.0 stable
This release was quite a while in progress!
The goal of this release is as follows :
- Reduce the usage of Vector internally, simplifying the code to primitives
- Remove allocations, myriads of them the old code had that carried over
- Add ways to reuse allocated results for efficiency when querying
- Add more test/example cases
- Expose the alternative polygon vs shape overlaps to make better choices based on movement
- Move the code more forward to be internally consistent and maintainable
- Fix the bugs with the rays and add more useful infinite flags
All of this was achieved, with the following changes.
- Refactor continued clean up
- remove all allocations in SAT2D, except for results if not provided
- refactor away internal uses of
Vector - remove superfluous use of
Vectorin the APIShapeDrawer:drawLine,drawPointCollision.pointInPoly
- Added
Rayinfinite mode instead of boolean- Not infinite
- Infinite from start position
- Infinite in both directions
- Added
Raystest in usage0 - Added ShapeCollision/RayCollision/RayIntersection
- added
clone(),copy_from(other),reset()
- added
- Added differ.math.Util
- removes internal SAT2D use of the
Vectorclass
- removes internal SAT2D use of the
- Added
intoargument for all internal and external calls- this reuses the existing instance for the result
- all calls will always reset the collision result
- all direct calls still return null as "no result"
- added
Results<T>results cache helper - all plural calls return
Results<T>
- Fixed Bug in
testCircleVsPolygon- When testing polygon vs circle values were flipped/wrong
- Fixed Bug in
rayVsRaywith a negative overlap - Removed
Commonutil class, it's internal to SAT2D and simplified now - Removed
drawVectorinShapeDrawer, wasn't used (usedrawLineif needed)
differ 1.2.0 stable
The biggest change for sure, renamed hxcollision to differ
Now that the library is getting more use its better to have a consistent name
and to have a more explicit path. Think of "differ" as a diff tool for shapes/rays,
it tells you how shapes differ (i.e the separation).
Change notes, thanks to @PDeveloper for work on the the rays and @ubald for fixes and testing.
- Added ray collision information, rather than just true/false
- Added ray vs ray intersection with info on overlap
- Added more granular tests, that will expand further
- New test case uses luxe http://luxeengine.com/
- hxcollision/differ was born for luxe.collision, separate for any framework
- Refactor continued separating code for future 3D vs 2D
- moved all internal 2D code into differ.sat.SAT2D
- moved all internal common code into differ.sat.Common
- Renamed
Collision.testtoCollision.shapeWithShape - Renamed
Collision.testShapestoCollision.shapeWithShapes - Renamed
Collision.rayShapetoCollision.rayWithShape - Renamed
Collision.rayShapestoCollision.rayWithShapes - Renamed
Collision.rayRaytoCollision.rayWithRay - Renamed
Collision.rayRaystoCollision.rayWithRays - Renamed
Collision.rayRaystoCollision.rayWithRays - Renamed
data.CollisionDatatodata.ShapeCollision - Renamed
data.RayCollisionDatatodata.RayCollision - Renamed
data.RayIntersectionDatatodata.RayIntersection - Removed
OpenFLDrawer, will replace with gist or test later
hxcollision 1.1.0 stable
This release adds many bug fixes and some new examples thanks to @Dvergar, documentation, and a much needed api cleanup of the code toward a more consistent reliable library.
- Added documentation and clean up of code
- Renamed
Vector2DtoVectorand cleaned up code to ONLY what is needed. This class is meant to be as small and easy to integrate as possible. - Refactored for easier maintaining in embedded libraries
- Added documentation and clean up of code
- Renamed
BaseShapetoShape, continued refactoring - Renamed
Collision.testShapestoCollision.test - Renamed
Collision.testShapeListtoCollision.testShapes - Renamed
Collision.rayCollisiontoCollision.ray - Fixed various bugs in collisions
- Fixed
separation/unitVectorbehaviour (signs bugs) - Fixed bug with
Polygon/Polygoncollisions not returning best vectors - Fixed bug where you couldn't
beginFillusingOpenFLDrawer - Fixed
collisionDatainCheckCircles, shape2 wasn't assigned. separation/unitVectoris now bound to shape1- Added 2 samples (usage2 & usage3)
- Added
drawVectorinOpenFLDrawershowing vector direction - Added
drawShapeinShapeDrawer, will cast proper types and call appropriate drawing functions.
hxcollision 1.0.4 stable
- Renamed Polygon.normalPolygon to Polygon.create
- Added testShapeList for testing one shape with many
- Added changes to the test to display the unitVector response (soon to be renamed also)
- Migrating to more integration friendly api, and more logical order of arguments for shapes.
- Making rotation on the base shapes absolute (submitted by @grapefrukt).
- Adding name and data flag to BaseShape
Haxelib v1.0.3 stable release
Stable release on haxelib tagged at 1.0.3.
1.0.3
- Fixed bug in circle vs polygon, when polygon was rotated.
- Added line raycast with collision shapes
- Added a custom ShapeDrawer class, for drawing the shapes in a non specific way.
- Moved to latest haxelib revisions
- Removed dependency on OpenFL, now completely standalone