Skip to content

Latest commit

 

History

History
313 lines (213 loc) · 17.6 KB

RELEASE.md

File metadata and controls

313 lines (213 loc) · 17.6 KB

▲.● matter.js 0.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.js 0.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.js 0.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.js 0.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.js 0.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.js 0.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.