Skip to content

Phaser: The Canvas

This post is part of a Phaser series. Click here to see the first post of the series.

Phaser games are rendered inside an HTML <canvas> element.

If you’re new to Canvas, I talk in details about it in the Canvas API tutorial.

We create a canvas, with a specific set of width/height, and we draw into it.

We can’t use CSS to style elements, but we have to use a more low level and difficult API.

Luckily Phaser (and other libraries that use Canvas under the hood) abstract away all the tiny details, so we can focus on the application code.

We initialize a Phaser game by calling the Game static method on the Phaser object:

new Phaser.Game()

We must pass to this function an object literal with a set of configuration options:

new Phaser.Game({})

In this configuration object we can set various properties.

To start with, we can set the width and height of the canvas:

new Phaser.Game({
  width: 450,
  height: 600
})

Another property we can pass is backgroundColor, which accepts an hexadecimal value, like 0x000000 for black.

Colors are similar to CSS colors, but you need to prepend 0x so JS knows it’s an hexadecimal number.


download all my books for free

  • javascript handbook
  • typescript handbook
  • css handbook
  • node.js handbook
  • astro handbook
  • html handbook
  • next.js pages router handbook
  • alpine.js handbook
  • htmx handbook
  • react handbook
  • sql handbook
  • git cheat sheet
  • laravel handbook
  • express handbook
  • swift handbook
  • go handbook
  • php handbook
  • python handbook
  • cli handbook
  • c handbook

subscribe to my newsletter to get them

Terms: by subscribing to the newsletter you agree the following terms and conditions and privacy policy. The aim of the newsletter is to keep you up to date about new tutorials, new book releases or courses organized by Flavio. If you wish to unsubscribe from the newsletter, you can click the unsubscribe link that's present at the bottom of each email, anytime. I will not communicate/spread/publish or otherwise give away your address. Your email address is the only personal information collected, and it's only collected for the primary purpose of keeping you informed through the newsletter. It's stored in a secure server based in the EU. You can contact Flavio by emailing flavio@flaviocopes.com. These terms and conditions are governed by the laws in force in Italy and you unconditionally submit to the jurisdiction of the courts of Italy.

Related posts about phaser: