SlideShare a Scribd company logo
1 of 30
Download to read offline
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

More Related Content

What's hot

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
 

What's hot (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
 

Viewers also liked

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
 

Viewers also liked (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
 

Similar to 10 Years of 2D Game Development Using Starling Framework

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
 

Similar to 10 Years of 2D Game Development Using Starling Framework (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
 

Recently uploaded

Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 

Recently uploaded (20)

Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 

10 Years of 2D Game Development Using Starling Framework

  • 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