SlideShare ist ein Scribd-Unternehmen logo
1 von 21
Downloaden Sie, um offline zu lesen
Cross Platform Mobile
Game Development

Saturday, August 24, 13
About Me
•

Allan Davis

•
•
•

Saturday, August 24, 13

http://www.cajuncode.com
Email: Cajun.code@gmail.com
Twitter: @cajun_code
Agenda

Saturday, August 24, 13
• Graphics
•
•
•
•

Tools

Bitmap: Gimp, Photoshop, Pixelmator
Vector: Inkscape, iDraw
3D: Blender, 3D Studio Max
Other: TexturePacker

• Audio
•
Saturday, August 24, 13

•
•

Audacity: http://audacity.sourceforge.net/
Musescore: http://musescore.org

Frameworks
Mobile Game
Frameworks Landscape

• Corona
• Unity
• Cocos2d-X
• Many others ...
Saturday, August 24, 13
Corona
•
•
•
•
•
•
Saturday, August 24, 13

2d Game Framework
iOS, Android
Lua
Closed Source
Free to use Starter version

•

Does allow publishing

http://coronalabs.com
Unity 3d
• 3d Environment for creating games
• Desktop, iOS, Android Blackberry
• C#, Javascript or Boo Script
• Closed Source
• Free to develop and publish
• http://unity3d.com/
Saturday, August 24, 13
Cocos2d-x
• 2D Game Framework
• iOS, Android, Windows Phone, Desktop
• Open Sourced
• C++ 11 (3.0 alpha)
• www.cocos2d-x.org
Saturday, August 24, 13
Demo:
Getting Started

Saturday, August 24, 13
Game loop
Setup
Game

Get User
Input

Update
Game
Objects

Update
Display

Done?
No

Saturday, August 24, 13

Yes

Shut
Down
Director
Class that creates and handle the main Window and manages how and
when to execute the Scenes.
The Director is also responsible for:
•
•
•
•
•

initializing the OpenGL context
setting the OpenGL pixel format (default on is RGB565)
setting the OpenGL buffer depth (default one is 0-bit)
setting the projection (default one is 3D)
setting the orientation (default one is Portrait)

Saturday, August 24, 13
Node
Anything that gets drawn or contains things that get
drawn is a Node.
The most popular Nodes are: Scene, Layer, Sprite,
Menu.

The main features of a Node are:
• They can contain other Node nodes (addChild,
getChildByTag, removeChild, etc)
• They can schedule periodic callback (schedule,
unschedule, etc)
• They can execute actions (runAction, stopAction,
etc)

Saturday, August 24, 13
Scene
• Scene an Node are
almost identical
with the difference
that Scene has it's
anchor point (by
default) at the
center of the
screen.

Saturday, August 24, 13
Layers

Layer is a subclass of Node that implements
the TouchEventsDelegate protocol.
All features from Node are valid,
plus the following new features:
• It can receive iPhone Touches
• It can receive Accelerometer input

Saturday, August 24, 13
Sprite

Saturday, August 24, 13
Sprite
Sprite is a 2d image ( http://en.wikipedia.org/wiki/Sprite_(computer_graphics) )
Sprite can be created with an image, or with a sub-rectangle of an image.
If the parent or any of its ancestors is a SpriteBatchNode then the following features/
limitations are valid
• Features when the parent is a BatchNode:
◦ MUCH faster rendering, specially if the SpriteBatchNode has many children.
All the children will be drawn in a single batch.
• Limitations
◦ Camera is not supported yet (eg: OrbitCamera action doesn't work)
◦ GridBase actions are not supported (eg: Lens, Ripple, Twirl)
◦ The Alias/Antialias property belongs to SpriteBatchNode, so you can't
individually set the aliased property.
◦ The Blending function property belongs to SpriteBatchNode, so you can't
individually set the blending function property.
◦ Parallax scroller is not supported, but can be simulated with a "proxy" sprite.

Saturday, August 24, 13
Sprite Batch Node
SpriteBatchNode is like a batch node: if it contains children, it will draw them in 1 single
OpenGL call (often known as "batch draw").
A SpriteBatchNode can reference one and only one texture (one image file, one texture atlas).
Only the Sprites that are contained in that texture can be added to the SpriteBatchNode. All
Sprites added to a SpriteBatchNode are drawn in one OpenGL ES draw call. If the Sprites are
not added to a SpriteBatchNode then an OpenGL ES draw call will be needed for each one,
which is less efficient.
Limitations:

• The only object that is accepted as child (or grandchild, grand-grandchild, etc...) is Sprite or
any subclass of Sprite. eg: particles, labels and layer can't be added to a SpriteBatchNode.
• Either all its children are Aliased or Antialiased. It can't be a mix. This is because "alias" is a
property of the texture, and all the sprites share the same texture.

Saturday, August 24, 13
Action

Saturday, August 24, 13
Demo:
FTL Effect: Invasion

Saturday, August 24, 13
Resources
• Webiste:
• http://www.cocos2d-x.org/
• Tutorials:
• http://www.raywenderlich.com/tutorials
• Book:
• http://www.packtpub.com/cocos2d-x-bySaturday, August 24, 13
Questions?

Saturday, August 24, 13

Weitere ähnliche Inhalte

Andere mochten auch

MobileCity:Introduction to IOS
MobileCity:Introduction to IOSMobileCity:Introduction to IOS
MobileCity:Introduction to IOSAllan Davis
 
MobileCity: Overview of ObjectiveC
MobileCity: Overview of ObjectiveCMobileCity: Overview of ObjectiveC
MobileCity: Overview of ObjectiveCAllan Davis
 
Architektura Publiczna
Architektura PublicznaArchitektura Publiczna
Architektura Publicznaj.zwolski
 
MobileCity: UI UX Design
MobileCity: UI UX DesignMobileCity: UI UX Design
MobileCity: UI UX DesignAllan Davis
 
Cross platform game development
Cross platform game developmentCross platform game development
Cross platform game developmentJerel Hass
 
Vr unity cardboard
Vr unity cardboardVr unity cardboard
Vr unity cardboardAllan Davis
 

Andere mochten auch (7)

MobileCity:Introduction to IOS
MobileCity:Introduction to IOSMobileCity:Introduction to IOS
MobileCity:Introduction to IOS
 
MobileCity: Overview of ObjectiveC
MobileCity: Overview of ObjectiveCMobileCity: Overview of ObjectiveC
MobileCity: Overview of ObjectiveC
 
Generators
GeneratorsGenerators
Generators
 
Architektura Publiczna
Architektura PublicznaArchitektura Publiczna
Architektura Publiczna
 
MobileCity: UI UX Design
MobileCity: UI UX DesignMobileCity: UI UX Design
MobileCity: UI UX Design
 
Cross platform game development
Cross platform game developmentCross platform game development
Cross platform game development
 
Vr unity cardboard
Vr unity cardboardVr unity cardboard
Vr unity cardboard
 

Ähnlich wie Cross Platform Mobile Game Development

Html5 Game Development with Canvas
Html5 Game Development with CanvasHtml5 Game Development with Canvas
Html5 Game Development with CanvasPham Huy Tung
 
Developing Multi Platform Games using PlayN and TriplePlay Framework
Developing Multi Platform Games using PlayN and TriplePlay FrameworkDeveloping Multi Platform Games using PlayN and TriplePlay Framework
Developing Multi Platform Games using PlayN and TriplePlay FrameworkCsaba Toth
 
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
 
44CON 2013 - Browser bug hunting - Memoirs of a last man standing - Atte Kett...
44CON 2013 - Browser bug hunting - Memoirs of a last man standing - Atte Kett...44CON 2013 - Browser bug hunting - Memoirs of a last man standing - Atte Kett...
44CON 2013 - Browser bug hunting - Memoirs of a last man standing - Atte Kett...44CON
 
An Introduction to Game Programming with Flash: An Introduction to Flash and ...
An Introduction to Game Programming with Flash: An Introduction to Flash and ...An Introduction to Game Programming with Flash: An Introduction to Flash and ...
An Introduction to Game Programming with Flash: An Introduction to Flash and ...Krzysztof Opałka
 
Rapid Game Development with RUby and Gosu – Ruby Manor 4
Rapid Game Development with RUby and Gosu – Ruby Manor 4Rapid Game Development with RUby and Gosu – Ruby Manor 4
Rapid Game Development with RUby and Gosu – Ruby Manor 4benko
 
Doug McCune - Using Open Source Flex and ActionScript Projects
Doug McCune - Using Open Source Flex and ActionScript ProjectsDoug McCune - Using Open Source Flex and ActionScript Projects
Doug McCune - Using Open Source Flex and ActionScript ProjectsDoug McCune
 
44 con slides
44 con slides44 con slides
44 con slidesgeeksec80
 
44 con slides (1)
44 con slides (1)44 con slides (1)
44 con slides (1)geeksec80
 
Данило Ульянич “C89 OpenGL for ARM microcontrollers on Cortex-M. Basic functi...
Данило Ульянич “C89 OpenGL for ARM microcontrollers on Cortex-M. Basic functi...Данило Ульянич “C89 OpenGL for ARM microcontrollers on Cortex-M. Basic functi...
Данило Ульянич “C89 OpenGL for ARM microcontrollers on Cortex-M. Basic functi...Lviv Startup Club
 
Eight Rules for Making Your First Great Game
Eight Rules for Making Your First Great GameEight Rules for Making Your First Great Game
Eight Rules for Making Your First Great GameNick Pruehs
 
Presentasi Adobe Camp 2012
Presentasi Adobe Camp 2012Presentasi Adobe Camp 2012
Presentasi Adobe Camp 2012Arie Prasetyo
 
Developing Next-Generation Games with Stage3D (Molehill)
Developing Next-Generation Games with Stage3D (Molehill) Developing Next-Generation Games with Stage3D (Molehill)
Developing Next-Generation Games with Stage3D (Molehill) Jean-Philippe Doiron
 
Web3D - Semantic standards, WebGL, HCI
Web3D - Semantic standards, WebGL, HCIWeb3D - Semantic standards, WebGL, HCI
Web3D - Semantic standards, WebGL, HCIVictor Porof
 
iOS Game Development With UIKit
iOS Game Development With UIKitiOS Game Development With UIKit
iOS Game Development With UIKitMartin Grider
 
Hacking the Kinect with GAFFTA Day 1
Hacking the Kinect with GAFFTA Day 1Hacking the Kinect with GAFFTA Day 1
Hacking the Kinect with GAFFTA Day 1benDesigning
 
Java on the GPU: Where are we now?
Java on the GPU: Where are we now?Java on the GPU: Where are we now?
Java on the GPU: Where are we now?Dmitry Alexandrov
 
Dark Silicon, Mobile Devices, and Possible Open-Source Solutions
Dark Silicon, Mobile Devices, and Possible Open-Source SolutionsDark Silicon, Mobile Devices, and Possible Open-Source Solutions
Dark Silicon, Mobile Devices, and Possible Open-Source SolutionsKoan-Sin Tan
 
Future Directions for Compute-for-Graphics
Future Directions for Compute-for-GraphicsFuture Directions for Compute-for-Graphics
Future Directions for Compute-for-GraphicsElectronic Arts / DICE
 

Ähnlich wie Cross Platform Mobile Game Development (20)

Html5 Game Development with Canvas
Html5 Game Development with CanvasHtml5 Game Development with Canvas
Html5 Game Development with Canvas
 
Developing Multi Platform Games using PlayN and TriplePlay Framework
Developing Multi Platform Games using PlayN and TriplePlay FrameworkDeveloping Multi Platform Games using PlayN and TriplePlay Framework
Developing Multi Platform Games using PlayN and TriplePlay Framework
 
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
 
44CON 2013 - Browser bug hunting - Memoirs of a last man standing - Atte Kett...
44CON 2013 - Browser bug hunting - Memoirs of a last man standing - Atte Kett...44CON 2013 - Browser bug hunting - Memoirs of a last man standing - Atte Kett...
44CON 2013 - Browser bug hunting - Memoirs of a last man standing - Atte Kett...
 
An Introduction to Game Programming with Flash: An Introduction to Flash and ...
An Introduction to Game Programming with Flash: An Introduction to Flash and ...An Introduction to Game Programming with Flash: An Introduction to Flash and ...
An Introduction to Game Programming with Flash: An Introduction to Flash and ...
 
Rapid Game Development with RUby and Gosu – Ruby Manor 4
Rapid Game Development with RUby and Gosu – Ruby Manor 4Rapid Game Development with RUby and Gosu – Ruby Manor 4
Rapid Game Development with RUby and Gosu – Ruby Manor 4
 
Doug McCune - Using Open Source Flex and ActionScript Projects
Doug McCune - Using Open Source Flex and ActionScript ProjectsDoug McCune - Using Open Source Flex and ActionScript Projects
Doug McCune - Using Open Source Flex and ActionScript Projects
 
44 con slides
44 con slides44 con slides
44 con slides
 
44 con slides (1)
44 con slides (1)44 con slides (1)
44 con slides (1)
 
Данило Ульянич “C89 OpenGL for ARM microcontrollers on Cortex-M. Basic functi...
Данило Ульянич “C89 OpenGL for ARM microcontrollers on Cortex-M. Basic functi...Данило Ульянич “C89 OpenGL for ARM microcontrollers on Cortex-M. Basic functi...
Данило Ульянич “C89 OpenGL for ARM microcontrollers on Cortex-M. Basic functi...
 
Eight Rules for Making Your First Great Game
Eight Rules for Making Your First Great GameEight Rules for Making Your First Great Game
Eight Rules for Making Your First Great Game
 
Presentasi Adobe Camp 2012
Presentasi Adobe Camp 2012Presentasi Adobe Camp 2012
Presentasi Adobe Camp 2012
 
Developing Next-Generation Games with Stage3D (Molehill)
Developing Next-Generation Games with Stage3D (Molehill) Developing Next-Generation Games with Stage3D (Molehill)
Developing Next-Generation Games with Stage3D (Molehill)
 
Web3D - Semantic standards, WebGL, HCI
Web3D - Semantic standards, WebGL, HCIWeb3D - Semantic standards, WebGL, HCI
Web3D - Semantic standards, WebGL, HCI
 
iOS Game Development With UIKit
iOS Game Development With UIKitiOS Game Development With UIKit
iOS Game Development With UIKit
 
Hacking the Kinect with GAFFTA Day 1
Hacking the Kinect with GAFFTA Day 1Hacking the Kinect with GAFFTA Day 1
Hacking the Kinect with GAFFTA Day 1
 
Java on the GPU: Where are we now?
Java on the GPU: Where are we now?Java on the GPU: Where are we now?
Java on the GPU: Where are we now?
 
Dark Silicon, Mobile Devices, and Possible Open-Source Solutions
Dark Silicon, Mobile Devices, and Possible Open-Source SolutionsDark Silicon, Mobile Devices, and Possible Open-Source Solutions
Dark Silicon, Mobile Devices, and Possible Open-Source Solutions
 
Future Directions for Compute-for-Graphics
Future Directions for Compute-for-GraphicsFuture Directions for Compute-for-Graphics
Future Directions for Compute-for-Graphics
 
SWT - Technical Deep Dive
SWT - Technical Deep DiveSWT - Technical Deep Dive
SWT - Technical Deep Dive
 

Kürzlich hochgeladen

04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdfChristopherTHyatt
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 

Kürzlich hochgeladen (20)

04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 

Cross Platform Mobile Game Development

  • 1. Cross Platform Mobile Game Development Saturday, August 24, 13
  • 2. About Me • Allan Davis • • • Saturday, August 24, 13 http://www.cajuncode.com Email: Cajun.code@gmail.com Twitter: @cajun_code
  • 4. • Graphics • • • • Tools Bitmap: Gimp, Photoshop, Pixelmator Vector: Inkscape, iDraw 3D: Blender, 3D Studio Max Other: TexturePacker • Audio • Saturday, August 24, 13 • • Audacity: http://audacity.sourceforge.net/ Musescore: http://musescore.org Frameworks
  • 5. Mobile Game Frameworks Landscape • Corona • Unity • Cocos2d-X • Many others ... Saturday, August 24, 13
  • 6. Corona • • • • • • Saturday, August 24, 13 2d Game Framework iOS, Android Lua Closed Source Free to use Starter version • Does allow publishing http://coronalabs.com
  • 7. Unity 3d • 3d Environment for creating games • Desktop, iOS, Android Blackberry • C#, Javascript or Boo Script • Closed Source • Free to develop and publish • http://unity3d.com/ Saturday, August 24, 13
  • 8. Cocos2d-x • 2D Game Framework • iOS, Android, Windows Phone, Desktop • Open Sourced • C++ 11 (3.0 alpha) • www.cocos2d-x.org Saturday, August 24, 13
  • 11. Director Class that creates and handle the main Window and manages how and when to execute the Scenes. The Director is also responsible for: • • • • • initializing the OpenGL context setting the OpenGL pixel format (default on is RGB565) setting the OpenGL buffer depth (default one is 0-bit) setting the projection (default one is 3D) setting the orientation (default one is Portrait) Saturday, August 24, 13
  • 12. Node Anything that gets drawn or contains things that get drawn is a Node. The most popular Nodes are: Scene, Layer, Sprite, Menu. The main features of a Node are: • They can contain other Node nodes (addChild, getChildByTag, removeChild, etc) • They can schedule periodic callback (schedule, unschedule, etc) • They can execute actions (runAction, stopAction, etc) Saturday, August 24, 13
  • 13. Scene • Scene an Node are almost identical with the difference that Scene has it's anchor point (by default) at the center of the screen. Saturday, August 24, 13
  • 14. Layers Layer is a subclass of Node that implements the TouchEventsDelegate protocol. All features from Node are valid, plus the following new features: • It can receive iPhone Touches • It can receive Accelerometer input Saturday, August 24, 13
  • 16. Sprite Sprite is a 2d image ( http://en.wikipedia.org/wiki/Sprite_(computer_graphics) ) Sprite can be created with an image, or with a sub-rectangle of an image. If the parent or any of its ancestors is a SpriteBatchNode then the following features/ limitations are valid • Features when the parent is a BatchNode: ◦ MUCH faster rendering, specially if the SpriteBatchNode has many children. All the children will be drawn in a single batch. • Limitations ◦ Camera is not supported yet (eg: OrbitCamera action doesn't work) ◦ GridBase actions are not supported (eg: Lens, Ripple, Twirl) ◦ The Alias/Antialias property belongs to SpriteBatchNode, so you can't individually set the aliased property. ◦ The Blending function property belongs to SpriteBatchNode, so you can't individually set the blending function property. ◦ Parallax scroller is not supported, but can be simulated with a "proxy" sprite. Saturday, August 24, 13
  • 17. Sprite Batch Node SpriteBatchNode is like a batch node: if it contains children, it will draw them in 1 single OpenGL call (often known as "batch draw"). A SpriteBatchNode can reference one and only one texture (one image file, one texture atlas). Only the Sprites that are contained in that texture can be added to the SpriteBatchNode. All Sprites added to a SpriteBatchNode are drawn in one OpenGL ES draw call. If the Sprites are not added to a SpriteBatchNode then an OpenGL ES draw call will be needed for each one, which is less efficient. Limitations: • The only object that is accepted as child (or grandchild, grand-grandchild, etc...) is Sprite or any subclass of Sprite. eg: particles, labels and layer can't be added to a SpriteBatchNode. • Either all its children are Aliased or Antialiased. It can't be a mix. This is because "alias" is a property of the texture, and all the sprites share the same texture. Saturday, August 24, 13
  • 20. Resources • Webiste: • http://www.cocos2d-x.org/ • Tutorials: • http://www.raywenderlich.com/tutorials • Book: • http://www.packtpub.com/cocos2d-x-bySaturday, August 24, 13