Cocos2d: past, present and future
description
Transcript of Cocos2d: past, present and future
cocos2dpast, present, future
by Ricardo Quesada
v0.1
Sunday, April 8, 12
History of cocos2d
Sunday, April 8, 12
2005~2007
Sunday, April 8, 12
PyWeek
• PyWeek:
• A game in one week in python
• 2005, 2006, 2007: Games
• Engine from scratch for each entry
Sunday, April 8, 12
2008
Sunday, April 8, 12
PyCamp
• Feb-2008
• Python gathering in Los Cocos, Córdoba, Argentina
• “Los cocos” was born based on our PyWeek experience
Sunday, April 8, 12
PyCamp 2008Sunday, April 8, 12
cocos2d
• March 2008: v0.1
• “Los cocos” is renamed to “cocos2d”
• Lighting Talk in PyCon 2008
• Talk in EuroPython 2008
Sunday, April 8, 12
cocos2d-iphone
• Jun-2008: v0.1
• Objective-c
• Same design as cocos2d Python
• Dec 2008: +40 games on AppStore
Sunday, April 8, 12
2009
Sunday, April 8, 12
PyCamp 2009
• cocos2d editor
• A world editor for cocos2d-python written in cocos2d-python
Sunday, April 8, 12
More cocos2d ports
• ShinyCocos: Ruby bindings
• cocos2d-Android: Java based
• cocosNet: Mono based
Sunday, April 8, 12
New cocos2d logo
Sunday, April 8, 12
Tools
• First tools for cocos2d:
• Zwoptex
• Particle Designer
Sunday, April 8, 12
Particle Designer
• Without PD:
• ~2 hours to have a nice effect
• With PD:
• ~10 minutes to have a much better effect
Sunday, April 8, 12
#1 Paid App
• StickWars:
• First cocos2d game to be #1 Top Paid App in the US App Store
Sunday, April 8, 12
2010
Sunday, April 8, 12
cocos2d-Mac
• cocos2d-iPhone ported to Mac
• Idea: create a cocos2d-iPhone world editor in cocos2d (similar as PyCamp 2009)
• “Games for Mac” was a “collateral feature”
Sunday, April 8, 12
cocos2d-x
• cocos2d-x
• C++ port
• Cross Device: Android and iOS
Sunday, April 8, 12
More Ports: Javascript
• cocos2d ported to Javascript
• Canvas Based
Sunday, April 8, 12
More Tools
• More cocos2d tools / editors
• Texture Packer
• Glyph Designer
Sunday, April 8, 12
Books, Resources
• Books dedicated to cocos2d
• Resources:
• Many samples
• Tutorials
• Training courses
Sunday, April 8, 12
2011
Sunday, April 8, 12
Editors
• “Integrated” editors started to appear:
• CocoShop (SceneDesigner)
• CocosBuilder
• Sprite Helper / Level Helper
Sunday, April 8, 12
CocosBuilder
Sunday, April 8, 12
Objective-c X-Platform
• Objective-C cross compiler toolchain
• App Portable
• Noodle Cake
Sunday, April 8, 12
2012
Sunday, April 8, 12
cocos2d-xna
• cocos2d in C# for XNA
• Based on cocos2d-x
Sunday, April 8, 12
cocos2d-html5
• cocos2d-x port to Javascript
• Early stage
Sunday, April 8, 12
Today
Sunday, April 8, 12
cocos2d-x devconSunday, April 8, 12
Apps
• Games
• Interactive Books
• Photo / Graphics applications
• +3500 Apps (iOS + Android)
Sunday, April 8, 12
cocos2d familySunday, April 8, 12
Engines
• stable, mature engines:
• cocos2d-iphone, cocos2d-x
• Early development:
• cocos2d-html5, JS bindings for cocos2d-x
Sunday, April 8, 12
Good tools / editors
• Spritesheet editors
• Particle editors
• Font editors
• Tilemap editors
Sunday, April 8, 12
Integrated Editors
• CocosBuilder
• Basic “integrated editor”
• Not yet a complete world editor
• Experimental cocos2d-x support
• No scripting support yet
Sunday, April 8, 12
Scripting Language
• Javascript
• Alpha version for cocos2d-x
• Not yet available for cocos2d-iphone (in research)
Sunday, April 8, 12
What do YOU need ?
Sunday, April 8, 12
cocos2d future
Sunday, April 8, 12
What do you need ?
• Faster development time
• Quality games (no crashes, leaks, fast)
• Prototyping tools
Sunday, April 8, 12
Faster Dev. Time (I)
• With more and better editors
• Data is portable
• It is faster to generate data than code
Sunday, April 8, 12
Faster Dev. Time (II)
• With scripting language:
• Javascript
• If performance is not good enough:
• Develop the game in native
• and optionally add JS bindings to native
Sunday, April 8, 12
Better Quality
• Again with more and better editors
• MORE data and LESS code
• Less code == Less bugs
Sunday, April 8, 12
Prototyping tools
• Scripting language + world editor
• Test ideas quickly
• Discard the “bad” ones
• Further develop the “good” ones
Sunday, April 8, 12
Planned features for cocos2d in 2012
Sunday, April 8, 12
Javascript bindings
• Javascript bindings for:
• cocos2d-x
• cocos2d-iphone
• Same JS API for cocos2d-x, cocos2d-iphone, cocos2d-html5
Sunday, April 8, 12
cocos2d JS API
A 100% JS game could be “native” or “web”
Sunday, April 8, 12
World Editor
• WYSIWYG Editor (CocosBuilder)
• Compose / Test scene
• Actions editor
• Scripting support with Javascript
• Support for cocos2d iOS, X, HTML5
Sunday, April 8, 12
Thank you.Questions ?
Sunday, April 8, 12