Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

27
Creating a Game using Qt Quick Angry Developer

description

Here is how you can create a simple but advanced Game in QML with JavaScript. Download code: http://tinyurl.com/AngryDeveloper

Transcript of Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

Page 1: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

Creating a Game using Qt Quick

Angry Developer

Page 2: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

1. Cutting Edge UI 1 QML file & images

2. JavaScript binding

1 JavaScript file

3. Putting it Together

Creating a Game using Qt Quick

Page 3: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

Game: Angry Developer

Playing Moving

Page 4: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

Angry Developer: Missed

Angry Missed

Page 5: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

Angry Developer: Hit “Hurrah!”

Happy Destroyed

Page 6: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

QML Elements

Page 7: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

State Change

Playing Angry Happy Pig Moving Pig Destroyed

Page 8: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

State Change

Page 9: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

Ball Animation

Bouncing Ball Animation Throw Transition

Page 10: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

Bouncing Ball Animation

Page 11: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

Throw Transition

Page 12: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

QML Logic (2 Timers)

Pig’s Random

Movement

Hit or Miss

Page 13: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

Timer Pig’s Movement

Page 14: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

Timer Hit or Miss

Page 15: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

Step 2. Rich Mobile Apps

JavaScript Expressions

Import JavaScript Files

RSS, XML, JSON, REST

Multi Threaded JavaScript

Page 16: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

JavaScript to build Rich Features

Qt Container

QML JavaScript

C++ is not Required

Page 17: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

JavaScript file: Clock.js

Page 18: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

QML Binding

Page 19: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

Putting the Game Together

In 5 easy Steps

Page 20: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

Step1/5: Create New Application

Create new Mobile Qt Application 1

Select Qt for PR1.3

Remove files

• mainwindow.ui

• mainwindow.h

• mainwindow.cpp

Page 21: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

2/5 Add Qt Declarative

QT += declarative In Project.pro file add 2

In our case add this to

NativeQMLJS.pro

Page 22: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

3/5 Add Qt Declarative

3 In main.cpp, include QtDeclarative and add code

Page 23: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

4/5 Add Files

QML file ,

Images and

JavaScript File

* Make sure your JavaScript file name is lowercase

as resources Add

Page 24: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

5/5 Add the Binding

Add the binding in QML file and call JavaScript

import "clock.js" as MyClock

Text {

id:txttime

text: MyClock.gettime()

}

Page 25: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

Demo

Angry Developer

Page 26: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

3 Steps for FAST development on

Download Qt SDK

Create UI QML

Develop Logic

JavaScript

Page 27: Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal

Thank You

Download MeeGo http://meego.com/downloads

Get Qt SDK with Qt Quick http://get.qt.nokia.com

Know MADDE http://wiki.maemo.org/MADDE

Questions [email protected] @rajeshlalnokia