Posts Tagged ‘plugins’

  • Phaser v2.1.3 and Pixi v2 are out!

    pixi-v2-spheres

    Over at Goodboy Digital they’ve been working away on Pixi v2 for some time now. As Phaser is built on-top of Pixi we’ve a vested interest in what is happening in Pixi land and its implications for Phaser. And Pixi v2 is their latest, freshest release.

    There’s a detailed blog post explaining all about it, but the headliners include:

    • Full High DPI canvas support
    • iOS8 WebGL fixes
    • Improved rendering performance across the board
    • Significant updates to the Graphics class
    • Sprite level shaders & more!

    There have been a few Pixi API changes to accommodate all of this, but we’ve been able to blend all of these features¬†into Phaser with no changes to our API, so nothing should ‘break’ if upgrading from an earlier build. Instead you just get to reap the benefits :)

    As well as changes to Pixi there are also Phaser specific updates and fixes in this release, including little gems like Sound.fadeTo, BitmapData.getFirstPixel, BitmapData.getBounds, Rectangle.scale and more. See the change log for full details.

    As usual you can grab the latest build of Phaser from github.

    Read More

  • Phaser 2 and our plans for the future

    phaser2-github

    Exactly 6 months after the release of Phaser 1.0 we released version 2. It was a huge update. Not so much in terms of new features, although it did bring its fair share of tasty new treats to the table. But more so it underwent a large internal change. We upgraded to the latest version of Pixi.js, our renderer and this in turn allowed us to literally shave thousands of lines of code out.

    The core update loops of all the game objects like Sprite and Button, were dramatically reduced. Lots of the things that caused Phaser 1.x to not be quite as optimal as it could be were eliminated. Expensive routines and processes were either removed entirely or disabled where possible.

    It was a big update, but it felt good. It felt clean and fresh. Like when you tidy-up your work space, or white wash a room ready for painting. You know you’re building on top of something sound.

    There were a number of API breaking changes moving from v1 to v2, which is why we jumped version number so high (originally it was just going to be the 1.2 release). It was a lot of simple but important alterations. Things like the Group class now properly extending a DisplayObjectContainer, so they can easily be nested and shifted around the display list. Or Sprites no longer having physics bodies by default, or input handlers, which meant the amount of code they process during their basic update is now utterly minimal. Those features are still available of course, you just have to activate them explicitly. The changes were so extensive we produced a Migration Guide to help developers shift over.

    The TriForce

    Traditionally Phaser has had the ArcadePhysics system built in. This was a port of the one found in Flixel and our Flixel Power Tools. It was fundamentally basic, but still covered quite a lot of bases and most importantly was very easy to use. However the limitations really started to bug us, and we tried to address them in the 1.1.4 release of Phaser, with less than stellar results.

    A strong reason for us developing Phaser 2 was so that we could use a proper full-body physics system, in our case the excellent p2.js by Stefan Hedman. And for a good while this was the only physics system we had built in. But as we worked through the weeks of development, it became apparent that there was a real need to keep ArcadePhysics around. Not the broken 1.1.4 version, but the earlier release that mostly just worked, because it didn’t try to be too clever.

    Read More