Guides & Tutorials API Reference Examples & Demos
Documentation

Functional List of V-Play Components

The V-Play Gaming Components are available with the following import statement in your QML file:

 import VPlay 1.0

This is a list of all the V-Play components grouped into functional groups.

Plugin Components

The Plugin Components add platform-specific features.

AdMob

The AdMob item enables you to monetize your game by embedding AdMob ads on Android and iOS.

Chartboost

The Chartboost plugin allows you to add interstitial ads from the Chartboost ad network to your game on Android and iOS.

Facebook

The Facebook item provides functions for using Facebook requests on iOS and Android.

Flurry

The Flurry item provides functions for using Flurry Analytics on iOS, Android and BlackBerry.

GameCenter

The GameCenter item provides functions for using Game Center on iOS.

LevelStore

Allows to monetize user-generated levels with in-app purchases.

Store

The Store item provides in-app purchases for iOS and Android.

Woohoo

The woohoo plugin allows you to monetize your mobile game and increase player engagement and retention rates

V-Play Game Network Components

V-Play Game Network components for using leaderboards, achievements and challenges in your game.

Achievement

Reward your players with achievements for reaching certain goals in your game and to give them more incentive to keep playing your game.

VPlayGameNetwork

The root V-Play Game Network component for using leaderboards, achievements and challenges in your game.

VPlayGameNetworkView

Default UI for VPlayGameNetwork leaderboards, achievements and player profile.

WebStorage

The WebStorage item syncs key-value-data with the cloud across devices and platforms with the VPlayGameNetwork.

Level Editor Components

The Level Editor Components provide level creation directly in the game.

BuildEntityButton

A drag and drop button for placing game entities with the LevelEditor.

EditableComponent

The EditableComponent allows you to edit selected properties of a specific target with an ItemEditor.

EntityBaseDraggable

The base class for game entities that should be used with the LevelEditor.

ItemEditor

The ItemEditor allows to modify properties at runtime that were marked with the EditableComponent.

LevelBase

The base class for custom QML levels that are loaded in a game with LevelLoader.

LevelData

The data stored in a dynamically created level with LevelEditor available from LevelBase.

LevelEditor

Allows to create, share & monetize user-generated levels with an in-game level editor.

LevelLoader

Loads qml level files derived from LevelBase dynamically.

LevelSelectionList

Displays a list of available levels from the LevelEditor.

LevelStore

Allows to monetize user-generated levels with in-app purchases.

V-Play Core Components

These components every game will contain. Most important are GameWindow, Scene, EntityBase and EntityManager.

ComponentBase

The base component class for all V-Play components.

EntityBase

The base class for custom game entities.

EntityManager

Manages all entities derived from the EntityBase component.

GameWindow

The root V-Play element containing all other components and Scenes.

Scene

The root element for a single game view.

Storage

The storage item provides a persistent and offline storage for arbitrary key-value pair data.

Utils

Provides often-needed functionality like generating a random number between 2 values.

WebStorage

The WebStorage item syncs key-value-data with the cloud across devices and platforms with the VPlayGameNetwork.

Context Components

The Context Components are global properties that are available in all QML files. They can be used to open native dialogs and browsers, network requests, dynamic QML component creation and provide system information.

FileUtils

The fileUtils context property provides file operations like reading, writing and listing files.

NativeUtils

The nativeUtils context property allows opening native message boxes, input dialogs and browsers.

Qt Context Objects

The Qt Context Objects page contains information about often-used functionality of the Qt element, for network requests and useful JavaScript elements.

System

The system context property provides information about the system and the platform the application is running on. Furthermore, it provides File I/O.

Visual Components

These components are used for game-specific rendering. Most important are SingleSpriteFromSpriteSheet and SingleSpriteFromFile for single images of a larger image file. And SpriteSequence and Sprite for animated sprites.

BackgroundImage

The BackgroundImage improves performance of background image rendering.

Clipping

Clipping can be used to clip components to a specific area.

LineItem

The LineItem can be used to display simple or textured single and segmented lines.

MultiResolutionImage

The MultiResolutionImage modifies the Image source regarding the display size.

ParallaxItem

The ParallaxItem allows to create shift effects with scene elements.

ParallaxScrollingBackground

The ParallaxScrollingBackground allows to create an endlessly scrollable background, usable by SideScroller games for example.

PolygonItem

The PolygonItem allows to display polygonal primitives in color or with texture.

SingleSpriteFromFile

The SingleSpriteFromFile element reads a single sprite from a sprite sheet JSON file that got exported from the TexturePacker tool. Use SpriteSequenceFromFile instead since version 1.4.

SingleSpriteFromSpriteSheet

The SingleSpriteFromSpriteSheet element reads a single sprite from a sprite sheet image file.

Sprite

The Sprite element defines a series of sprite frames within an image for a sprite animation.

SpriteBatchContainer

A container for adding the SpriteSequence elements for maximum performance.

SpriteSequence

The SpriteSequence contains a list of Sprite elements and allows switching between them with only one active at a time.

SpriteSequenceFromFile

The SpriteSequenceFromFile is the preferred element to define Sprite animations from a sprite sheet.

In addition to the above list, also these Qt Quick Components are useful.

Image The Image element is used to display image files.
Rectangle The Rectangle item provides a filled rectangle.

Input Components

These components allow entity movement with a keyboard or a virtual controller for touchscreens.

Accelerometer

The Accelerometer provides information about the device orientation.

AccelerometerReading

The AccelerometerReading contains the acceleration values along the X, Y and Z axes.

JoystickControllerHUD

The JoystickControllerHUD element provides an input controller for a virtual joystick for moving entities, also called a virtual D-pad.

MultiTouchArea

The MultiTouchArea item enables handling of multiple simultaneous touches and detects swipe, pinch and 2-finger rotate gestures.

MultiTouchEvent

The MultiTouchEvent object provides information about a multi-touch event.

SimpleButton

The SimpleButton represents a basic rectangular button with a clicked handler that can be used during development.

TextInputVPlay

The TextInputVPlay item can be used as single-line textual user input element.

TwoAxisController

Input controller with keyboard support for moving entities.

In addition to the above list, also these Qt Quick Components are useful.

MouseArea Allows mouse and touch input handling.
Flickable Provides a surface that can be swiped.
Keys Allows key handling, including the Android soft keys like Back.

Physics Components

These components add physics behavior to a game. They can either be used for collision detection, or for moving entities based on physics.

BoxCollider

The BoxCollider is a physics body with a rectangular shape.

CircleCollider

The CircleCollider is a physics body with a round shape.

PhysicsWorld

Simulates a physics world and contains all physics bodies.

PolygonCollider

The PolygonCollider is a physics body with a polygonal shape set up with at least 3 vertices.

The above components will be used most of the time. These components are for advanced use:

Body

A physics body which consists of one or more Fixture elements.

Box

A rectangular physics shape.

Circle

A circular physics shape.

ColliderBase

The Base component for BoxCollider, CircleCollider and PolygonCollider. All physics colliders including BoxCollider, CircleCollider and PolygonCollider inherit from ColliderBase.

DistanceJoint

The DistanceJoint keeps the distance between 2 bodies constant.

Fixture

A physics shape either rectangular (Box), round (Circle) or polygonal (Polygon).

Joint

The Joint is the base class of all joints.

MouseJoint

The MouseJoint is used to manipulate bodies with the mouse or touch input.

Polygon

A polygonal physics shape.

PrismaticJoint

The PrismaticJoint allows relative translation of two bodies along a specified axis and prevents rotation.

RevoluteJoint

The RevoluteJoint forces two bodies to share a common anchor point around which the bodies rotate.

RopeJoint

The RopeJoint restricts the maximum distance between two points.

WeldJoint

The WeldJoint glues two bodies together keeping a referenceAngle.

World

Represents a Box2D physics world including bodies and joints.

Multimedia Components

These components allow to play audio and video files.

BackgroundMusic

The BackgroundMusic element allows playing a long-lasting and looping background sound in wav, mp3 or ogg file format.

Sound

The Sound element allows playing short-lasting and looping sound effects in wav file format.

Video

The Video item allows embedding videos or playing movies in full-screen mode on iOS and Android.

Networking Components

These components handle network activities.

DownloadablePackage

The DownloadablePackage item allows to download additional resources over the web.

AI Components

The AI components move entities towards a target point, with a constant velocity or along a path.

MoveToPointHelper

Provides information for a MovementAnimation or a ColliderBase about the direction and rotation when moving towards a target.

MovementAnimation

Modifies a property with a constant velocity and acceleration.

PathMovement

Interpolates an entity along a path and rotates it towards the target points.

Particles Components

The Particles components provide particle effect rendering.

Particle

The Particle component allows visual effects like fire, explosions, smoke or rain.

Particles

The OLD Particles component that should not be used any more.

Most useful QML Components

Item The Item is the most basic of all visual items in QML.
Animation The Animation element is the base of all QML animations lasting for a fixed time.
Timer The Timer item triggers a handler at a specified interval.
Loader The Loader item allows dynamically loading an Item-based subtree from a URL or Component.

Click here to see a full list of all QML components