@obiot obiot released this Aug 13, 2018 · 3 commits to master since this release

Assets 5
  • Audio : latest audio core update to fix HTML5 Audio issue with FB Instant Games, and Chrome API deprecation
  • Container : new clipping feature to automatically clip childrens to their parent container bounds (disable by default)
  • Core : Removed unnecessary ES6 polyfill (based on melonJS 5.x minimum browser version)
  • Core : API update to sandbox all previous language extension under the me namespace
  • Core : added console debug information (melonJS version & basic device capabilities)
  • Core : properly support (requires the official weapp-adapter) WeChat Mini Games (@qinchunren)
  • Color : fix the me.Color.toHex8() function
  • Debug : fix "undefined width error" when instantiating the debug panel
  • Font : fix a regression where drawing a web font was not restoring the renderer context properly
  • Input : fix an issue where the focus was sometimes lost when using an integrated WebView (e.g. Instant Games)
  • Loader : new loader feature to allow preloading of javascript files
  • Math : new vector linear interpolation functions
  • Math : new equals function for me.Rect shape
  • Physic : avoid duplicating the given collision shape through addShape, and directly use the object references
  • Physic : gravity property for solid bodies is now a vector object, allowing to defined gravity for both axis
  • Physic : new mass property for solid bodies
  • Physic : new me.Body.force property allowing to automatically apply a force or acceleration to a solid body
  • Physic : me.Body.accel and me.Body.setVelocity are now deprecated and to be replaced by me.Body.force
  • Physic : automatically apply any defined physic properties when importing a physic editor JSON file
  • Renderable : fix onComplete not being called for me.Sprite single animation frame (@adrian)
  • Renderable : fix animation not cycling when using GUI_Object(s)
  • Renderable : fix a regression in Sprite when using Texture Packer
  • Renderable : fix floating renderable's bounds following its parent container position (@YosuaHamonangan)
  • Renderable : fix a potential parameter mismatch in me.Sprite for an animation onComplete callback
  • Renderer : use prefixed "image-rendering" CSS properties for non standard browsers
  • Renderer : new clipRect function to clip the specified rectangle area
  • TMX : allows different tile size per layer (not supported by Tiled, only works with "manually" generated maps) (@YosuaHamonangan)
  • TMX : optimised object allocation to lower memory usage (and later GC) when loading a level
  • Viewport : new damping feature to enable smooth camera movement
  • WebGLRenderer : enable failIfMajorPerformanceCaveat by default when attempting to create a GL Context
  • WebGLRenderer : feature to change the blending mode (experimental and limited to "normal" and "multiply" for now)
  • WebGLRenderer : fix a deprecation warning in Firefox

@obiot obiot released this Jan 21, 2018 · 12 commits to 5.x.x since this release

Assets 5
  • Audio : Howler core update (2.0.8)
  • Core : window.onReady is now marked as deprecated, and replaced by me.device.onReady
  • Container : new onChildChange callback for when a child is added or removed
  • Input : further improvements to multitouch support (compatibility on latest device/browser)
  • Input : new me.input.setTouchAction function to enable/disable gesture by default (default to "none")
  • Input : fix a pointer offset issue when using the browser zoom
  • Loader : new "withCredentials" setting to specify if cross-site Access-Control requests should be made using credentials
  • Physic : new me.collision.rayCast function for basic Line of Sight implementation
  • Physic : slight me.Body refactoring to allow adding a physic body to any base me.Renderable
  • Physic : new bounce property for solid bodies
  • Renderable : isKinematic is now true by default except for me.Entity, me.Container and me.GUI object
  • Renderable : anchor point and transform are now properly applied to me.Sprite Bounding Rect
  • TMX : add support for "Collection of Image" tilesets
  • Viewport : apply current transformation when converting given coordinates from localToWorld and WorldToLocal
  • Viewport : fix a regression where transforms were not applied anymore to the camera/viewport

@obiot obiot released this Dec 3, 2017

Assets 4
  • Input : fix a regression with bindPointer
  • Loader : fix the progressBar position when resizing the screen

@obiot obiot released this Dec 1, 2017

Assets 4
  • Audio : Howler core update (2.0.5)
  • Audio : added a function to check if audio is muted globally
  • Core : fix fullscreen detection when not set on the main canvas
  • Core : remove obsolete ES5 shim (it's 2017, update your browser!)
  • Core : updated orientation detection, based on the new (draft) Orientation API
  • Debug : fixed debug panel toggle features, and automatically display the toggle key
  • Geometry : new specific values can be returned through the callback for Observable Vectors
  • Input : fix a bug where the gamepad axes may not trigger KEYUP events
  • Input : remove deprecated argument type for me.input.bindGamepad()
  • Input : remove deprecated mousewheel event
  • Input : remove deprecated MS prefixed Pointer Event
  • Input : standardize Event.button value and usage across all input models
  • Input : me.input.preventDefault now correctly define the default action for pointer events
  • Input : fix potential multitouch issues on "hybrid" browsers supporting both TouchEvent and PointerEvent
  • Renderable : properly apply transformation and anchor for all me.Renderable objects
  • Renderable : move flipX/flipY to me.Renderable, and remove deprecation warning
  • Renderable : new isKinematic property allowing to opt-out from collision and input events
  • Renderable : slightly refactored me.ColorLayer and exposed its me.Color property
  • TMX : added support for layer grouping (Tiled 1.0.0)
  • Viewport : added a method to unfollow the current target

@obiot obiot released this Feb 28, 2017 · 353 commits to master since this release

Assets 4
  • Core : fixed a bug in Number.prototype.round()
  • Core : throw an exception when attempting to add an invalid state in me.state.set()
  • Core : fixed falling and jumping flags on me.Body when gravity is reversed
  • Geometry : fixed a bug in me.Vector3d.abs()
  • Geometry : added a new me.Matrix2d.multiplyVectorInverse() method
  • Pointer : fixed touchstart events
  • Pointer : replaced non-standard mousewheel with W3C standard wheel events
  • Pointer : fixed duplicate wheel events

@obiot obiot released this Jan 16, 2017 · 376 commits to master since this release

Assets 4
  • Audio : updated to latest Howler 2.0.2 (WebAudio resume/seek fixes, and IE related security issues)
  • Audio : added a me.audio.seek function, to change or get the current position of a specific audio clip
  • Core : throw an error message when registering a non valid object in the object pool (i.e. undefined class)
  • Loader : added the possibility to configure path (baseUrl) by asset types.
  • Loader : added a 'crossOrigin' option to enable/allow cross-origin image loading for WebGL
  • Loader : fixed an issue where callbacks were randomly fired twice when refreshing the page (krojew)
  • Loader : reduced memory usage (reduced overlay size for the logo, and prevent from creating the Font overlay in WebGL)
  • Particles : fixed a (huge) performance regression with particle generation / handling
  • Pointer: fixed bug where a device allowing both mouse & touch events would only emit touch events.
  • Pointer: fixed a regression with multi-touch event detection on iOS & Android
  • Pointer: fixed a regression with callback handling & cleaning in the releasePointerEvent function
  • Renderable : fixed a regression in me.Sprite.isCurrentAnimation()
  • TMX : TMX maps and renderers are now fully contained in their own space, and do no pollute me.game anymore
  • TMX : exposed the TMX renderers API and related utility functions to convert tile to/from pixel coordinates
  • TMX : improved API to manage isometric map & coordinates (e.g. vector and shape conversion)
  • TMX : added a simple isometric "tile selector" in the isometric map example
  • TMX : me.Layer.getTile() will now return null if there is no corresponding tile, instead of throwing an exception
  • TMX : added a getRenderer() function to me.Layer that returns the layer TMX renderer.
  • Viewport : added the possibility to define a global transformation to the viewport
  • WebGLRenderer : now properly complain when using NPOT textures, and throw an exception for repetitive ones
  • WebGLRenderer : does not create anymore a default overlay for me.Font drawing, unless required (reminder: me.Font+WebGL = Bad!)

@obiot obiot released this Nov 29, 2016 · 455 commits to master since this release

Assets 4
  • Audio : updated to the latest Howler 2.0.1 version
  • Container : added a 'forEach' function that allows to iterate through all children
  • Core : largely improved and completed the matrix implementation and usage
  • Core : Object.assign polyfill update
  • Core : various improvements and fixes to jasmine test units
  • Debug : fixed the debug panel display when using the WebGL renderer
  • Font : added true support for bitmap font generated out of true type fonts (e.g. Littera, bmfont, bmglypgh, etc...)
  • Particles : reduced creation/use of temporary (vector) objects
  • Pointer : fixed bug with Chrome on Windows touch devices where touch input would register, but mouse input would not. (credit to BrianRosamilia)
  • Pointer : PointerEvent detection is now fully W3C compliant
  • Pointer : automaticaly free any defined region if there is no callback left
  • Renderable : added a new currentTransform property that defines the renderable transformation matrix
  • Renderable : transformations can now be automatically applied through the autoTransform flag (off by default for user-defined objects)
  • Renderable : me.AnimationSheet has been merged into me.Sprite (me.AnimationSheet is now only an alias), and rendering function simplified
  • Renderable : fixed image layer first update, when added to a child container (and not directly the root one)
  • Renderer : simplified/aligned both the Canvas and WebGL renderer API in a more WebGL fashion
  • Renderer : added a subPixel rendering option (off by default)
  • Shapes : polygon based shapes can now be freely transformed, and bounding box will be resized accordingly
  • TMX : scaling and rotation can now be applied to a tilemap (see me.levelDirector.loadLevel() for example)
  • TMX : fixed some issues when loading TMX level into a child container.
  • WebGLRenderer : fixed the currentColor alpha not taking in account the "globalAlpha" (now better match canvas renderer)
Oct 24, 2016
CHANGELOG update

@obiot obiot released this May 17, 2016

Assets 4
  • Audio : exposed a me.audio.rate function to allow modifying the playback rate of the specified audio clip.
  • Audio : added back the possibility to stream audio elements (through the stream flag when defining audio assets)
  • Camera : use the alpha component of the given color as the threshold for fading effect
  • Color : normalized support for #RGBA and #RRGGBBAA formats (to match CSS standard)
  • Core : added a me.game.updateFrameRate function to change the renderer framerate at runtime
  • Core : simplified the "startup" functions to allow for shorter initialization code (see boilerplate)
  • Core : removed previous Ejecta "hacks" (requires the latest Ejecta 2.1/development version)
  • Documentation : various fixes and missing items added (e.g me.Object that was missing)
  • Debug : debug panel(s) now automatically register themselves upon loading (see boilerplate)
  • Input : added support for gamepad analogue axis binding
  • Input : fixed a regression with pointer events not firing with "floating" regions (@thedrumchannell)
  • Particles : fixed a crash when removing a particle emmiter during a level change/reset
  • Renderable : fixed missing onDestroyEvent function when adding basic renderables to the game world.
  • Renderable : fixed Sprite objects initialization when using a string argument for "image" (@trevorjwilliams)
  • TMX : added support for JSON-format external tilesets
  • TMX : fixed the clearTile function when using preRender and the WebGL renderer
  • TMX : fixed prerender on browsers that support Canvas2DContextAttributes.alpha
  • TMX : disabled animated tiles when using the prerender mode (these two are not compatible)
  • TMX : fixed a regression with Tile property parsing
  • TMX : fixed a regression with level loading when no tilesets are defined.
  • TMX : fixed decoding of maps using CSV data format (in Tiled) and exported to JSON
  • TMX : added support for typed custom properties (Tiled 0.16)
  • WebGLRenderer : added a workaround for Safari resetting WebGL attributes bindings (see #783)

@obiot obiot released this Feb 23, 2016 · 3 commits to 3.0.x since this release

Assets 4
  • Core : fixed/improved compatibility with Ejecta (e.g. initialization, CAF support)
  • Input : actually really truly fix pointer event z-ordering, finally