Monday, April 7, 2014

melonJS 1.0.0 available !

Hi all,

After a longer than expected beta period, the official 1.0.0 version of melonJS is finally here  ! As described in the beta announcement (through the forum), this new version has tons of new stuff and major part of the engine have been rewritten to prepare for the future  :
  • Updated Core/Main Loop logic to rely on floating point timer for better precision
  • New Web Audio based implementation for me.audio, also mobile compatible, based on the awesome Howler Library
  • New Color class to allow advanced color manipulation and transformation (e.g. tween)
  • New Particle Engine, including a particle emitter editor (see the example folder)
  • Added cross-browser support for fancy new API like Fullscreen, vibrate, visiblityChange
  • Cleaned a lots of old API, and removed all deprecated one from previous versions
  • Performances improvements on the object pooling feature and tile drawing
  • Optimized the XML TMX parsing by converting it to a JXON object (code factorization)
  • Added proper support for all shapes type (AABB collision detection is however still used for now)
  • Replaced the previous collisionBox implementation by a more future proof one (using the new shapes objects)
  • Improved Camera management (code rewrite, camera bounds, new functions)
  • Sanitized the input code to follow the W3C standardized PointerEvent naming
  • added a melonJS setTimeout and setInterval function obeying the engine pause state
  • Redesigned the input source code to allow for future extension (gamepad API)
  • Various tweaks&fixed here and there (tween, flickering duration, automatic keyboard initialization, etc…
For those that participated in the beta program, we since then addressed the following issues/regressions :
  • fixed tileset parsing when there is only one or no tileset defined in the map
  • fixed rendering of layer when opacity setting is not set
  • fixed optional rendering of the collision layer through the debug panel
  • updated howler version (1.1.18)
  • fixed the sprite resize function
  • various documentation fix and improvements
  • fixed audio support on CocoonJS
And of course thank you again to everybody for either submitting patches and new features for this release (special note to ciangames and insidiator, as they are the one to thanks for both the particle engine and the particle emitter editor), or for those that provided very valuable feedback during the beta period (Jay, falldeaf, Kas, Lamberto, Ellison, Jeremie, to name a few) as your feedback helped identifying these issues.

Full log of changes is of course detailed here, as always we highly encourage you to carefully read the Upgrade Guide. Usual download links, together with the online documentation are available through the melonJS website.

For next version, as highlighted previously by Jason, we will use the following version numbering scheme :
  • 1.0.x will be used for bug fix updates only. So you may stick with this release branch and update easily, without changing much (or any!) of your code.
  • 1.1.x will be the next major release following 1.0.x, and will likely include multiple breaking changes that require updates to your code.
Next 1.1.0 version we should focus on the collision engine, physics managements and other exciting stuff like webGL, but in the mean time let us know what you think about this version, and have fun !

Cheers,
- melonJS team

2 comments:

  1. This looks excellent! Out of all the HTML5 game engines out there, this one seems the most promising.

    I'm looking forward to using it in porting my games. Thanks for your hard work on it!

    ReplyDelete