Skip to content

Commit 858ad51

Browse files
committed
Phaser 2.4 release.
1 parent ffaa7d7 commit 858ad51

407 files changed

Lines changed: 228692 additions & 137156 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

CHANGELOG.md

Lines changed: 306 additions & 0 deletions
Large diffs are not rendered by default.

README.md

Lines changed: 24 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -41,11 +41,19 @@ Thousands of developers worldwide use it. From indies and multi-national digital
4141

4242
> 22nd July 2015
4343
44-
Phaser 2.4 is another huge update. We had to bump the version number from 2.3 directly to 2.4 because of some API adjustments, all of which are fully detailed in the [Change Log](#change-log) at the end of this readme. While it's true we could have released it over a few smaller point releases, that just isn't how the cookie crumbled this time.
44+
Phaser 2.4 is another huge update. We had to bump the version number from 2.3 directly to 2.4 because of some API adjustments, all of which are fully detailed in the [Change Log](#change-log). While it's true we could have released it over a few smaller point releases, that just isn't how the cookie crumbled this time. _Be sure to pay attention to the previous deprecated API calls that have been removed in 2.4._
4545

46-
Phaser is a fully open-source project and as such we have no direct income from it at all. All development is funded by the client work that my company takes on. And of course the contributions from the incredible community (who also volunteer their skills for free)
46+
So although you had to wait for it a couple months more than usual, Phaser 2.4 is quite simply an **epic release** - there is no two ways about it! Brand new video component? Check. Support for fully boned Creature animations? Check. Brand new Cache and Loader updates? Check. Dynamic sprite and gradient generator? Check. Literally hundreds of updates, enhancements and fixes across the entire codebase? Yup, those too! The Change Log seems to scroll on forever, yet the overall package size continues to come down as we optimise and streamline our code too (this release actually builds smaller than 2.3 did, just 80KB min + gz)
4747

48-
That's all for now. I hope you enjoy Phaser 2.4.0. Happy coding everyone! See you on the forums.
48+
A few people on the forum have asked how Phaser is funded: Phaser is a fully open-source project and as such we have no _direct_ income from it at all. All development is funded by the client work that [my company](http://www.photonstorm.com) takes on. And of course the contributions from the incredible community (who also volunteer their skills for free).
49+
50+
Sometimes this work directly impacts on Phaser. For example we recently built [5 games](http://www.insideouthq.com) for the new Pixar film Inside Out. Being Pixar they of course had high video requirements, so we literally coded from scratch the way videos were handled and added in video stream support in the process. Very often though our work simply uses Phaser but doesn't enhance it. Which is why if you buy any of the books or plugins we have on sale it really does make a difference! It buys us time to work on Phaser un-interrupted, which in turn benefits everyone. Some have asked if we could add a 'donate' button to the site, but instead I'd rather you get value from your money - so if we release a new plugin, book or magazine you like the look of, please do consider it a donation towards the continued work we all put in.
51+
52+
Money stuff aside please enjoy this brand new release. We'll carry on supporting Phaser 2 for the rest of 2015 _at least_, while development of the Phaser 3 renderer proceeds at a rapid pace too.
53+
54+
Make sure you check out the Phaser web site. We are going to be adding in stacks of new examples and features in the coming weeks.
55+
56+
But that's all for now. I hope you enjoy Phaser 2.4. Happy coding everyone! See you on the forums.
4957

5058
Cheers,
5159

@@ -150,9 +158,9 @@ Phaser is provided ready compiled in the `build` folder of the repository. There
150158

151159
### Custom Builds
152160

153-
As of Phaser 2.3.0 we now include a brand new build system which allows you to strip out lots of additional features you may not require, saving hundreds of KB in the process. Don't use any Sound in your game? Then you can now exclude the entire sound system. Don't need Keyboard support? That can be stripped out too.
161+
Starting from Phaser 2.3.0 we now include a brand new build system which allows you to strip out lots of additional features you may not require, saving hundreds of KB in the process. Don't use any Sound in your game? Then you can now exclude the entire sound system. Don't need Keyboard support? That can be stripped out too.
154162

155-
As a result of this work the minimum build size of Phaser is now just 83KB minified and gzipped.
163+
As a result of this work the minimum build size of Phaser is now just 80KB minified and gzipped.
156164

157165
See the [Creating a Custom Phaser Build](http://phaser.io/tutorials/creating-custom-phaser-builds) tutorial for details.
158166

@@ -162,8 +170,6 @@ Should you wish to build Phaser from source you can take advantage of the provid
162170

163171
Run `grunt` to perform a default build to the `dist` folder.
164172

165-
If you change either Pixi.js or P2 then use the Grunt tasks `replace:pixi` and `replace:p2` respectively. These tasks patch their UMD strings so they work properly with Phaser under requireJS.
166-
167173
![div](http://www.phaser.io/images/github/div.png)
168174

169175
<a name="games"></a>
@@ -230,7 +236,7 @@ If you are an exceptional JavaScript developer and would like to join the Phaser
230236
<a name="change-log"></a>
231237
## Change Log
232238

233-
Version 2.4 - "Katar" - in dev
239+
Version 2.4 - "Katar" - 22nd July 2015
234240

235241
### API Changes
236242

@@ -267,6 +273,15 @@ For the full list of p2 additions please read [their change log](https://github.
267273
* P2.Body.applyImpulseLocal allows you to apply an impulse to a point local to the Body. An impulse is a force added to a body during a short period of time.
268274
* P2.Body.getVelocityAtPoint gets the velocity of a point in the body.
269275

276+
### Build Updates
277+
278+
* The Grunt build script now lets you exclude four new modules: rope, tilesprite, creature and video.
279+
* Rope removes the ability to create Rope sprites and also removes the PIXI.Rope and PIXI.Strip classes.
280+
* TileSprite removes the ability to create Tile Sprites and also removes the PIXI.TilingSprite class.
281+
* Creature is not enabled by default, but allows you to control support for Creature bone based animations.
282+
* Video removes the ability to render Videos and video streams to textures.
283+
* Pixi is no longer an optional module. Phaser no longer uses any main stream branch of Pixi and has multiple fixes and tweaks internally through-out it. Therefore it's now no longer possible to replace the version of Pixi that Phaser uses with any other version, so we removed the option from the custom list. Over time we will do away with the Pixi globals and merge it fully into Phaser to avoid conflicts with any other version of Pixi present.
284+
270285
### New Features
271286

272287
* All calls to Loader methods that add files to the queue, such as `Loader.image` or `Loader.atlas`, now have the URL as an optional parameter. If not set Loader will assume the URL to be based on the key given. For example the following: `game.load.image("boom", "boom.png")` can now be expressed as just `game.load.image("boom")`, or `game.load.atlas("player", "player.png", "player.json")` can now be shortened to `game.load.atlas("player")`. Please see the freshly updated jsdocs for full details.
@@ -349,6 +364,7 @@ For the full list of p2 additions please read [their change log](https://github.
349364
* Cache.getImage has a new argument which lets you return either just the HTML Image element or the entire image cache object, which includes the baseTexture and frame data.
350365
* Cache.getImage will return a __default image if the key isn't given, or a __missing image if the key is given but not found in the cache. This means it will always return a valid image and no longer cause Phaser to throw runtime errors deeper down with invalid image objects.
351366
* AABB vs. AABB collisions now work in Ninja Physics. `reportCollisionVsWorld` already worked, and contained all of the logic required to resolve a collision once the appropriate vectors had been established. `reportCollisionVsBody` was refactored to use that function (now generically named `reportCollision`), and now AABBs can collide properly, including bouncing and friction. reportCollisionVsWorld is now just a wrapper around reportCollision to maintain compatibility (thanks @standardgaussian #1905)
367+
* Phaser.Create is a new class that allows you to dynamically generate sprite textures from an array of pixel data, without needing any external files. We'll continue to improve this over the coming releases, but for now please see the new examples showing how to use it.
352368

353369
### Updates
354370

0 commit comments

Comments
 (0)