SlideShare a Scribd company logo
Under Cocos2D Tree
     Maxim Zaks, Wooga
         @iceX33
Agenda

• Understanding the concepts behind
  Cocos2D
• Running through implementation of a very
  unpolished Memory Game
Implementation of
      Memory Game
1. Embedding Cocos2D
2. Scenes, Transitions and Menu
3. Layers and Actions
4. Game Logic, Simulation & Interaction
Implementation of
      Memory Game
5. Sprites and Textures
6. Frame by Frame Animation
7. Drawing primitives
8. Particles
1. Embedding Cocos2D
Cocoa Pods is your friend
Setting up window and root
       view controller
Under Cocos2D Tree @mdvecon 2013
Under Cocos2D Tree @mdvecon 2013
CCDirector Singleton with
  a lot of responsibilities

• UIViewController (handles CCGLView)
• Scene Manager
• RunLoop Manager (Draw, Animation,
  Scheduler)
• Interaction Manager (touchDispatcher)
2. Scenes, Transitions
      and Menu
Under Cocos2D Tree @mdvecon 2013
http://www.cocos2d-iphone.org/api-ref/latest-stable/interface_c_c_node.html
Under Cocos2D Tree @mdvecon 2013
Under Cocos2D Tree @mdvecon 2013
Under Cocos2D Tree @mdvecon 2013
Under Cocos2D Tree @mdvecon 2013
3. Layers and Actions
Under Cocos2D Tree @mdvecon 2013
Under Cocos2D Tree @mdvecon 2013
Under Cocos2D Tree @mdvecon 2013
http://blog.evergizmo.com/wp-content/uploads/2011/11/CCActions.png
Leaking Scenes!
Under Cocos2D Tree @mdvecon 2013
4. Game Logic,
Simulation and
  Interaction
Under Cocos2D Tree @mdvecon 2013
Under Cocos2D Tree @mdvecon 2013
Under Cocos2D Tree @mdvecon 2013
Under Cocos2D Tree @mdvecon 2013
Under Cocos2D Tree @mdvecon 2013
5. Sprites and Textures
Demo TexturePacker
Under Cocos2D Tree @mdvecon 2013
Under Cocos2D Tree @mdvecon 2013
Under Cocos2D Tree @mdvecon 2013
Under Cocos2D Tree @mdvecon 2013
6. Frame by Frame
     Animation
Under Cocos2D Tree @mdvecon 2013
Under Cocos2D Tree @mdvecon 2013
7. Drawing Primitives
Under Cocos2D Tree @mdvecon 2013
Under Cocos2D Tree @mdvecon 2013
8. Particles
Under Cocos2D Tree @mdvecon 2013
Demo
Particle Designer
Questions?
Thank you!


  Maxim Zaks
   @iceX33

More Related Content

Viewers also liked (19)

Don’t do Agile, be Agile @NSConf 2013
Don’t do Agile, be Agile @NSConf 2013Don’t do Agile, be Agile @NSConf 2013
Don’t do Agile, be Agile @NSConf 2013
Maxim Zaks
 
Basics of Computer Science
Basics of Computer ScienceBasics of Computer Science
Basics of Computer Science
Maxim Zaks
 
FL Studio: Automatization in 3 steps
FL Studio: Automatization in 3 stepsFL Studio: Automatization in 3 steps
FL Studio: Automatization in 3 steps
Israel TM
 
Type and usage of important studio cables
Type and usage of important studio cablesType and usage of important studio cables
Type and usage of important studio cables
Israel TM
 
Start playing @ mobile.cologne 2013
Start playing @ mobile.cologne 2013Start playing @ mobile.cologne 2013
Start playing @ mobile.cologne 2013
Maxim Zaks
 
Promise of an API
Promise of an APIPromise of an API
Promise of an API
Maxim Zaks
 
Currying in Swift
Currying in SwiftCurrying in Swift
Currying in Swift
Maxim Zaks
 
Swift the implicit parts
Swift the implicit partsSwift the implicit parts
Swift the implicit parts
Maxim Zaks
 
UIKonf App & Data Driven Design @swift.berlin
UIKonf App & Data Driven Design @swift.berlinUIKonf App & Data Driven Design @swift.berlin
UIKonf App & Data Driven Design @swift.berlin
Maxim Zaks
 
Beyond JSON @ dot swift 2016
Beyond JSON @ dot swift 2016Beyond JSON @ dot swift 2016
Beyond JSON @ dot swift 2016
Maxim Zaks
 
Giving Unchained - philanthropy and the blockchain
Giving Unchained - philanthropy and the blockchainGiving Unchained - philanthropy and the blockchain
Giving Unchained - philanthropy and the blockchain
Charities Aid Foundation
 
Powerpoint, evalution 4
Powerpoint, evalution 4Powerpoint, evalution 4
Powerpoint, evalution 4
eatmytortoise
 
Monografia cruda 2
Monografia cruda 2Monografia cruda 2
Monografia cruda 2
jorge peña
 
The-Poetic-Word-and-its-Contexts4
The-Poetic-Word-and-its-Contexts4The-Poetic-Word-and-its-Contexts4
The-Poetic-Word-and-its-Contexts4
Julian Scutts
 
Liderança Cristã - Modelo de Jesus - Aula 7
Liderança Cristã - Modelo de Jesus - Aula 7Liderança Cristã - Modelo de Jesus - Aula 7
Liderança Cristã - Modelo de Jesus - Aula 7
FATEM Teologia e Missões
 
王品集團
王品集團王品集團
王品集團
Ying-Ru Zhou
 
Ecuación diferencial
Ecuación diferencialEcuación diferencial
Ecuación diferencial
rubicel trujillo
 
Система мониторинга АИС "Диспетчер"
Система мониторинга АИС "Диспетчер"Система мониторинга АИС "Диспетчер"
Система мониторинга АИС "Диспетчер"
shyron1
 
15 dec
15 dec15 dec
15 dec
Ken Stayner
 
Don’t do Agile, be Agile @NSConf 2013
Don’t do Agile, be Agile @NSConf 2013Don’t do Agile, be Agile @NSConf 2013
Don’t do Agile, be Agile @NSConf 2013
Maxim Zaks
 
Basics of Computer Science
Basics of Computer ScienceBasics of Computer Science
Basics of Computer Science
Maxim Zaks
 
FL Studio: Automatization in 3 steps
FL Studio: Automatization in 3 stepsFL Studio: Automatization in 3 steps
FL Studio: Automatization in 3 steps
Israel TM
 
Type and usage of important studio cables
Type and usage of important studio cablesType and usage of important studio cables
Type and usage of important studio cables
Israel TM
 
Start playing @ mobile.cologne 2013
Start playing @ mobile.cologne 2013Start playing @ mobile.cologne 2013
Start playing @ mobile.cologne 2013
Maxim Zaks
 
Promise of an API
Promise of an APIPromise of an API
Promise of an API
Maxim Zaks
 
Currying in Swift
Currying in SwiftCurrying in Swift
Currying in Swift
Maxim Zaks
 
Swift the implicit parts
Swift the implicit partsSwift the implicit parts
Swift the implicit parts
Maxim Zaks
 
UIKonf App & Data Driven Design @swift.berlin
UIKonf App & Data Driven Design @swift.berlinUIKonf App & Data Driven Design @swift.berlin
UIKonf App & Data Driven Design @swift.berlin
Maxim Zaks
 
Beyond JSON @ dot swift 2016
Beyond JSON @ dot swift 2016Beyond JSON @ dot swift 2016
Beyond JSON @ dot swift 2016
Maxim Zaks
 
Giving Unchained - philanthropy and the blockchain
Giving Unchained - philanthropy and the blockchainGiving Unchained - philanthropy and the blockchain
Giving Unchained - philanthropy and the blockchain
Charities Aid Foundation
 
Powerpoint, evalution 4
Powerpoint, evalution 4Powerpoint, evalution 4
Powerpoint, evalution 4
eatmytortoise
 
Monografia cruda 2
Monografia cruda 2Monografia cruda 2
Monografia cruda 2
jorge peña
 
The-Poetic-Word-and-its-Contexts4
The-Poetic-Word-and-its-Contexts4The-Poetic-Word-and-its-Contexts4
The-Poetic-Word-and-its-Contexts4
Julian Scutts
 
Liderança Cristã - Modelo de Jesus - Aula 7
Liderança Cristã - Modelo de Jesus - Aula 7Liderança Cristã - Modelo de Jesus - Aula 7
Liderança Cristã - Modelo de Jesus - Aula 7
FATEM Teologia e Missões
 
Система мониторинга АИС "Диспетчер"
Система мониторинга АИС "Диспетчер"Система мониторинга АИС "Диспетчер"
Система мониторинга АИС "Диспетчер"
shyron1
 

Similar to Under Cocos2D Tree @mdvecon 2013 (20)

Cocos2d programming
Cocos2d programmingCocos2d programming
Cocos2d programming
Changwon National University
 
Creating physics game in 1 hour
Creating physics game in 1 hourCreating physics game in 1 hour
Creating physics game in 1 hour
Linkou Bian
 
Game development with Cocos2d
Game development with Cocos2dGame development with Cocos2d
Game development with Cocos2d
Vinsol
 
Cocos2d for beginners
Cocos2d for beginnersCocos2d for beginners
Cocos2d for beginners
Azukisoft Pte Ltd
 
4.[d2 오픈세미나]LINE Rangers 게임 클라이언트/서버 아키텍쳐
4.[d2 오픈세미나]LINE Rangers 게임 클라이언트/서버 아키텍쳐4.[d2 오픈세미나]LINE Rangers 게임 클라이언트/서버 아키텍쳐
4.[d2 오픈세미나]LINE Rangers 게임 클라이언트/서버 아키텍쳐
NAVER D2
 
Developing native cross platform games on Cocos2dx2
Developing native cross platform games on Cocos2dx2Developing native cross platform games on Cocos2dx2
Developing native cross platform games on Cocos2dx2
BeMyApp
 
Academy PRO: Unity 3D. Environment
Academy PRO: Unity 3D. EnvironmentAcademy PRO: Unity 3D. Environment
Academy PRO: Unity 3D. Environment
Binary Studio
 
Demo creating-physics-game.
Demo creating-physics-game.Demo creating-physics-game.
Demo creating-physics-game.
sagaroceanic11
 
What's new in ios 7.0
What's new in ios 7.0What's new in ios 7.0
What's new in ios 7.0
CocoaHeads France
 
XHackers GameDev / Android LolliPop / Xamarin Forms
XHackers GameDev / Android LolliPop / Xamarin FormsXHackers GameDev / Android LolliPop / Xamarin Forms
XHackers GameDev / Android LolliPop / Xamarin Forms
Vidyasagar Machupalli
 
iOS 2D Gamedev @ CocoaHeads
iOS 2D Gamedev @ CocoaHeadsiOS 2D Gamedev @ CocoaHeads
iOS 2D Gamedev @ CocoaHeads
Alain Hufkens
 
ngGoBuilder and collaborative development between San Francisco and Tokyo
ngGoBuilder and collaborative development between San Francisco and TokyongGoBuilder and collaborative development between San Francisco and Tokyo
ngGoBuilder and collaborative development between San Francisco and Tokyo
notolab
 
Game development via_sprite_kit
Game development via_sprite_kitGame development via_sprite_kit
Game development via_sprite_kit
Buşra Deniz, CSM
 
Cocos2dx
Cocos2dxCocos2dx
Cocos2dx
IndieOutpost
 
Build a Game in 60 minutes
Build a Game in 60 minutesBuild a Game in 60 minutes
Build a Game in 60 minutes
Troy Miles
 
Develop Games With Cocos Creator - A Game Engine By Cocos
Develop Games With Cocos Creator - A Game Engine By CocosDevelop Games With Cocos Creator - A Game Engine By Cocos
Develop Games With Cocos Creator - A Game Engine By Cocos
Luke Stapley
 
Cross-platform Game Dev w/ CocosSharp
Cross-platform Game Dev w/ CocosSharpCross-platform Game Dev w/ CocosSharp
Cross-platform Game Dev w/ CocosSharp
Alexey Strakh
 
Game development with Cocos2d-x Engine
Game development with Cocos2d-x EngineGame development with Cocos2d-x Engine
Game development with Cocos2d-x Engine
Duy Tan Geek
 
06 html5 and cocos2d-x
06   html5 and cocos2d-x06   html5 and cocos2d-x
06 html5 and cocos2d-x
乐费 胡
 
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
benko
 
Creating physics game in 1 hour
Creating physics game in 1 hourCreating physics game in 1 hour
Creating physics game in 1 hour
Linkou Bian
 
Game development with Cocos2d
Game development with Cocos2dGame development with Cocos2d
Game development with Cocos2d
Vinsol
 
4.[d2 오픈세미나]LINE Rangers 게임 클라이언트/서버 아키텍쳐
4.[d2 오픈세미나]LINE Rangers 게임 클라이언트/서버 아키텍쳐4.[d2 오픈세미나]LINE Rangers 게임 클라이언트/서버 아키텍쳐
4.[d2 오픈세미나]LINE Rangers 게임 클라이언트/서버 아키텍쳐
NAVER D2
 
Developing native cross platform games on Cocos2dx2
Developing native cross platform games on Cocos2dx2Developing native cross platform games on Cocos2dx2
Developing native cross platform games on Cocos2dx2
BeMyApp
 
Academy PRO: Unity 3D. Environment
Academy PRO: Unity 3D. EnvironmentAcademy PRO: Unity 3D. Environment
Academy PRO: Unity 3D. Environment
Binary Studio
 
Demo creating-physics-game.
Demo creating-physics-game.Demo creating-physics-game.
Demo creating-physics-game.
sagaroceanic11
 
XHackers GameDev / Android LolliPop / Xamarin Forms
XHackers GameDev / Android LolliPop / Xamarin FormsXHackers GameDev / Android LolliPop / Xamarin Forms
XHackers GameDev / Android LolliPop / Xamarin Forms
Vidyasagar Machupalli
 
iOS 2D Gamedev @ CocoaHeads
iOS 2D Gamedev @ CocoaHeadsiOS 2D Gamedev @ CocoaHeads
iOS 2D Gamedev @ CocoaHeads
Alain Hufkens
 
ngGoBuilder and collaborative development between San Francisco and Tokyo
ngGoBuilder and collaborative development between San Francisco and TokyongGoBuilder and collaborative development between San Francisco and Tokyo
ngGoBuilder and collaborative development between San Francisco and Tokyo
notolab
 
Game development via_sprite_kit
Game development via_sprite_kitGame development via_sprite_kit
Game development via_sprite_kit
Buşra Deniz, CSM
 
Build a Game in 60 minutes
Build a Game in 60 minutesBuild a Game in 60 minutes
Build a Game in 60 minutes
Troy Miles
 
Develop Games With Cocos Creator - A Game Engine By Cocos
Develop Games With Cocos Creator - A Game Engine By CocosDevelop Games With Cocos Creator - A Game Engine By Cocos
Develop Games With Cocos Creator - A Game Engine By Cocos
Luke Stapley
 
Cross-platform Game Dev w/ CocosSharp
Cross-platform Game Dev w/ CocosSharpCross-platform Game Dev w/ CocosSharp
Cross-platform Game Dev w/ CocosSharp
Alexey Strakh
 
Game development with Cocos2d-x Engine
Game development with Cocos2d-x EngineGame development with Cocos2d-x Engine
Game development with Cocos2d-x Engine
Duy Tan Geek
 
06 html5 and cocos2d-x
06   html5 and cocos2d-x06   html5 and cocos2d-x
06 html5 and cocos2d-x
乐费 胡
 
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
benko
 

More from Maxim Zaks (12)

Entity Component System - a different approach to game and app development
Entity Component System - a different approach to game and app developmentEntity Component System - a different approach to game and app development
Entity Component System - a different approach to game and app development
Maxim Zaks
 
Nitty Gritty of Data Serialisation
Nitty Gritty of Data SerialisationNitty Gritty of Data Serialisation
Nitty Gritty of Data Serialisation
Maxim Zaks
 
Wind of change
Wind of changeWind of change
Wind of change
Maxim Zaks
 
Data model mal anders
Data model mal andersData model mal anders
Data model mal anders
Maxim Zaks
 
Talk Binary to Me
Talk Binary to MeTalk Binary to Me
Talk Binary to Me
Maxim Zaks
 
Entity Component System - for App developers
Entity Component System - for App developersEntity Component System - for App developers
Entity Component System - for App developers
Maxim Zaks
 
Beyond JSON - An Introduction to FlatBuffers
Beyond JSON - An Introduction to FlatBuffersBeyond JSON - An Introduction to FlatBuffers
Beyond JSON - An Introduction to FlatBuffers
Maxim Zaks
 
Beyond JSON @ Mobile.Warsaw
Beyond JSON @ Mobile.WarsawBeyond JSON @ Mobile.Warsaw
Beyond JSON @ Mobile.Warsaw
Maxim Zaks
 
Beyond JSON with FlatBuffers
Beyond JSON with FlatBuffersBeyond JSON with FlatBuffers
Beyond JSON with FlatBuffers
Maxim Zaks
 
Entity system architecture with Unity @Unite Europe 2015
Entity system architecture with Unity @Unite Europe 2015 Entity system architecture with Unity @Unite Europe 2015
Entity system architecture with Unity @Unite Europe 2015
Maxim Zaks
 
96% macoun 2013
96% macoun 201396% macoun 2013
96% macoun 2013
Maxim Zaks
 
Vergiss Java konzentrier Dich auf Script @ OOP2013
Vergiss Java konzentrier Dich auf Script @ OOP2013Vergiss Java konzentrier Dich auf Script @ OOP2013
Vergiss Java konzentrier Dich auf Script @ OOP2013
Maxim Zaks
 
Entity Component System - a different approach to game and app development
Entity Component System - a different approach to game and app developmentEntity Component System - a different approach to game and app development
Entity Component System - a different approach to game and app development
Maxim Zaks
 
Nitty Gritty of Data Serialisation
Nitty Gritty of Data SerialisationNitty Gritty of Data Serialisation
Nitty Gritty of Data Serialisation
Maxim Zaks
 
Wind of change
Wind of changeWind of change
Wind of change
Maxim Zaks
 
Data model mal anders
Data model mal andersData model mal anders
Data model mal anders
Maxim Zaks
 
Talk Binary to Me
Talk Binary to MeTalk Binary to Me
Talk Binary to Me
Maxim Zaks
 
Entity Component System - for App developers
Entity Component System - for App developersEntity Component System - for App developers
Entity Component System - for App developers
Maxim Zaks
 
Beyond JSON - An Introduction to FlatBuffers
Beyond JSON - An Introduction to FlatBuffersBeyond JSON - An Introduction to FlatBuffers
Beyond JSON - An Introduction to FlatBuffers
Maxim Zaks
 
Beyond JSON @ Mobile.Warsaw
Beyond JSON @ Mobile.WarsawBeyond JSON @ Mobile.Warsaw
Beyond JSON @ Mobile.Warsaw
Maxim Zaks
 
Beyond JSON with FlatBuffers
Beyond JSON with FlatBuffersBeyond JSON with FlatBuffers
Beyond JSON with FlatBuffers
Maxim Zaks
 
Entity system architecture with Unity @Unite Europe 2015
Entity system architecture with Unity @Unite Europe 2015 Entity system architecture with Unity @Unite Europe 2015
Entity system architecture with Unity @Unite Europe 2015
Maxim Zaks
 
96% macoun 2013
96% macoun 201396% macoun 2013
96% macoun 2013
Maxim Zaks
 
Vergiss Java konzentrier Dich auf Script @ OOP2013
Vergiss Java konzentrier Dich auf Script @ OOP2013Vergiss Java konzentrier Dich auf Script @ OOP2013
Vergiss Java konzentrier Dich auf Script @ OOP2013
Maxim Zaks
 

Under Cocos2D Tree @mdvecon 2013