phaser/CHANGELOG.md
2018-02-28 14:36:26 +00:00

6 KiB

Change Log

Version 3.2.0 - In Development

New Features

  • Game.resize allows you to resize the game config, renderer and input system in one call.
  • InputManager.resize allows you to update the bounds def and input scale in one call.
  • Game.Config.roundPixels property added to prevent sub-pixel interpolation during rendering of Game Objects.

Bug Fixes

  • Arcade Physics Bodies didn't apply the results of allowRotation to the parent Game Object.
  • InputManager.updateBounds wouldn't correctly get the bounds of the canvas if it had horizontal or vertical translation in the page, causing the scale factor to be off (and subsequently input values to mis-fire)

Updates

  • AnimationComponent.play now calls setSizeToFrame() and updateDisplayOrigin() on the parent Game Object in order to catch situations where you've started playing an animation on a Game Object that uses a different size to the previously set frame.
  • Text.setText will check if the value given is falsey but not a zero and set to an empty string if so.
  • BitmapText.setText will check if the value given is falsey but not a zero and set to an empty string if so.
  • BitmapText.setText will now cast the given value to a string before setting.
  • BitmapText.setText will not change the text via setText unless the new text is different to the old one.

Version 3.1.2 - 23rd February 2018

Updates

  • Hundreds of JSDoc fixes across the whole API.
  • Tween.updateTweenData will now check to see if the Tween target still exists before trying to update its properties.
  • If you try to use a local data URI in the Loader it now console warns instead of logs (thanks @samme)

Bug Fixes

  • The KeyCode FORWAD_SLASH had a typo and has been changed to FORWARD_SLASH. Fix #3271 (thanks @josedarioxyz)
  • Fixed issue with vertex buffer creation on Static Tilemap Layer, causing tilemap layers to appear black. Fix #3266 (thanks @akleemans)
  • Implemented Static Tilemap Layer scaling and Tile alpha support.
  • Fixed issue with null texture on Particle Emitter batch generation. This would manifest if you had particles with blend modes on-top of other images not appearing.
  • Added missing data parameter to ScenePlugin. Fixes #3810 (thanks @AleBles)

Version 3.1.1 - 20th February 2018

Updates

  • The entire codebase now passes our eslint config (which helped highlight a few errors), if you're submitting a PR, please ensure your PR passes the config too.
  • The Web Audio Context is now suspended instead of closed to allow for prevention of 'Failed to construct AudioContext: maximum number of hardware contexts reached' errors from Chrome in a hot reload environment. We still strongly recommend reusing the same context in a production environment. See this example for details. Fixes #3238 (thanks @z0y1 @Ziao)
  • The Webpack shell plugin now fires on onBuildExit, meaning it'll update the examples if you use webpack watch (thanks @rblopes)
  • Added root: true flag to the eslint config to stop it scanning further-up the filesystem.

Bug Fixes

  • Math.Fuzzy.Floor had an incorrect method signature.
  • Arcade Physics World didn't import GetOverlapX or GetOverlapY, causing separateCircle to break.
  • TileSprite was missing a gl reference, causing it to fail during a context loss and restore.
  • The Mesh Game Object Factory entry had incorrect arguments passed to Mesh constructor.
  • Removed unused _queue property from ScenePlugin class (thanks @rblopes)
  • The variable static is no longer used in Arcade Physics, fixing the 'static is a reserved word' in strict mode error (thanks @samme)
  • Fixed Set.union, Set.intersect and Set.difference (thanks @yupaul)
  • The corner tints were being applied in the wrong order. Fixes #3252 (thanks @Rybar)
  • BitmapText objects would ignore calls to setOrigin. Fixes #3249 (thanks @amkazan)
  • Fixed a 1px camera jitter and bleeding issue in the renderer. Fixes #3245 (thanks @bradharms)
  • Fixed the error WebGL: INVALID_ENUM: blendEquation: invalid mode. that would arise on iOS. Fixes #3244 (thanks @Ziao)
  • The drawBlitter function would crash if roundPixels was true. Fixes #3243 (thanks @Jerenaux and @vulcanoidlogic)

Version 3.1.0 - Onishi - 16th February 2018

Updates

  • Vertex resource handling code updated, further optimizing the WebGL batching. You should now see less gl ops per frame across all batches.
  • The Blitter game object has been updated to use the List structure instead of DisplayList.
  • Arcade Physics World disableBody has been renamed disableGameObjectBody to more accurately reflect what it does.
  • Lots of un-used properties were removed from the Arcade Physics Static Body object.
  • Arcade Physics Static Body can now refresh itself from its parent via refreshBody.

Bug Fixes

  • A couple of accidental uses of let existed, which broke Image loading in Safari # (thanks Yat Hin Wong)
  • Added the static property Graphics.TargetCamera was added back in which fixed Graphics.generateTexture.
  • The SetHitArea Action now calls setInteractive, fixing Group.createMultiple when a hitArea has been set.
  • Removed rogue Tween emit calls. Fix #3222 (thanks @ZaDarkSide)
  • Fixed incorrect call to TweenManager.makeActive. Fix #3219 (thanks @ZaDarkSide)
  • The Depth component was missing from the Zone Game Object. Fix #3213 (thanks @Twilrom)
  • Fixed issue with Blitter overwriting previous objects vertex data.
  • The Tile game object tinting was fixed, so tiles now honor alpha values correctly.
  • The BitmapMask would sometimes incorrectly bind its resources.
  • Fixed the wrong Extend target in MergeXHRSettings (thanks @samme)

New Features

  • Destroying a Game Object will now call destroy on its physics body, if it has one set.
  • Arcade Physics Colliders have a new name property and corresponding setName method.
  • Matter.js bodies now have an inlined destroy method that removes them from the World.
  • Impact bodies now remove themselves from the World when destroyed.
  • Added Vector2.ZERO static property.