0
0
Fork 0
mirror of https://github.com/liabru/matter-js.git synced 2024-11-22 09:16:48 -05:00
liabru-matter-js/RELEASE.md
2024-06-23 22:10:10 +01:00

18 KiB
Raw Permalink Blame History

▲.●matter.js0.20.0

Release notes for 0.20.0. See the release readme for further information.

Highlights

  • added support for high refresh rate displays with fixed timestep in Matter.Runner
  • added support for sub-stepping for higher quality simulations in Matter.Runner
  • changed to a fixed timestep by default in Matter.Runner
  • improved frame pacing and average performance up to ~6% (see #1238)
  • reduced average memory usage up to ~30% (see #1238)
  • reduced memory garbage collection
  • bug fixes and improvements see changelog

Changes

See the release compare page and the changelog for a detailed list of changes.

Migration ⌲

Matter.Runner related changes #1254:

  • Matter.Runner now defaults to a fixed deterministic timestep and support for non-fixed timestep is removed
  • optionally set your performance budgets runner.maxFrameTime (see docs)
  • note that Matter.Runner can now call zero, one, or multiple engine updates and events per display frame (see docs)
  • if needed set up your polyfill for window.requestAnimationFrame
  • see Matter.Runner updated docs throughout

Performance related changes #1238:

  • Matter.Collision use collision.supportCount instead of collision.supports.length for active support count
  • Matter.Pair use pair.contacts instead of pair.activeContacts
  • Matter.Pair use pair.contactCount instead of pair.contacts.length for active contact count
  • Pair.id format has changed

Comparison

For more information see comparison method.

Output sample comparison estimates of 44 examples against previous release matter-js@0.19.0:  

Similarity     99.80%    Overlap    -1.92%   Filesize   +3.38%  81.58 KB  

airFriction · · avalanche  · ballPool  · bridge  · car  · catapult  · 
chains  · circleStack · · cloth  · collisionFiltering  · compositeManipulation  · 
compound · · compoundStack  · concave  · constraints  · doublePendulum · · 
events  · friction · · gravity  · gyro  · manipulation   
mixed  · newtonsCradle · · pyramid  · ragdoll  · raycasting  · 
remove   restitution · · rounded  · sensors · · sleeping   
slingshot  · softBody  · sprites  · stack · · staticFriction  · 
stats  · stress  · stress2  · stress3  · stress4  · 
timescale  · views  · wreckingBall  ·   

where for the sample  · no change detected   extrinsics changed   intrinsics changed

Contributors

Many thanks to the contributors of this release, past contributors as well those involved in the community for your input and support.


▲.●matter.js0.19.0

Release notes for 0.19.0. See the release readme for further information.

Highlights

  • Changed Body.setAngularVelocity and Body.setVelocity to be timestep independent
  • Improved similarity of results between different timesteps based on 60hz as a baseline
  • Added timestep independent Body.setSpeed, Body.setAngularSpeed, Body.getSpeed, Body.getVelocity, Body.getAngularVelocity
  • Added optional updateVelocity argument to Body.setPosition, Body.setAngle, Body.translate, Body.rotate
  • Added extended documentation for Body.applyForce
  • Moved time correction feature from Engine.update to be built-in to Matter.Body
  • Improved documentation pages

Changes

See the release compare page and the changelog for a more detailed list of changes.

Migration ⌲

See PR #777 for related changes and notes useful for migration.

Comparison

For more information see comparison method.

Output comparison of 43 examples at 60hz against previous release matter-js@0.18.0

Behaviour    100.00%   Similarity  100.00%   Overlap   +0.00%  
Performance  -0.80%   Memory      +0.05%   Filesize  +1.67%  78.97 KB  

airFriction · · avalanche · · ballPool · · bridge · · car · · catapult · · 
chains · · circleStack · · cloth · · collisionFiltering · · compositeManipulation · · 
compound · · compoundStack · · concave · · constraints · · doublePendulum · · 
events · · friction · · gravity · · gyro · · manipulation · · 
mixed · · newtonsCradle · · pyramid · · ragdoll · · raycasting · · 
remove · · restitution · · rounded · · sensors · · sleeping · 
slingshot · · softBody · · sprites · · stack · · staticFriction · · 
stats · · stress · · stress2 · · stress3 · · timescale · · 
views · · wreckingBall · ·   

where  · no change   extrinsics changed   intrinsics changed
    
 code -n -d test/__compare__/examples-build.json test/__compare__/examples-dev.json

Contributors

Many thanks to the contributors of this release, past contributors as well those involved in the community for your input and support.


▲.●matter.js0.18.0

Release notes for 0.18.0. See the release readme for further information.

Highlights

  • Up to ~40% performance improvement (on average measured over all examples, in Node on a Mac Air M1)
  • Replaces Matter.Grid with a faster and more efficient broadphase in Matter.Detector
  • Reduced memory usage and garbage collection
  • Resolves issues in Matter.SAT related to collision reuse
  • Removes performance issues from Matter.Grid
  • Improved collision accuracy
  • Improved API and docs for collision modules
  • Improved documentation pages
  • Added note about avoiding Webpack performance problems

Changes

See the release compare page and the changelog for a detailed list of changes.

Migration ⌲

Comparison

Differences in behaviour, quality and performance against the previous release 0.17.1. For more information see comparison method.

Output comparison of 43 examples against previous release matter-js@0.17.1  

Behaviour    99.99%   Similarity  99.98%   Overlap   -0.00%  
Performance  +40.62%   Memory      -6.18%   Filesize  -0.16%  77.73 KB  

airFriction · · avalanche  · ballPool · · bridge · · car · · catapult · · 
chains · · circleStack · · cloth · · collisionFiltering · · compositeManipulation  · 
compound · · compoundStack · · concave · · constraints  · doublePendulum · · 
events · · friction · · gravity · · gyro · · manipulation ·  
mixed · · newtonsCradle · · pyramid · · ragdoll · · raycasting · · 
remove · · restitution · · rounded · · sensors · · sleeping ·  
slingshot · · softBody · · sprites · · stack · · staticFriction · · 
stats · · stress · · stress2 · · stress3 · · timescale · · 
views · · wreckingBall · ·   

where  · no change   extrinsics changed   intrinsics changed

Contributors

Many thanks to the contributors of this release, past contributors as well those involved in the community for your input and support.


▲.●matter.js0.17.0

Release notes for 0.17.0. See the release readme for further information.

Highlights

Changes

See the release compare page and the changelog for a detailed list of changes.

Comparison

Differences in behaviour, quality and performance against the previous release 0.16.1. For more information see comparison method.

Output comparison of 37 examples against previous release matter-js@0.16.1  

Similarity  100%  Performance  +0.00%  Overlap  +0.00%  

airFriction · · avalanche · · ballPool · · bridge · · broadphase · · car · · 
catapult · · chains · · circleStack · · cloth · · collisionFiltering · · 
compound · · compoundStack · · constraints · · events · · friction · · 
gyro · · manipulation · · mixed · · newtonsCradle · · pyramid · · 
ragdoll · · restitution · · rounded · · sensors · · sleeping · · 
slingshot · · softBody · · sprites · · stack · · staticFriction · · 
stats · · stress · · stress2 · · timescale · · views · · 
wreckingBall · ·   
where  · no change   extrinsics changed   intrinsics changed
    

Contributors

Many thanks to the contributors of this release, past contributors as well those involved in the community for your input and support.


▲.●matter.js0.16.0

Release notes for 0.16.0. See the release readme for further information.

Highlights

  • Changed external require method for poly-decomp (882e07c)
  • Improved Bodies.fromVertices decomposition quality using removeDuplicatePoints (#639)
  • Added support for >x.x.x and >=x.x.x semver ranges in plugins (0792716)
  • Changed demo example select background colour for Windows (matter-tools #5)
  • Updated demo to use latest matter-tools (#33e8fe8)
  • Updated SVG and terrain examples to use fetch (5551cd5)

Changes

See the release compare page and the changelog for a detailed list of changes.

Comparison

Differences in behaviour, quality and performance against the previous release 0.15.0. For more information see comparison method.

Output comparison of 41 examples against matter-js@0.15.0 build on last run  

Similarity  100%  Performance  +0.00%  Overlap  +0.00%  

airFriction · · avalanche · · ballPool · · bridge · · broadphase · · car · · 
catapult · · chains · · circleStack · · cloth · · collisionFiltering · · 
compositeManipulation · · compound · · compoundStack · · concave · · constraints · · 
doublePendulum · · events · · friction · · gravity · · gyro · · 
manipulation · · mixed · · newtonsCradle · · pyramid · · ragdoll · · 
raycasting · · restitution · · rounded · · sensors · · sleeping · · 
slingshot · · softBody · · sprites · · stack · · staticFriction · · 
stress · · stress2 · · timescale · · views · · wreckingBall · · 
  
where  · no change   extrinsics changed   intrinsics changed
    

Contributors

Many thanks to the contributors of this release, past contributors as well those involved in the community for your input and support.


▲.●matter.js0.15.0

Release notes for 0.15.0. See the release readme for further information.

Highlights

  • Optimised performance up to ~30% boost vs. 0.14.2 (#528) (#522) (#553)
  • Added Body.setCentre (2ec247b)
  • Added Constraint.pointAWorld and Constraint.pointBWorld (3c32969)
  • Changed default colour scheme (d258411) (6dd5ec5)
  • Fixed issues with decomp require (0af1645)
  • Fixed issues with render pixel ratio (d577477)

Changes

See the release compare page and the changelog for a detailed list of all changes.

Comparison

Differences in behaviour, quality and performance against the previous release 0.14.2. For more information see comparison method.

Output comparison of 41 examples against matter-js@0.14.2 build on last run  

Similarity  100%  Performance  +33.6%  Overlap  +0.00%  

airFriction · · avalanche · · ballPool · · bridge · · broadphase · · car · · 
catapult · · chains · · circleStack · · cloth · · collisionFiltering · · 
compositeManipulation · · compound · · compoundStack · · concave · · constraints · · 
doublePendulum · · events · · friction · · gravity · · gyro · · 
manipulation · · mixed · · newtonsCradle · · pyramid · · ragdoll · · 
raycasting · · restitution · · rounded · · sensors · · sleeping · · 
slingshot · · softBody · · sprites · · stack · · staticFriction · · 
stress · · stress2 · · timescale · · views · · wreckingBall · · 
  
where  · no change   extrinsics changed   intrinsics changed
    

Contributors

Many thanks to the contributors of this release, past contributors as well those involved in the community for your input and support.