Releases: melonjs/melonJS
Releases Β· melonjs/melonJS
v18.0.0
What's Changed
melonJS Team
- Align @types/node version across monorepo to fix type conflicts (230c57e)
- Fix lint errors in test files (dafdff2)
- Update CHANGELOG and fix typo in JSDoc (5af4c0e)
- Fix CI configuration and resolve security vulnerabilities (9abac8f)
- Expand test coverage for camera, container, input, and more (3e8f4ed)
- Replace @teppeis/multimaps with internal ArrayMultimap (1f75477)
- Optimize collision detection and rendering hot paths (e9c32d0)
- Fix collision response and polyline junction tunneling (b60382d)
- bump version to 18.0, removed N-2 deprecated API (36188d4)
- new
backgroundColorproperty for clearing background between frames (ca2f100) - "simplify" anchorPoint definition using a new
ObservablePointclass (c174ca6) - optimize pool implementation for performance (d9b6946)
- new ObservableVector2d class rewrite for better performances (04b47a1)
- improved Observable3d implementation (d934ca5)
- rewrite of the new ObservableVector3d class for better performances (1fd6355)
- fix calling set triggering the callback multiple times (a86adf2)
- optimize uniform setter (5c76b0e)
- Color constructor now also accepts another Color object as parameter (c536693)
- faster Color.clone() method (7daf48b)
- new pool system improvements (45a3a77)
- align accepted arguments for constructor and reset method when using object pool (1d77516)
- fix argument(s) being ignored when passing a
Colorobject directly to the pool get() method (01cbb22) - fix a regression when no parameters are passed to the pool get method (9886e87)
- restore compatibility with the legacy pool system (8904aa0)
- convert
BitmapTextDatato TS and to the new internal pool system (beaece4) - convert
Particleto TS and the new pooling system (c2c3f84) - pooling: rename
destroytorelease(5634eee) - fix base Renderable class
updateanddrawdefinition (f1eaff7) - fix Tween TS declaration (64ca1cf)
- clarify callback is optional for
flicker()(4b1da51) - add missing
Boundstype forfillandstrokeargument (c5d50d6) - fix parseCSS argument type when passing a
#RRGGBBstring value (7e16a8c) - stop throttling window resize and scrolling for a smoother experience (e419afa)
- fix a regression with window resizing not triggering a canvas and viewport resize (d2e2f3f)
- regression: add back
clearTimeoutandclearInterval(63c1a19) - refactor: implement a new internal type safe event emitter (55a031b)
- remove the fetch polyfill (317201c)
- fix keyboard import following conversion to TS (9394b9f)
- fix implicit global reference to HTMLVideoElement (3e311e3)
- revamped the collision example into a sprite benchmark example (932bf35)
- add the debug panel to the isometric example (f96cadd)
- chore: replace webdoc with typedoc (75cbb88)
- release script for GH (8fb3b87)
- Add npm publish workflow with OIDC trusted publishing (c44f129)
Contributors
@hornta
- chore: migrate to monorepo (a4c0c24)
- chore: replace rollup with esbuild (5ec1280)
- refactor: typescript conversion (9352c3f)
- refactor: move color to typescript (f0c1c20)
- refactor: moved much code to typescript (e392c71)
- refactor: moved polygon and line class to typescript (6088afb)
- refactor: typescriptify rectangle and line (4d185c9)
- refactor: convert ellipse to typescript (d0aa4ed)
- refactor: move platform to typescript (8c3df92)
- refactor: move dom to typescript (56176cb)
- refactor: move keyboard to typescript (ff092ba)
- refactor: move some code to typescript (84931c5)
- refactor: convert timer class to typescript (5988e88)
- refactor: typing the application settings (c20b822)
- feat: add typesafe function to create a pool (748bad7)
- refactor: add Pool type (4b80f88)
- refactor: prevent duplicate instances to be added to pool (30b63f2)
- refactor: remove ponyfill of exitFullscreen (2f0089e)
- refactor: remove alternative way of providing duration in Tween.to (051c7bc)
- refactor: improve readability (multiple commits)
- chore: improve the tests by using vitest in browser mode (8a57c8a)
- chore: add github workflow (29fc441)
- chore: added biome as a code formatter (7e440ca)
- chore: github action to build github pages artifact and upload (aa8893a)
- chore: added debug plugin (40fd785)
- refactor: add platformer, lights, drag-and-drop, whac-a-mole, text, and more examples
- fix: missing default value for url in setBaseURL (d1ca0e2)
- refactor: switch from import assertions to import attributes (b5f73e9)
@Vareniel
- implement persistence for child bodies during reset (029efe2)
- rendering update! (c5d94c5)
- change instanceof to super.preDraw (b41f6ed)
- Update quad_compositor.js (2dfbfad)
New Contributors
- @SergioChan made their first contribution
- docs(ui): show correct floating default for UI elements (b5622da)
Full Changelog: 17.4.0...18.0.0
v17.4.0
Added
- Renderer: new
lineJoinproperty to set the line join style (only support "round" for now in WebGL mode) - Renderer: add support for line thickness for
strokePolygonandstrokeRectoperations in WebGL
Changed
- Chore: Update to TypeScript 5.5
Fixed
- Renderer: fix
fillEllipse()method in WebGL mode (that was stroking the ellipse instead) - TypeScript: fix most (if not all) missing declarations
v17.3.0
Added
- Renderer: add support for line thickness when using
strokeLine()in WebGL
Changed
- Renderer: the
setLineWidth()method is now deprecated and replaced by alineWidthclass property
Fixed
- Renderer: fix animation when using multi-texture atlas in WebGL mode
- TMX: fix tsx file type import when using a React / Vue build step (thanks @customautosys)
- Typedef: fix missing definition for
video.init()settings parameter, andApplicationconstructor parameter
v17.2.0
Added
- Audio: add missing optional id parameter to 3D / Spatial audio methods
- Core: add platform detection if running as a standalone web app
- Loader: add missing
unloadimplementation for font assets
Fixed
- Loader: properly return an error when attempting to load FontFace assets on non-browser platforms
- Renderer: fix a regression when a global canvas is available (e.g. webapp adapter for wechat)
- Renderer: fix a regression when forcing WebGL1 rendering mode (leading to an exception)
- Renderer: fix a regression when using the canvas rendering mode where antialias setting was not being applied on cached tinted elements
v17.1.0
Added
- Audio: added/exposed 3D Spatial Audio method (
stereo(),position(),orientation()andpanner()) - Loader: image resources can now take an array of
srcurls with different format (preparing for later usage) - Math: added a
isPowerOfFour()method - Renderer: new
renderTargetproperty specifying the defaultCanvasRenderTargetto use when rendering
Changed
- Renderer:
CanvasTextureis now deprecated and replaced by a newCanvasRenderTargetclass
Fixed
- Core: prevent multiple temporary canvas creation when calling
isWebGLSupportedmultiple times
v17.0.0
Added
- Sprite: add support for aseprite texture atlas (including animation)
- Atlas:
createSpritefromAnimparameter is now optional, and if not defined will use all defined index in the corresponding atlas - Loader: new
setOptionsmethod that allows specifying custom settings to be applied to fetch requests (crossOrigin, withCredentials, etc..)
Changed
- Loader: loader settings such as
crossOriginandwithCredentialsare now deprecated and have to be set through thesetOptionsmethod
Fixed
- Doc: fix hyperlinks to source code within documentation (thanks @Waltibaba)
- Loader: fix settings for the fetch request not being applied in ES6 builds (thanks @B0sh)
v16.1.3
v16.1.2
v16.1.1
v16.1.0
Added
- Loader: add support for loading/preloading of HTMLVideoElement
- Loader: add optional
autoplayandloopparameters when[pre]loadingaudio and video assets (falseby default) - Sprite: HTMLVideoElement can now be passed as a source when creating Sprite object