O'Reilly logo

Game Programming Using Qt by Lorenz Haas, Witold Wysota

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Time for action – revisiting parallax scrolling

We will implement parallax scrolling with a set of layers that move in the direction opposite to the one the player is moving in. Therefore, we will need a definition of the scene and a moving layer.

Create a new QML Document (Qt Quick 2). Call it ParallaxScene.qml. The scene will encompass the whole game "level" and will expose the position of the player to the moving layers. Put the following code in the file:

import QtQuick 2.2

Item {
  id: root
  property int currentPos
  x: -currentPos*(root.width-root.parent.width)/width
}

Then, create another QML Document (Qt Quick 2) and call it ParallaxLayer.qml. Make it contain the following definition:

import QtQuick 2.2 Item { property real factor: 0 x: factor ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required