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

You can add images as GameObjects, but you need to be aware that to display images when the game starts, in create(), they need to be preloaded in preload(). We assign them an identifier, and then we can add an image with that asset in the create() function:

function preload() {
  this.load.image('apple', 'apple.png')

function create() {
  this.add.image(200, 200, 'apple')

Note that 200, 200 is the position we’re going to put the image.

It refers to the center of the image.

To make it refer to the top left position, which is easier to reason about, you can call the setOrigin() method on the image:

const image = this.add.image(200, 200, 'apple')
image.setOrigin(0, 0)

Once an image has been created and added, we can perform several operations on it, including scaling it:


flipping it:

image.flipY = true
image.flipX = true

and more.

Follow me on Twitter @flaviocopes