cocos2d v0.99.0-final released

cocos2d for iPhone v0.99.0-final is available for download

Download: cocos2d-iphone-0.99.0-final.tar.gz

Release Notes: release_notes:0_99_0_final

Changelog: CHANGELOG

Highlights (from v0.99.0-rc):

  • CocosDenshion: many fixes and improvements
  • Fixed some crashes and other important fixes on: Sprites & TMX maps

Known bugs: known_bugs

How stable is this release ?
Very stable. According to the tests and feedback from the testers, this release can be considered v0.99.0. But since v0.99.0 introduces so many changes, this will the last pre-v0.99.0 release.

If there are no show-stoppers bugs, then, this will be the real v0.99.0 version.
No small fixes will be introduced unless they are show-stopper bugs.
Small fixes and improvements will be fixed during the v0.99.x series.

How fast is this release ?
All the performance tests were run, and v0.99.0-final is, at least, as fast as v0.8.2. In some cases it is faster, perhaps 10%~20% faster.

I would appreciate if you could test this release in your game. Please, report any bug that you might find.
Thanks!

Tutorial: How To Make A Simple iPhone Game with Cocos2D

Ray Wenderlich wrote a detailed tutorial about how to make a simple game with cocos2d.

The tutorial includes:

  • How to start a cocos2d project
  • How to add CCSprite objects
  • How to use the CCLayer object
  • How to use actions
  • How to use touches
  • How to detect collisions
  • How to handle the main loop
  • How to play music and sounds

Turorial: How to make a simple iPhone game with cocos2d

You can also download the XCode project: Cocos2DSimpleGame.zip

Integrating cocos2d with SIO2

What ? Yes, you can integrate SIO2 with cocos2d.

Let’s say that you want to create a 3d game, with nice menus and fonts. It’s possible to do that using SIO2 to render the 3D scene and cocos2d to render the HUD.

How ? Yarri, from Play-N-Give , posted a detailed post regarding how to mix cocos2d and SIO2:

Also, it seems that Yarri is using this technique in one of his games:

Dance, cocos2d, dance

Lam, from Fancy Rat Studios posted another interesting piece of code. This time he explains how read and use the audio meter in CocosDenshion.

You can read the article here: Fun with CocosDenshion and audio metering
And you can download the test project from here: DenshionAudioVisualDemo.zip

Integrating OpenFeint with cocos2d

Tim has just posted an article regarding how to integrate OpenFeint with cocos2d.

You can read the article here: Integrating OpenFeint with Cocos2D-iPhone Applications

There is an ongoing discussion about the article on the forum: http://www.cocos2d-iphone.org/forum/topic/4412

cocos2d course

The guys from web-week are going to give a cocos2d course.

Course homepage: http://web-geeks.com/iphonedev/

Course details (copy & pasted from the Course homepage):

Price: Free

Covered In Course:
We will be covering most of cocos2D for game development, this includes AI, Sounds, Graphics, Physics, Side Scrollers, ect…

Course Length:
We plan to have the course for around 3 months, but this may change, if it does we will inform you.

Syllabus:
Every Monday you will get a weekly assignment that will be due Sunday at 11:59PM.
There will usually be a forum for questions, a page with the assignment detail, a video, and a power point for each assignment. I will give you a grade just so you can know how well your doing, and I will give tips.

There is also, an ongoing discussion on the forum: http://www.cocos2d-iphone.org/forum/topic/4390

Editors #2

To read Editors #1, please go here: Editors

cocos2d for iPhone supports different formats for the sprites, tiles and fonts. The following is a list of the editors supported by cocos2d:

Tiles

The popular tile editor called Tiled can be used to generate tile maps for cocos2d. With it, you can create orthogonal, isometric and hexagonal maps.

Tiled has 2 versions:

  • Native (QT) version: This version is constantly being updated. It is much easier to use, and has a nicer GUI. The only missing feature, as of today, is support for hexagonal maps.
  • Java version: It’s the old version, it supports hexagonal, isometric and orthogonal maps, but with an uglier GUI.

Tiled QT v.0.4.0 in action

For further information regarding how to use Tiled and cocos2d, please read: Programming guide: How to use tile maps

Download: http://mapeditor.org

Sprites

Robert Payne updated the old Texture Atlas Creator. The new version is now called  Zwoptex, and this is the new homepage: Zwoptex homepage

New features:

  • Has more arranging options
  • canvas size adjustment
  • Minimum spacing for arranging
  • A centralized way to load frames (similar to Flash)

Recently Robert also released the source code of the editor: http://www.cocos2d-iphone.org/forum/topic/4300


Zwoptex in action

For further information regarding how to use Zwoptex in cocos2d, please read: How to use Zwoptex and CCSpriteFrameCache

The guys from GameDoctors, also created an utility called mkatlas.pl to generate a compacted texture atlas from different image files. This utility is included in  the cocos2d distribution and can be found in the /tools directory.

Fonts

cocos2d has 3 ways to render fonts:

  • CCLabel: Which renders fonts using both system and custom .TTF files (introduced in v0.1)
  • CCLabelAtlas: Which renders fixed-width fonts from an image file (introduced in v0.5)
  • CCBitmapFontAtlas: Which renders variable-width fonts from an image file (introduced in v0.8)

To create images for CCLabelAtlas and CCBitmapFontAtlas you can use the following editors:

CCBitmapFontAtlas:

Hiero Font Tool editor in action

CCLabelAtlas:

Recently, the guys from Indeeo created a new editor for an improved LabelAtlas, called ALLabelAtlas.

This editor supports some effects like shadow, and it also adds support for kerning.

Download: http://www.cocos2d-iphone.org/forum/topic/4357

LabelAtlas editor

Update: tilluigi told us about a Photoshop plugin to generate SpriteSheets: http://forums.tigsource.com/index.php?topic=10578.0

If you know any other editor, please, let us know! Thanks.

ProgressTimer for cocos2d

The guys from Fancy Rat Studios just posted an interesting article regarding how to create and use a ProgressTimer in cocos2d.

ProgressTimer supports 6 ways to display progress:

  • Horizontal (left to right, or right to left)
  • Vertical (top to bottom, or bottom to top)
  • Radial (clockwise or counter clockwise)

The article is here: ProgressTimer for cocos2d

And you can download a working example from here: Download the XCode Demo

Integrating cocos2d with AGON Online

Recently, Lars Peter, one of the AGON Online developers wrote an article regarding how to integrate AGON Online with cocos2d.

You can find the article here: Integrating cocos2d with AGON Online

cocos2d v0.99.0-rc – iPad compatible

cocos2d v0.99.0-rc has been released.

Download: http://cocos2d-iphone.googlecode.com/files/cocos2d-iphone-0.99.0-rc.tar.gz

Release Notes: http://www.cocos2d-iphone.org/wiki/doku.php/release_notes:0_99_0_rc

Full Changelog: http://cocos2d-iphone.googlecode.com/svn/tags/release-0.99.0-rc/CHANGELOG

New features (from v0.9-beta2):

  • iPad compatible: cocos2d and the cocos2d tests work in any screen size (480×320, 1024×768,…) (please read the iPad SDK to learn how to create 1024×768 projects)
  • Uses Chipmunk v5.1 and Box2d r39
  • New Camera: easier to use, has more features but it also has new limitations
  • Improved speed in different components: Actions, Scheduler, BitmapFontAtlas, Camera, Node, Sprite, Touch Handler

What’s next:

  • v0.99.0 (final). No new features will be added, only important bug fixes, or opportunistic fixes.
  • Scheduler improvements, Blocks and other features will be added during the v0.99 series

This is a Release Candidate version. It means:

  • It is not yet the “final” v0.99.0 version.
  • Unless there is something totally wrong, there won’t be any changes in the API.
  • No new features will be added (unless “opportunistic” ones).

Update: If you see gray borders on your images, please update to SVN r1761 or just replace the CCSprite.m file with this file: CCSprite.m