I made a few additions to the Xcode Tutorial and the cocos2d FAQ which are based on user questions and concerns.

Xcode Project Tutorial: How to integrate Chipmunk SpaceManager

How to update the cocos2d-iphone code in a project created with a cocos2d Project Template? (Theory & Advice)

How to fix common Box2d compile errors? (must compile using C++)

How to fix common Chipmunk compile errors? (does not compile with C++ code)

How to draw an endlessly repeating Parallax Background? (very simple, very effective)


On Searching the Tutorial & FAQs

I’m still trying to get the search function on the Tutorial and FAQ pages fixed. Currently it works for the Xcode Tutorial only but other search result links may simply show an Error. I’ll try to get this fixed as fast as i can and i’m getting very helpful support from the folks at ScreenSteps Live so i’m hopeful.

Please also note that the search box in the navigation panel doesn’t search the FAQ and Tutorials, just the blog and pages.

Tagged with:  

Xcode Project Tutorial Updates: Box2d & Template

On May 12, 2010, in Announcements, by Steffen Itterheim

If you followed my Xcode Project Tutorial or received it after signing up for my Newsletter you may have noticed that it would not compile if you added #import “box2d.h” to any of your classes. I investigated and thanks to your comments the problem was easy to fix. I wrote a Tutorial lesson detailing box2d integration issues and how to solve them.

In addition, Tim Soliday who blogs at FatFingerStudios.com went through the effort of creating a “real” Xcode Template from my Tutorial project. By “real” i mean an Xcode Template that will be added to Xcode’s “File -> New Project” list of applications so that you can choose to start with a “cocos2d Application from there. This has also been requested by readers. I added another Tutorial lesson which describes how to install Tim’s Xcode Template.

I will add Tim’s Xcode Template to the Newsletter welcome mail in a couple minutes so new Newsletter subscribers will receive it automatically! If you have already signed up for my Newsletter you’ll have it in your inbox shortly, you do not have to sign up again!

The new Projectfiles you’ll receive also contain the box2d fixes and include my free source code collection and a number of other changes. Most notably the addition of License files and folder structure that go along with it which help me and my customers to differentiate between my base source code that is only licensed to the customer vs. source code that is later fully owned by my customers. Feel free to disregard or delete these License files if you have no use for them.

Tagged with:  

Issues with Images & PDF downloads

On May 10, 2010, in Announcements, by Steffen Itterheim

I keep getting reports from users who either don’t see images on some lessons of the Tutorial and FAQs or who can’t download the Manual/Lesson PDF files.

The broken images usually fix themselves if you hit the reload button in your browser. You may have to wait a few minutes though. I’m still looking into what’s causing this. For the time being i have disabled the WordPress QuickCache plugin as i suspect it may have something to do with it.

If you can not download the PDF files and instead you get an error message which is formatted in XML like this:

This is because the links to the PDF files expire some time after you have loaded the webpage. A PDF link normally looks something like this:

Amazon’s S3 service will expire such a link after some time. Please do not share direct download links to the manual/lesson PDF files since they will expire, instead link to the lesson itself. If you have problems downloading the PDF, please reload the page and try downloading the PDF again.

I’m sorry about the inconveniences this is causing some of you.

Tagged with:  

This is worth pointing out: paulsondev (who unfortunately has no About page on his blog, hint hint ;) ) posted a 90-minute (!) Tutorial about creating a scrolling Tilemap with TMX and cocos2d for iPhone! I haven’t watched it but anyone who is dedicated to make a 90 minute development video deserves attention. And as far as i can tell it’s pretty cool. Plus he uses the same desktop background as i do. :)

Tagged with:  

Update to Marketing FAQ

On May 6, 2010, in Marketing, by Steffen Itterheim

I just published an update to the Marketing FAQ beginning with the lesson Your Privacy isn’t.

Those are mostly thoughts i had while i was cleaning out my Twitter list (who i am following) to make room for all the much more interesting people who are now following me because of this new cocos2d website. The Twitter celebrities had to go to make room for you! :)

It never actually crossed my mind that the Marketing FAQ would be so popular. For me it was a last minute addition to the cocos2d FAQs from a spontaneous thought. I’ll make sure to update Marketing and PR more frequently. I certainly learned a lot about it while i was busy with my colleagues getting an iPhone game company startup funded for the better part of 2009.

Tagged with:  

Article Collection

On May 5, 2010, in , by Steffen Itterheim

The information on this page may be out of date!

I compiled most of this list in 2009 or maybe early 2010 (don’t remember exactly). Do expect some broken links and out of date information. I’m no longer updating or maintaining this page, I leave it here only for reference.

cocos2d for starters

The cocos2d homepage – this should be obvious but since most people land on the google source code repository page for cocos2d iPhone instead of the real homepage www.cocos2d-iphone.org i wanted to post it here. Usually the most noteworthy threads from the forum as well as important blog posts by others are posted on the blog, and of course any new releases and updates to cocos2d.

cocos2d iPhone documentation – a post on the official website explains where you can find what kind of documentation.

Things i wish i knew when i started with cocos2d – Troubleshooting, Tips & Tricks for everyone

Ray Wenderlich (formerly Mythic Entertainment) posted a great tutorial on how to make a simple iPhone game with cocos2d. Take a look around at his website as he keeps writing new tutorialistic articles such as creating buttons in cocos2d and an intro to the box2d physics engine which is also part of cocos2d.

Introduction to 2D game programming with cocos2d iPhone

The cocos2d iPhone programming guide in the cocos2d Wiki.

Introduction to cocos2d iPhone visual effects (aka Visual FX).

Apple’s excellent Objective-C Programming Language reference (PDF)

Open GL ES 1.1 reference – only needed if you intend to do OpenGL programming – you don’t need to know about OpenGL if you’re using cocos2d but it may come in handy sometimes.

As for books, i can NOT recommend iPhone Games Projects by Apress. Repeat: not recommended! It’s a badly written collection of blog posts about the kind of games most game developers would not want to make (chess etc). It does not contain particularly good or reusable examples of code and the choice of projects is questionable to say the least. It has generally very little value for a cocos2d iPhone developer as all examples are either written in Cocoa Touch or plain OpenGL.

cocos2d, Cocoa and Objective-C code fragments

Have a look at my proposed CCDirector drawScene method which redraws the screen anytime you may need to.

Blog Post: efficiently reusing Default.png for landscape mode – Note: Ricardo has since integrated this in Sapus Tongue source code.

Integrating other APIs into a cocos2d application or game

First of all, here’s a tutorial on how to integrate the cocos2d API reference into Xcode.

Integrating Facebook Connect with cocos2d. See also the forum post for the user comments. In addition watch this video about adding Facebook Connect to your Xcode project since the necessary steps aren’t covered in the integration tutorial. And once again, Stackoverflow strikes with an excellent link collection for Facebook Connect iPhone developers.

Integrating AdMob with cocos2d iPhone Applications

Integrating OpenFeint with cocos2d iPhone Applications

Integrating Agon Online into cocos2d iPhone

Combining SIO2 with cocos2d, with source code

SpaceManager – an Objective-C wrapper for Chipmunk

There are already ports for cocos2d iPhone, one focuses to port cocos2d iPhone to Mono .NET using C# and the other cocos2d port is Java-based for Android development.

Generally useful tools & knowledge for cocos2d iPhone developers

How to handle device orientation and how to implement autorotation for a cocos2d app or game.

A list of editors useful for cocos2d development is described on the cocos2d’s homepage blog in two parts: part one and part two. It includes tile editors, Texture Atlas and Bitmap Font generators.

Ernesto’s pseudo-code on Pixel-Perfect collisions. It was hard to find and others seem to have problems finding it as well yet people already know it as “Ernesto’s post”, so it deserves a mention here. In this forum post is one implementation of pixel-perfect collision code and here is another implementation of pixel-perfect collisions. Finally we learn about the intricacies of endianness in pixel data, meaning how pixel data changes depending on the platform (iPhone vs Mac).

Zwoptex Texture Atlas tool for use with cocos2d iPhone (and probably others)

Finding memory leaks using the CLANG static analyzer. Don’t leak memory. That’s terrible. Read how you can run a program that tells you with impressive accuracy where there are memory leaks in your code, at least potential ones. Make sure you also read the comments further down since they contain more command line samples that fix some issues for iPhone OS 3.x among other things.

How to obtain the iPhone crashlogs from your beta-testers and costumers. And then there’s Apple’s manual on how to debug crashdumps. In short: always compile both debug and release builds at the same time, then keep both dSYM files and make sure you can later identify to which version and build they belong to. It’s easiest to use source control here and simply flag or label the version you used to create distributed Ad-Hoc or App Store versions with.

iPhone Apps can be opened via URLs that also allow passing what some might call “command line arguments”. Here are a few websites that document those URLs for various apps: URL schemes for various iPhone Apps, then there’s the handleOpenURL: website and finally AppLookup.com.

Specifically for linking to the App Store you will find Apple’s iTunes Link Maker useful. On Stackoverflow you can learn how to create links to your App that you can send via email. And finally, this Ars Technica article covers all the finer details of creating an App Store link that works for the iPhone’s App Store, including opening the App Store app with a search term – which is the only way to show all the apps of a particular company or developer on the iPhone’s App Store.

8 confusing  Objective-C Warnings and Errors explains some of the more confusing things Xcode (actually: GCC) throws at you and leaves you wondering. After reading this article you’ll know what you’re dealing with the next time it comes up.

Provisioning Profiles Gotchas – we all have one of these issues sooner or later (or frequently).

App Store Rejection reasons – be sure to go through this checklist before submitting your App to iTunes Connect to avoid your App being rejected due to some commonly made mistake or oversight.

How to build an IPA file from Xcode shows you how to setup a build target in Xcode that will output an IPA file. Those are very helpful for Ad-Hoc distribution of your App, as IPA files do not get as easily mangled (leading to errors such as “resources have been modified”), especially on Windows machines. It also makes installing Ad-Hoc builds easier since a simple double-click suffices to open iTunes and install the App. Plus it’ll have a proper icon in iTunes’ Application folder.

How to properly set your App’s iTunes Release Date and the things to watch out for. If you’re about to release an App you must read this otherwise you risk your App not being listed on the “What’s New” list.

How to calculate the App Store size of your iPhone App before approval. It’s not magic nor random, it can actually be calculated to within a rather small margin of error. The good thing is, the error will be that the calculation gives you the maximum size your App could possibly have on the App Store. With experience you’ll learn how good your Apps compress after approval, and that depends highly on the game engine used. Unity is hit especially hard by this, typically Unity apps get added another 4-5 MB to the zipped App you’re uploading, in some cases even more.

How to set and change the list of supported languages in iTunes: according to this post on Stackoverflow all you need is one localized file. What i do is, under Resources, i add a new .strings File and leave it empty. Then right-click, choose Get Info and on the  General tab click “Make File Localizable”. Then go back to the General tab and click “Add Localization” until you’ve added all languages your App supports. Note that you do not have to reference or otherwise use that file in your code – it just needs to be there. If you look into your App Bundle (right click: Show Package Contents) you’ll notice that new folders like English.lproj, German.lproj etc. exist. Those are scanned by iTunes to create the supported languages list.

How to change an App Icon’s name depending on the iPhone’s language setting. While we’re at it you can also learn how to figure out more quickly if a specific name still fits under the App Icon without being shortened.

My iPhone & iPad Design Templates for OpenOffice Draw

Open Office Draw Templates for designing iPhone & iPad games. They offer you a canvas to create the visual elements of your game and pitch your ideas. I use them to pitch my ideas or create concept drawings of iPhone/iPad apps and games.

You can either use Open Office Draw to draw on them, or just print out the images and draw on it. Both versions have at least one image where the screen background is white, so you can easily draw on it. The iPad version also has a vector graphics representation, so if you worry too much about the completely dark space for printing – turn it into light gray or even transparent with just the border lines shown.

Download the iPhone Design Template for OpenOffice Draw.

Download the iPad Design Template for OpenOffice Draw. For the iPad i took extra-care to scale the images to close to original size, and i also recreated the iPad as vector graphics in almost exact original size.

FAQ: cocos2d for iPhone

On May 5, 2010, in , by Steffen Itterheim

Most of the information in this FAQ was outdated by 2012, so I removed it. I wrote two books about Cocos2D and the contents of the FAQ have been worked into the books.

I’m also hosting the most up to date API References not just for cocos2d-iphone but all of the related libraries: Box2D, Chipmunk, cocos2d-iphone-extensions, cocos3d, CocosDenshion, Chipmunk Spacemanager and others. Moreover, these are the complete documentations. In particular the cocos2d-iphone API reference is notorious for missing some important classes (CCLayer for example, and everything related to Mac OS).

And while you’re looking for answers to Cocos2D related questions, you may be interested to hear about the Kobold2D game engine: Kobold2D is designed to make Cocos2D developers more productive and have more fun. I try hard to answer questions in a way that they simply don’t need to be asked anymore, by improving the source code and workflow.

Tagged with:  

Tutorial: cocos2d Xcode Proj.

On April 23, 2010, in , by Steffen Itterheim

This Tutorial is superceded by Kobold2D

The tutorial was designed for Xcode 3 and most of the information is not applicable to Xcode 4. For this reason the tutorial has been removed and is no longer linked from the main page.

Instead, I would like to encourage you to try out Kobold2D which uses cocos2d-iphone as its rendering engine and uses a similar setup (cocos2d as static library) than what was described in this tutorial.

If you are interested only in becoming more proficient at Xcode you can learn a great deal by studying Kobold2D. I’m also available to answer your questions in the Kobold2D forum.

For the records I’m keeping the PDF version of the Xcode 3 Setup Tutorial for Cocos2D for download. Just in case.

Tagged with:  
Page 20 of 21« First...10...1718192021