SlideShare ist ein Scribd-Unternehmen logo
1 von 30
Downloaden Sie, um offline zu lesen
Me & Csharks
●

10 years of Game Development

●

2D games for PC, Web, iOS & Android

●

Eye candy art

●

More than 300 games created

●

●

●

Covers tech like Actionscript, Starling, LibGDX, Cocos2D,
OpenFL, Unity, CreateJS, Smartfox Server, Torque etc
Creators of top games in Job / Management game
category
Active in evangelising game development
Some of our games
You

Let me know my audience
Some 2D Game examples
How to make them ?
Building blocks of a game
●

Art & UI - Artists

●

Code - Programmer

●

Sound & Music - Sound Artists

●

Story & Game Play - Creative Director

●

Play testing – Testers

●

Marketing team, Publisher, Analytics team, ...
Platforms
●

PC (Mac , Linux)

●

Web

●

PS4

●

Xbox

●

Android

●

iPhone, iPad

●

Wii, DS, PSP

●

Microconsoles, Smart TVs
Different tracks for a game programmer
●

C++ - Ultimate, Hard, Free, Puli

●

Java - Medium, Moderate, Android, Free

●

C# - Great, Modern, XNA, Unity, Moderate, Microsoft ?

●

Javascript - Web, Unity, Easy, Free, Fragmented

●

Starling uses Actionscript which is Java + javascript
A Game Engine
We use game frameworks to build our game
engine
Alternate 2D Game frameworks
●

Web - Phaser, CreateJS

●

Android - LibGDX (crossplatform), AndEngine

●

IOS - Cocos2DX (crossplatform), Sparrow, SpriteKit
Under the hood

●

DirectX

●

OpenGL / OpenGL ES
For the Non – Programmer ???
●

Web – Construct 2

●

Crossplatform - Gamemaker
The slide many of you may hate...
What else does a game developer need
●

Programming skill

●

Creative imagination

●

Patience

●

Should be a gamer

●

Logic & analytical skill. Find hacks & shortcuts.

●

Above all strong MATH skills - trigonometry, matrices,
physics equations, progressions etc
Hero of the day – Starling Framework
●

Created by Daniel Sperl of Gamua

●

Actionscript 3 language

●

Optimised for touch based devices
Flash & Actionscript
Flash is now only used for
●

Games

●

Video
Why Starling ?
●

Crossplatform

●

High Performance

●

Optimised for touch

●

Easy to learn, very same as AS3 default classes

●

Field tested & port of Sparrow

●

Great community

●

Supported by Adobe

●

Open source !
OOP refresher
●

AS3 is same as Java
A Class

●

Independent blue prints of functionality. Eg, Ball

●

Methods (functions). Eg, bounce()

●

Properties (variables). Eg, weight
var myBall:Ball=new Ball();
trace(myBall.weight);
myBall.bounce();
OOP refresher
Inheritance
●

Class can extend another class's functionality

●

Uses 'extends' keyword for the same
eg, Tiger extends Cat which already extends Animal
public class Cat extends Animal {
...
}
Development setup
We will need the following for Starling development

●

Flash Builder / Flashdevelop / FDT

●

Flex SDK, Compiler

●

AIR SDK, for crossplatform deployment

●

Flash Player standalone program for testing

●

Starling framework classes
Starling Graphics
Simple Starling code
Break !

Next we will start some exercises.
Let us check the development setup first.
Exercise 1

Add an image to stage!
Exercise 2

a. Move the image!
b. Set image at click position!
c. Frame based v/s Time based
Exercise 3

Texture Atlas!
Add an animated MovieClip to stage!
Start / Stop animation on click!
Exercise 4

Bouncing Ball!
Exercise 5

Trigonometry!
Rotating arrow!
Exercise 6

Move the arrow with arrows!
Exercise 7

Trigonometry!
Rotate & move arrow with arrows!
Let us create a game!

WORKSHOP
& crossplatform deployment

Weitere ähnliche Inhalte

Was ist angesagt?

Designing games with kodu_game_lab_v1
Designing games with kodu_game_lab_v1Designing games with kodu_game_lab_v1
Designing games with kodu_game_lab_v1KerryJTurner
 
Making HTML5 Games with Phaser
Making HTML5 Games with PhaserMaking HTML5 Games with Phaser
Making HTML5 Games with PhaserIndieOutpost
 
How to deliver a game in kodu
How to deliver a game in koduHow to deliver a game in kodu
How to deliver a game in koduNour Khouja
 

Was ist angesagt? (6)

Designing games with kodu_game_lab_v1
Designing games with kodu_game_lab_v1Designing games with kodu_game_lab_v1
Designing games with kodu_game_lab_v1
 
Phaser presentation
Phaser presentationPhaser presentation
Phaser presentation
 
Lib gdx 2015_corkdevio
Lib gdx 2015_corkdevioLib gdx 2015_corkdevio
Lib gdx 2015_corkdevio
 
Squash that Bug!
Squash that Bug!Squash that Bug!
Squash that Bug!
 
Making HTML5 Games with Phaser
Making HTML5 Games with PhaserMaking HTML5 Games with Phaser
Making HTML5 Games with Phaser
 
How to deliver a game in kodu
How to deliver a game in koduHow to deliver a game in kodu
How to deliver a game in kodu
 

Andere mochten auch

Unity 2d sharp
Unity 2d sharpUnity 2d sharp
Unity 2d sharpJerel Hass
 
My Level Design For 2D Scroll Game
My Level Design For 2D Scroll GameMy Level Design For 2D Scroll Game
My Level Design For 2D Scroll GameArron96
 
Developing a 2D Game - A Case Study (Ninja Puzzle) - Presented at CGGA 2013
Developing a 2D Game - A Case Study (Ninja Puzzle) - Presented at CGGA 2013Developing a 2D Game - A Case Study (Ninja Puzzle) - Presented at CGGA 2013
Developing a 2D Game - A Case Study (Ninja Puzzle) - Presented at CGGA 2013Pisal Setthawong
 
2D Endless Runner in Unity for Mobile - GDG DevFest Istanbul 2014
2D Endless Runner in Unity for Mobile - GDG DevFest Istanbul 20142D Endless Runner in Unity for Mobile - GDG DevFest Istanbul 2014
2D Endless Runner in Unity for Mobile - GDG DevFest Istanbul 2014Murat Gürel
 
Unity technologies on BarCamp Vilnius
Unity technologies on BarCamp VilniusUnity technologies on BarCamp Vilnius
Unity technologies on BarCamp VilniusBarCamp Lithuania
 
Unity in community powerpoint
Unity in community powerpointUnity in community powerpoint
Unity in community powerpointthinkzalot
 
Practical guide to optimization in Unity
Practical guide to optimization in UnityPractical guide to optimization in Unity
Practical guide to optimization in UnityDevGAMM Conference
 
Project presentation FPS
Project presentation FPSProject presentation FPS
Project presentation FPSShubham Rajput
 
Computer game graphics
Computer game graphicsComputer game graphics
Computer game graphicsCameron321
 
PRESENTATION ON Game Engine
PRESENTATION ON Game EnginePRESENTATION ON Game Engine
PRESENTATION ON Game EngineDiksha Bhargava
 
Unity introduction for programmers
Unity introduction for programmersUnity introduction for programmers
Unity introduction for programmersNoam Gat
 
Cg shaders with Unity3D
Cg shaders with Unity3DCg shaders with Unity3D
Cg shaders with Unity3DMichael Ivanov
 
The Basics of Unity - The Game Engine
The Basics of Unity - The Game EngineThe Basics of Unity - The Game Engine
The Basics of Unity - The Game EngineOrisysIndia
 
Mobile Game Development in Unity
Mobile Game Development in UnityMobile Game Development in Unity
Mobile Game Development in UnityHakan Saglam
 
Unity Programming
Unity Programming Unity Programming
Unity Programming Sperasoft
 
Android Application And Unity3D Game Documentation
Android Application And Unity3D Game DocumentationAndroid Application And Unity3D Game Documentation
Android Application And Unity3D Game DocumentationSneh Raval
 
What Is A Game Engine
What Is A Game EngineWhat Is A Game Engine
What Is A Game EngineSeth Sivak
 

Andere mochten auch (20)

Unity 2d sharp
Unity 2d sharpUnity 2d sharp
Unity 2d sharp
 
My Level Design For 2D Scroll Game
My Level Design For 2D Scroll GameMy Level Design For 2D Scroll Game
My Level Design For 2D Scroll Game
 
Developing a 2D Game - A Case Study (Ninja Puzzle) - Presented at CGGA 2013
Developing a 2D Game - A Case Study (Ninja Puzzle) - Presented at CGGA 2013Developing a 2D Game - A Case Study (Ninja Puzzle) - Presented at CGGA 2013
Developing a 2D Game - A Case Study (Ninja Puzzle) - Presented at CGGA 2013
 
2D Endless Runner in Unity for Mobile - GDG DevFest Istanbul 2014
2D Endless Runner in Unity for Mobile - GDG DevFest Istanbul 20142D Endless Runner in Unity for Mobile - GDG DevFest Istanbul 2014
2D Endless Runner in Unity for Mobile - GDG DevFest Istanbul 2014
 
Unity technologies on BarCamp Vilnius
Unity technologies on BarCamp VilniusUnity technologies on BarCamp Vilnius
Unity technologies on BarCamp Vilnius
 
Unity in community powerpoint
Unity in community powerpointUnity in community powerpoint
Unity in community powerpoint
 
Unity is strength presentation handout
Unity is strength   presentation handoutUnity is strength   presentation handout
Unity is strength presentation handout
 
Practical guide to optimization in Unity
Practical guide to optimization in UnityPractical guide to optimization in Unity
Practical guide to optimization in Unity
 
Project presentation FPS
Project presentation FPSProject presentation FPS
Project presentation FPS
 
Unity 5 Overview
Unity 5 OverviewUnity 5 Overview
Unity 5 Overview
 
Computer game graphics
Computer game graphicsComputer game graphics
Computer game graphics
 
PRESENTATION ON Game Engine
PRESENTATION ON Game EnginePRESENTATION ON Game Engine
PRESENTATION ON Game Engine
 
Unity introduction for programmers
Unity introduction for programmersUnity introduction for programmers
Unity introduction for programmers
 
2D graphics
2D graphics2D graphics
2D graphics
 
Cg shaders with Unity3D
Cg shaders with Unity3DCg shaders with Unity3D
Cg shaders with Unity3D
 
The Basics of Unity - The Game Engine
The Basics of Unity - The Game EngineThe Basics of Unity - The Game Engine
The Basics of Unity - The Game Engine
 
Mobile Game Development in Unity
Mobile Game Development in UnityMobile Game Development in Unity
Mobile Game Development in Unity
 
Unity Programming
Unity Programming Unity Programming
Unity Programming
 
Android Application And Unity3D Game Documentation
Android Application And Unity3D Game DocumentationAndroid Application And Unity3D Game Documentation
Android Application And Unity3D Game Documentation
 
What Is A Game Engine
What Is A Game EngineWhat Is A Game Engine
What Is A Game Engine
 

Ähnlich wie 2D Game Development with Starling

Castle Game Engine and the joy of making and using a custom game engine
Castle Game Engine and the joy  of making and using a custom game engineCastle Game Engine and the joy  of making and using a custom game engine
Castle Game Engine and the joy of making and using a custom game engineMichalis Kamburelis
 
Presentation 1 22nd August 2008
Presentation 1   22nd August 2008Presentation 1   22nd August 2008
Presentation 1 22nd August 2008carlyle o
 
Adobe gaming today tomorrow Trento
Adobe gaming today tomorrow TrentoAdobe gaming today tomorrow Trento
Adobe gaming today tomorrow TrentoInSide Training
 
Flutter not yet another mobile cross-platform framework - i ox-kl19
Flutter   not yet another mobile cross-platform framework - i ox-kl19Flutter   not yet another mobile cross-platform framework - i ox-kl19
Flutter not yet another mobile cross-platform framework - i ox-kl19oradoe
 
Casual Engines 2009
Casual Engines 2009Casual Engines 2009
Casual Engines 2009David Fox
 
Html5 Game Development with Canvas
Html5 Game Development with CanvasHtml5 Game Development with Canvas
Html5 Game Development with CanvasPham Huy Tung
 
Building Multi-platform Video Games for the Cloud
Building Multi-platform Video Games for the CloudBuilding Multi-platform Video Games for the Cloud
Building Multi-platform Video Games for the CloudChris Schalk
 
GDD 2011 - How to build kick ass video games for the cloud
GDD 2011 - How to build kick ass video games for the cloudGDD 2011 - How to build kick ass video games for the cloud
GDD 2011 - How to build kick ass video games for the cloudChris Schalk
 
Using JavaScript to write Native Mobile Applications
Using JavaScript to write Native Mobile ApplicationsUsing JavaScript to write Native Mobile Applications
Using JavaScript to write Native Mobile ApplicationsDerek Anderson
 
Porting games from ps3 or web to shield and ouya [final]
Porting games from ps3 or web to shield and ouya [final]Porting games from ps3 or web to shield and ouya [final]
Porting games from ps3 or web to shield and ouya [final]Jean-Philippe Doiron
 
Introduction to html5 game programming with impact js
Introduction to html5 game programming with impact jsIntroduction to html5 game programming with impact js
Introduction to html5 game programming with impact jsLuca Galli
 
Iphone and Ipad development Game with Cocos2D
Iphone and Ipad development Game with Cocos2DIphone and Ipad development Game with Cocos2D
Iphone and Ipad development Game with Cocos2Dcreagamers
 
Dart the Better JavaScript
Dart the Better JavaScriptDart the Better JavaScript
Dart the Better JavaScriptJorg Janke
 
How to develop and localize Xbox 360 titles
How to develop and localize Xbox 360 titlesHow to develop and localize Xbox 360 titles
How to develop and localize Xbox 360 titlesSangJin Kang
 
Mobile games, from idea to product
Mobile games, from idea to productMobile games, from idea to product
Mobile games, from idea to productÀlex Cabrera Gil
 

Ähnlich wie 2D Game Development with Starling (20)

Castle Game Engine and the joy of making and using a custom game engine
Castle Game Engine and the joy  of making and using a custom game engineCastle Game Engine and the joy  of making and using a custom game engine
Castle Game Engine and the joy of making and using a custom game engine
 
Presentation 1 22nd August 2008
Presentation 1   22nd August 2008Presentation 1   22nd August 2008
Presentation 1 22nd August 2008
 
Adobe gaming today tomorrow Trento
Adobe gaming today tomorrow TrentoAdobe gaming today tomorrow Trento
Adobe gaming today tomorrow Trento
 
ProfessionalResume
ProfessionalResumeProfessionalResume
ProfessionalResume
 
Flutter not yet another mobile cross-platform framework - i ox-kl19
Flutter   not yet another mobile cross-platform framework - i ox-kl19Flutter   not yet another mobile cross-platform framework - i ox-kl19
Flutter not yet another mobile cross-platform framework - i ox-kl19
 
Casual Engines 2009
Casual Engines 2009Casual Engines 2009
Casual Engines 2009
 
Html5 Game Development with Canvas
Html5 Game Development with CanvasHtml5 Game Development with Canvas
Html5 Game Development with Canvas
 
Retour JavaOne 2009
Retour JavaOne 2009Retour JavaOne 2009
Retour JavaOne 2009
 
Building Multi-platform Video Games for the Cloud
Building Multi-platform Video Games for the CloudBuilding Multi-platform Video Games for the Cloud
Building Multi-platform Video Games for the Cloud
 
GDD 2011 - How to build kick ass video games for the cloud
GDD 2011 - How to build kick ass video games for the cloudGDD 2011 - How to build kick ass video games for the cloud
GDD 2011 - How to build kick ass video games for the cloud
 
Using JavaScript to write Native Mobile Applications
Using JavaScript to write Native Mobile ApplicationsUsing JavaScript to write Native Mobile Applications
Using JavaScript to write Native Mobile Applications
 
Porting games from ps3 or web to shield and ouya [final]
Porting games from ps3 or web to shield and ouya [final]Porting games from ps3 or web to shield and ouya [final]
Porting games from ps3 or web to shield and ouya [final]
 
ArshadCVMarch2016
ArshadCVMarch2016ArshadCVMarch2016
ArshadCVMarch2016
 
Ankit goel cv
Ankit goel cvAnkit goel cv
Ankit goel cv
 
Android game ppt
Android game pptAndroid game ppt
Android game ppt
 
Introduction to html5 game programming with impact js
Introduction to html5 game programming with impact jsIntroduction to html5 game programming with impact js
Introduction to html5 game programming with impact js
 
Iphone and Ipad development Game with Cocos2D
Iphone and Ipad development Game with Cocos2DIphone and Ipad development Game with Cocos2D
Iphone and Ipad development Game with Cocos2D
 
Dart the Better JavaScript
Dart the Better JavaScriptDart the Better JavaScript
Dart the Better JavaScript
 
How to develop and localize Xbox 360 titles
How to develop and localize Xbox 360 titlesHow to develop and localize Xbox 360 titles
How to develop and localize Xbox 360 titles
 
Mobile games, from idea to product
Mobile games, from idea to productMobile games, from idea to product
Mobile games, from idea to product
 

Kürzlich hochgeladen

Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 

Kürzlich hochgeladen (20)

Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 

2D Game Development with Starling

  • 1.
  • 2. Me & Csharks ● 10 years of Game Development ● 2D games for PC, Web, iOS & Android ● Eye candy art ● More than 300 games created ● ● ● Covers tech like Actionscript, Starling, LibGDX, Cocos2D, OpenFL, Unity, CreateJS, Smartfox Server, Torque etc Creators of top games in Job / Management game category Active in evangelising game development
  • 3. Some of our games
  • 4. You Let me know my audience
  • 5. Some 2D Game examples
  • 6. How to make them ?
  • 7. Building blocks of a game ● Art & UI - Artists ● Code - Programmer ● Sound & Music - Sound Artists ● Story & Game Play - Creative Director ● Play testing – Testers ● Marketing team, Publisher, Analytics team, ...
  • 8. Platforms ● PC (Mac , Linux) ● Web ● PS4 ● Xbox ● Android ● iPhone, iPad ● Wii, DS, PSP ● Microconsoles, Smart TVs
  • 9. Different tracks for a game programmer ● C++ - Ultimate, Hard, Free, Puli ● Java - Medium, Moderate, Android, Free ● C# - Great, Modern, XNA, Unity, Moderate, Microsoft ? ● Javascript - Web, Unity, Easy, Free, Fragmented ● Starling uses Actionscript which is Java + javascript
  • 10. A Game Engine We use game frameworks to build our game engine
  • 11. Alternate 2D Game frameworks ● Web - Phaser, CreateJS ● Android - LibGDX (crossplatform), AndEngine ● IOS - Cocos2DX (crossplatform), Sparrow, SpriteKit Under the hood ● DirectX ● OpenGL / OpenGL ES
  • 12. For the Non – Programmer ??? ● Web – Construct 2 ● Crossplatform - Gamemaker
  • 13. The slide many of you may hate... What else does a game developer need ● Programming skill ● Creative imagination ● Patience ● Should be a gamer ● Logic & analytical skill. Find hacks & shortcuts. ● Above all strong MATH skills - trigonometry, matrices, physics equations, progressions etc
  • 14. Hero of the day – Starling Framework ● Created by Daniel Sperl of Gamua ● Actionscript 3 language ● Optimised for touch based devices
  • 15. Flash & Actionscript Flash is now only used for ● Games ● Video
  • 16. Why Starling ? ● Crossplatform ● High Performance ● Optimised for touch ● Easy to learn, very same as AS3 default classes ● Field tested & port of Sparrow ● Great community ● Supported by Adobe ● Open source !
  • 17. OOP refresher ● AS3 is same as Java A Class ● Independent blue prints of functionality. Eg, Ball ● Methods (functions). Eg, bounce() ● Properties (variables). Eg, weight var myBall:Ball=new Ball(); trace(myBall.weight); myBall.bounce();
  • 18. OOP refresher Inheritance ● Class can extend another class's functionality ● Uses 'extends' keyword for the same eg, Tiger extends Cat which already extends Animal public class Cat extends Animal { ... }
  • 19. Development setup We will need the following for Starling development ● Flash Builder / Flashdevelop / FDT ● Flex SDK, Compiler ● AIR SDK, for crossplatform deployment ● Flash Player standalone program for testing ● Starling framework classes
  • 22. Break ! Next we will start some exercises. Let us check the development setup first.
  • 23. Exercise 1 Add an image to stage!
  • 24. Exercise 2 a. Move the image! b. Set image at click position! c. Frame based v/s Time based
  • 25. Exercise 3 Texture Atlas! Add an animated MovieClip to stage! Start / Stop animation on click!
  • 28. Exercise 6 Move the arrow with arrows!
  • 29. Exercise 7 Trigonometry! Rotate & move arrow with arrows!
  • 30. Let us create a game! WORKSHOP & crossplatform deployment