SlideShare ist ein Scribd-Unternehmen logo
1 von 34
Downloaden Sie, um offline zu lesen
iOS Game Development
   When Cocoa Met Cocos...




                      Joseph Ku (Chieh-Fang Ku)
                         chiehfang.ku@gmail.com
Outline
Where to start?...     Why cocos2d?

Let Apple help you!    Game design concepts

Piece of cake?         Elements of cocos2d

Game engines for       Last but not least...
iOS?
                       References
What’s cocos2d?


                                                       v1.0.2
                                         Build 201105100800
Who am I?
Joseph Ku (Chieh-Fang Ku)(@josephku)

  I started to learn programming since 1990,
  because I wanted to be a game
  programmer.

A video gamer since 1985

A Linux user since 1996

Ruby lover and Guitar Hero rocker
Who am I?

Game development history
  1989: My first board game -          喰       (not published)

  1991: My first RPG game - The Legend of Love (not for public)

       All written in x86 Assembly language

  1992: Audio card driver of Rich 2

  (...Time flies......)


                                                  To be continue...
Who am I?

Game development history
  2003: Former contributor of Crystal Space (3D game engine)

  2004: Experimental 3D game engine - JBOX

  (...Time flies again......)

  2010: My second board game - 5 Elements (Ready to sell)

      Nobody bird me...... Orz
Before we start...


Don’t take any notes. This slide will be
published with CC BY-NC-ND.



You could interrupt me anytime.
Before we start...
Layers of iOS

  Cocoa Touch

  Media

  Core Services

  Core OS
Before we start...

iOS SDK
  XCode Tools

     XCode

     Interface Builder

     Instruments

  iOS Simulator

  iOS Developer Library
Before we start...
480x320

  iPhone, iPhone 3G, iPhone 3GS, iPod Touch

960x640 (Retina Display)

  iPhone 4, iPod Touch 4G

1024x768

  iPad, iPad2
Let Apple help you!
Game Kit
Let Apple help you!
OpenGL ES 2.0

UIKit

Core Animation

AV Foundation Framework

Accelerometer

HTTP
Let Apple help you!


In-App Purchase

iAds

Airplay
Piece of cake?

It’s is not as easy as you thought!

Better than developing games on PS2

  PS2: CPU 294.912MHz, RAM 32MB

  iPhone: 800 MHz, RAM 512MB

Multiple function device
Babe, you are not alone

 Backgrounded

 Phone call

 Home button pressed

 SMS message

 etc.
Endless tuning

One second is a long time

Load the assets you need interactively with
the player

Optimize loading times

Playing again and again and again
Game Engines for iOS
iTorque 2D

  Full source. No royalties. One price.

  $99

Corona

  Free as a trial

  $199/year
Game Engines for iOS
Unity

  Professional 3D game engine

  $400

SIO2 Engine

  3D game engine

  $499.99. Including source code.
Cocos2d
What’s cocos2d?

Accurate name: cocos2d for iPhone

Based on Cocos2d which was written in
Python

Written in Objective-C

App Store approved

  More than 2500 games use it
Why cocos2d?
Free.

  Open source game engine

  MIT license

Integrated with Box2D and Chipmunk

Supports Retina Display

Integrated Pause/Resume
Game design concepts


Graphics

Audio

Input

(AI)
Game design concepts


Render Frame -> Game Sim -> User Input

Render Frame -> User Input -> Game Sim

CADisplayLink -> Render Frame -> User Input
-> Game Sim
Game design concepts
Flow
Elements of cocos2d
CCDirector

Draw & Update

Scene & Layer

CCNode

  CCSprite

CCAction
Elements of cocos2d
Last but not least...

External display support

  New UIScreen

  “View Programming Guide for iOS”

     Windows -> Displaying Content on an
     External Display

     Added on 2011-03-08
Demo
Demo
Last but not least...

Keep watching on AirPlay APIs

How about writing a game for Mac App
Store?

Be a real game developer

  Game Programming Gems series

  Game Developer Magazine
References

iTorque2D

   http://www.garagegames.com/products/torque-2d/iphone

Corona

   http://www.anscamobile.com/corona/

Unity

   http://unity3d.com/
References

Shadow Era

   http://www.shadowera.com/

SIO2 Engine

   http://sio2interactive.com/

Cocoa2D for iPhone

   http://www.cocos2d-iphone.org/
References

Game Kit Programming Guide

   http://developer.apple.com/library/ios/documentation/
   NetworkingInternet/Conceptual/GameKit_Guide/

View Programming Guide for iOS

   http://developer.apple.com/library/ios/documentation/
   WindowsViews/Conceptual/ViewPG_iPhoneOS/
References


Game Programming Gems

   http://www.gameprogramminggems.com/

Game Developer Magazine

   http://www.gdmag.com/
Any questions?

Weitere ähnliche Inhalte

Was ist angesagt?

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
 
Unity introduction for programmers
Unity introduction for programmersUnity introduction for programmers
Unity introduction for programmersNoam Gat
 
Habitat Indie Game Development Pre-Post Mortem
Habitat Indie Game Development Pre-Post MortemHabitat Indie Game Development Pre-Post Mortem
Habitat Indie Game Development Pre-Post MortemCharles Cox
 
Creating a serious game with the Unity 3D Game Engine and the importance of m...
Creating a serious game with the Unity 3D Game Engine and the importance of m...Creating a serious game with the Unity 3D Game Engine and the importance of m...
Creating a serious game with the Unity 3D Game Engine and the importance of m...danielandlubo
 
Unity 3D
Unity 3DUnity 3D
Unity 3Dgema123
 
Casual and Social Games with Unity
Casual and Social Games with UnityCasual and Social Games with Unity
Casual and Social Games with UnityTadej Gregorcic
 
Game Engine Overview
Game Engine OverviewGame Engine Overview
Game Engine OverviewSharad Mitra
 
Game Project / Working with Unity
Game Project / Working with UnityGame Project / Working with Unity
Game Project / Working with UnityPetri Lankoski
 
A Brief Guide to Game Engines
A Brief Guide to Game EnginesA Brief Guide to Game Engines
A Brief Guide to Game EnginesDavid Parsons
 
Mobile Game Development in Unity
Mobile Game Development in UnityMobile Game Development in Unity
Mobile Game Development in UnityHakan Saglam
 
Android game engine
Android game engineAndroid game engine
Android game engineJulian Chu
 
Unity 3D game engine seminar
Unity 3D game engine  seminarUnity 3D game engine  seminar
Unity 3D game engine seminarNikhilThorat15
 
Making A Game Engine Is Easier Than You Think
Making A Game Engine Is Easier Than You ThinkMaking A Game Engine Is Easier Than You Think
Making A Game Engine Is Easier Than You ThinkGorm Lai
 
Introduction to Unity3D and Building your First Game
Introduction to Unity3D and Building your First GameIntroduction to Unity3D and Building your First Game
Introduction to Unity3D and Building your First GameSarah Sexton
 

Was ist angesagt? (20)

Unity: Introduction
Unity: IntroductionUnity: Introduction
Unity: Introduction
 
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
 
Unity - Game Engine
Unity - Game EngineUnity - Game Engine
Unity - Game Engine
 
Unity 3D, A game engine
Unity 3D, A game engineUnity 3D, A game engine
Unity 3D, A game engine
 
Unity introduction for programmers
Unity introduction for programmersUnity introduction for programmers
Unity introduction for programmers
 
Habitat Indie Game Development Pre-Post Mortem
Habitat Indie Game Development Pre-Post MortemHabitat Indie Game Development Pre-Post Mortem
Habitat Indie Game Development Pre-Post Mortem
 
Creating a serious game with the Unity 3D Game Engine and the importance of m...
Creating a serious game with the Unity 3D Game Engine and the importance of m...Creating a serious game with the Unity 3D Game Engine and the importance of m...
Creating a serious game with the Unity 3D Game Engine and the importance of m...
 
Unity 3D
Unity 3DUnity 3D
Unity 3D
 
Unity
UnityUnity
Unity
 
Casual and Social Games with Unity
Casual and Social Games with UnityCasual and Social Games with Unity
Casual and Social Games with Unity
 
Game Engine Overview
Game Engine OverviewGame Engine Overview
Game Engine Overview
 
Game Project / Working with Unity
Game Project / Working with UnityGame Project / Working with Unity
Game Project / Working with Unity
 
A Brief Guide to Game Engines
A Brief Guide to Game EnginesA Brief Guide to Game Engines
A Brief Guide to Game Engines
 
Mobile Game Development in Unity
Mobile Game Development in UnityMobile Game Development in Unity
Mobile Game Development in Unity
 
Android game engine
Android game engineAndroid game engine
Android game engine
 
Unity 3D game engine seminar
Unity 3D game engine  seminarUnity 3D game engine  seminar
Unity 3D game engine seminar
 
Making A Game Engine Is Easier Than You Think
Making A Game Engine Is Easier Than You ThinkMaking A Game Engine Is Easier Than You Think
Making A Game Engine Is Easier Than You Think
 
Unity 3D VS your team
Unity 3D VS your teamUnity 3D VS your team
Unity 3D VS your team
 
Introduction to Unity3D and Building your First Game
Introduction to Unity3D and Building your First GameIntroduction to Unity3D and Building your First Game
Introduction to Unity3D and Building your First Game
 
Game development unity
Game development unityGame development unity
Game development unity
 

Ähnlich wie iOS Game Development with Cocos2d

An Introduction To Game development
An Introduction To Game developmentAn Introduction To Game development
An Introduction To Game developmentAhmed
 
Funky game engines
Funky game enginesFunky game engines
Funky game engineseduriez
 
Gaming technology
Gaming technologyGaming technology
Gaming technologymax_montu
 
Gaming Technology Presentation
Gaming Technology PresentationGaming Technology Presentation
Gaming Technology PresentationMrQaz996
 
All About Gaming - By Sai Krishna A & Roopsai N
All About Gaming - By Sai Krishna A & Roopsai NAll About Gaming - By Sai Krishna A & Roopsai N
All About Gaming - By Sai Krishna A & Roopsai NSai Krishna A
 
How hard can it be - Ui development at keen games
How hard can it be - Ui development at keen gamesHow hard can it be - Ui development at keen games
How hard can it be - Ui development at keen gamesJulien Koenen
 
Build a Game in 60 minutes
Build a Game in 60 minutesBuild a Game in 60 minutes
Build a Game in 60 minutesTroy Miles
 
Lecture 1 Introduction to VR Programming
Lecture 1 Introduction to VR ProgrammingLecture 1 Introduction to VR Programming
Lecture 1 Introduction to VR ProgrammingKobkrit Viriyayudhakorn
 
Game development with Cocos2d-x Engine
Game development with Cocos2d-x EngineGame development with Cocos2d-x Engine
Game development with Cocos2d-x EngineDuy Tan Geek
 
Cross Platform Game Programming with Cocos2d-js
Cross Platform Game Programming with Cocos2d-jsCross Platform Game Programming with Cocos2d-js
Cross Platform Game Programming with Cocos2d-jsTroy Miles
 
The Ultimate Gaming
The Ultimate GamingThe Ultimate Gaming
The Ultimate Gamingkoolshreeram
 
Socialize and Gaming on the move
Socialize and Gaming on the moveSocialize and Gaming on the move
Socialize and Gaming on the moveRIA RUI Society
 

Ähnlich wie iOS Game Development with Cocos2d (20)

An Introduction To Game development
An Introduction To Game developmentAn Introduction To Game development
An Introduction To Game development
 
Funky game engines
Funky game enginesFunky game engines
Funky game engines
 
Gaming technology
Gaming technologyGaming technology
Gaming technology
 
Gaming technology
Gaming technologyGaming technology
Gaming technology
 
Gaming Technology Presentation
Gaming Technology PresentationGaming Technology Presentation
Gaming Technology Presentation
 
prithiv's gaming technology.pptx
prithiv's gaming technology.pptxprithiv's gaming technology.pptx
prithiv's gaming technology.pptx
 
All About Gaming - By Sai Krishna A & Roopsai N
All About Gaming - By Sai Krishna A & Roopsai NAll About Gaming - By Sai Krishna A & Roopsai N
All About Gaming - By Sai Krishna A & Roopsai N
 
How hard can it be - Ui development at keen games
How hard can it be - Ui development at keen gamesHow hard can it be - Ui development at keen games
How hard can it be - Ui development at keen games
 
Build a Game in 60 minutes
Build a Game in 60 minutesBuild a Game in 60 minutes
Build a Game in 60 minutes
 
Lecture 1 Introduction to VR Programming
Lecture 1 Introduction to VR ProgrammingLecture 1 Introduction to VR Programming
Lecture 1 Introduction to VR Programming
 
JRC Seminar (History of Video Game Industry)
JRC Seminar (History of Video Game Industry)JRC Seminar (History of Video Game Industry)
JRC Seminar (History of Video Game Industry)
 
Game development with Cocos2d-x Engine
Game development with Cocos2d-x EngineGame development with Cocos2d-x Engine
Game development with Cocos2d-x Engine
 
Vido game and kinect
Vido game and kinectVido game and kinect
Vido game and kinect
 
Indie Game Development Intro
Indie Game Development IntroIndie Game Development Intro
Indie Game Development Intro
 
Cross Platform Game Programming with Cocos2d-js
Cross Platform Game Programming with Cocos2d-jsCross Platform Game Programming with Cocos2d-js
Cross Platform Game Programming with Cocos2d-js
 
The Ultimate Gaming
The Ultimate GamingThe Ultimate Gaming
The Ultimate Gaming
 
Socialize and Gaming on the move
Socialize and Gaming on the moveSocialize and Gaming on the move
Socialize and Gaming on the move
 
Zombi - Shoot for Survive
Zombi - Shoot for SurviveZombi - Shoot for Survive
Zombi - Shoot for Survive
 
Kinect
KinectKinect
Kinect
 
Motion Game
Motion GameMotion Game
Motion Game
 

Mehr von Joseph Ku

R&B: When Ruby Met Bitcoin
R&B: When Ruby Met BitcoinR&B: When Ruby Met Bitcoin
R&B: When Ruby Met BitcoinJoseph Ku
 
Swift Introduction to Swift in Ruby
Swift Introduction to Swift in RubySwift Introduction to Swift in Ruby
Swift Introduction to Swift in RubyJoseph Ku
 
第一次去 WWDC 就上手
第一次去 WWDC 就上手第一次去 WWDC 就上手
第一次去 WWDC 就上手Joseph Ku
 
手機遊戲開發的兩三事
手機遊戲開發的兩三事手機遊戲開發的兩三事
手機遊戲開發的兩三事Joseph Ku
 
RubyMotion Gets A Cool New Friend: mruby on iOS
RubyMotion Gets A Cool New Friend: mruby on iOSRubyMotion Gets A Cool New Friend: mruby on iOS
RubyMotion Gets A Cool New Friend: mruby on iOSJoseph Ku
 
RubyMotion: Hack Your iOS App Like Never Before
RubyMotion: Hack Your iOS App Like Never BeforeRubyMotion: Hack Your iOS App Like Never Before
RubyMotion: Hack Your iOS App Like Never BeforeJoseph Ku
 
Ruby on Google App Engine: Upgrade to Google App "Turbo" Engine
Ruby on Google App Engine: Upgrade to Google App "Turbo" EngineRuby on Google App Engine: Upgrade to Google App "Turbo" Engine
Ruby on Google App Engine: Upgrade to Google App "Turbo" EngineJoseph Ku
 

Mehr von Joseph Ku (7)

R&B: When Ruby Met Bitcoin
R&B: When Ruby Met BitcoinR&B: When Ruby Met Bitcoin
R&B: When Ruby Met Bitcoin
 
Swift Introduction to Swift in Ruby
Swift Introduction to Swift in RubySwift Introduction to Swift in Ruby
Swift Introduction to Swift in Ruby
 
第一次去 WWDC 就上手
第一次去 WWDC 就上手第一次去 WWDC 就上手
第一次去 WWDC 就上手
 
手機遊戲開發的兩三事
手機遊戲開發的兩三事手機遊戲開發的兩三事
手機遊戲開發的兩三事
 
RubyMotion Gets A Cool New Friend: mruby on iOS
RubyMotion Gets A Cool New Friend: mruby on iOSRubyMotion Gets A Cool New Friend: mruby on iOS
RubyMotion Gets A Cool New Friend: mruby on iOS
 
RubyMotion: Hack Your iOS App Like Never Before
RubyMotion: Hack Your iOS App Like Never BeforeRubyMotion: Hack Your iOS App Like Never Before
RubyMotion: Hack Your iOS App Like Never Before
 
Ruby on Google App Engine: Upgrade to Google App "Turbo" Engine
Ruby on Google App Engine: Upgrade to Google App "Turbo" EngineRuby on Google App Engine: Upgrade to Google App "Turbo" Engine
Ruby on Google App Engine: Upgrade to Google App "Turbo" Engine
 

Kürzlich hochgeladen

Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
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
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your QueriesExploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your QueriesSanjay Willie
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 

Kürzlich hochgeladen (20)

Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
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
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your QueriesExploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 

iOS Game Development with Cocos2d

  • 1. iOS Game Development When Cocoa Met Cocos... Joseph Ku (Chieh-Fang Ku) chiehfang.ku@gmail.com
  • 2. Outline Where to start?... Why cocos2d? Let Apple help you! Game design concepts Piece of cake? Elements of cocos2d Game engines for Last but not least... iOS? References What’s cocos2d? v1.0.2 Build 201105100800
  • 3. Who am I? Joseph Ku (Chieh-Fang Ku)(@josephku) I started to learn programming since 1990, because I wanted to be a game programmer. A video gamer since 1985 A Linux user since 1996 Ruby lover and Guitar Hero rocker
  • 4. Who am I? Game development history 1989: My first board game - 喰 (not published) 1991: My first RPG game - The Legend of Love (not for public) All written in x86 Assembly language 1992: Audio card driver of Rich 2 (...Time flies......) To be continue...
  • 5. Who am I? Game development history 2003: Former contributor of Crystal Space (3D game engine) 2004: Experimental 3D game engine - JBOX (...Time flies again......) 2010: My second board game - 5 Elements (Ready to sell) Nobody bird me...... Orz
  • 6. Before we start... Don’t take any notes. This slide will be published with CC BY-NC-ND. You could interrupt me anytime.
  • 7. Before we start... Layers of iOS Cocoa Touch Media Core Services Core OS
  • 8. Before we start... iOS SDK XCode Tools XCode Interface Builder Instruments iOS Simulator iOS Developer Library
  • 9. Before we start... 480x320 iPhone, iPhone 3G, iPhone 3GS, iPod Touch 960x640 (Retina Display) iPhone 4, iPod Touch 4G 1024x768 iPad, iPad2
  • 10. Let Apple help you! Game Kit
  • 11. Let Apple help you! OpenGL ES 2.0 UIKit Core Animation AV Foundation Framework Accelerometer HTTP
  • 12. Let Apple help you! In-App Purchase iAds Airplay
  • 13. Piece of cake? It’s is not as easy as you thought! Better than developing games on PS2 PS2: CPU 294.912MHz, RAM 32MB iPhone: 800 MHz, RAM 512MB Multiple function device
  • 14. Babe, you are not alone Backgrounded Phone call Home button pressed SMS message etc.
  • 15. Endless tuning One second is a long time Load the assets you need interactively with the player Optimize loading times Playing again and again and again
  • 16. Game Engines for iOS iTorque 2D Full source. No royalties. One price. $99 Corona Free as a trial $199/year
  • 17. Game Engines for iOS Unity Professional 3D game engine $400 SIO2 Engine 3D game engine $499.99. Including source code.
  • 19. What’s cocos2d? Accurate name: cocos2d for iPhone Based on Cocos2d which was written in Python Written in Objective-C App Store approved More than 2500 games use it
  • 20. Why cocos2d? Free. Open source game engine MIT license Integrated with Box2D and Chipmunk Supports Retina Display Integrated Pause/Resume
  • 22. Game design concepts Render Frame -> Game Sim -> User Input Render Frame -> User Input -> Game Sim CADisplayLink -> Render Frame -> User Input -> Game Sim
  • 24. Elements of cocos2d CCDirector Draw & Update Scene & Layer CCNode CCSprite CCAction
  • 26. Last but not least... External display support New UIScreen “View Programming Guide for iOS” Windows -> Displaying Content on an External Display Added on 2011-03-08
  • 27. Demo
  • 28. Demo
  • 29. Last but not least... Keep watching on AirPlay APIs How about writing a game for Mac App Store? Be a real game developer Game Programming Gems series Game Developer Magazine
  • 30. References iTorque2D http://www.garagegames.com/products/torque-2d/iphone Corona http://www.anscamobile.com/corona/ Unity http://unity3d.com/
  • 31. References Shadow Era http://www.shadowera.com/ SIO2 Engine http://sio2interactive.com/ Cocoa2D for iPhone http://www.cocos2d-iphone.org/
  • 32. References Game Kit Programming Guide http://developer.apple.com/library/ios/documentation/ NetworkingInternet/Conceptual/GameKit_Guide/ View Programming Guide for iOS http://developer.apple.com/library/ios/documentation/ WindowsViews/Conceptual/ViewPG_iPhoneOS/
  • 33. References Game Programming Gems http://www.gameprogramminggems.com/ Game Developer Magazine http://www.gdmag.com/