Consider this the Episode IV of Spritesheet movies 😉
June 22, 2012
Comments Off on Spritesheets the Movie
May 9, 2012
Beware of older code examples and tutorials when looking for help, a lot changed between Cocos2d v0.82 and v1.0 including the names of a lot of the framework methods.
The simplest way to find which version a project is using is to open up the cocos2d.m file and look for the version string
static NSString *version = @"cocos2d v1.1.0-beta2b";
IMHO the best way to get into Cocos2d is to build something with it. Don’t look at the resources below as something you have to finish before you begin or you’ll never get started 😉
In no particular order;
Continue Reading →
May 7, 2012
After nearly 3 months on the App Store, we received a very short phone call from Apple. Submit an update of Sketchshare without Game Centre functionality or the App will be removed from the store, you have 2 days to comply. So two days to attempt to implement a Game Center alternative complete with VoIP or remove the sharing functionality from existing Sketchshare users. Neither option was really viable and so 2 days later Apple removed it from Sale.
Continue Reading →
April 30, 2012
Here’s a Category to return the percentage of a CCRendertexture that is transparent i.e what percentage of the pixels have an alpha value of zero. Question originally asked on cocos2d forum.
I’ve thrown together a quick example project where a country scene is scratched off to reveal the same location in colder times, once the entire image is scratched off the percentage transparent should be 100 (download available at bottom of post)
Tap the image 3 times to reset.
March 14, 2012
Comments Off on TimeScroller widget
For anyone who has to occasionally schedule a meeting or phone call across time zones TimeScroller is a great little widget and it’s free!
It defaults to the current time but a great feature is the slider at the bottom that allows you to slide forward in time and watch all the zones update. The widget allows you to configure your preferred zones and the order they appear. There is also an email button that will take all the time zones you have set for the current slider time and copy them into an email.
There’s a paid iPhone version if you need a mobile version.
March 4, 2012
Comments Off on Whiteboard using wiimote and Sherbert IR marker
March 3, 2012
I spent some time a couple of years ago playing with Johnny Chungs idea for a wii remote driven interactive whiteboard. I didn’t have a projector so I used the screen from my 24″ iMac and I cobbled together an infrared pen using not much more than sticky tape.
With a planned desktop version of Sketchshare waiting in the wings I decided it was time to resurrect my whiteboard experiments. The further nudge I needed happened when my wife bought me a Sherbert fountain.
The end result
February 23, 2012
Comments Off on Python shortcut for animation plists
Quick (and not too pretty) python script I threw together for generating animation frame plists. For a tutorial about using the plist to drive your cocos2d animation check out this great tutorial from Ray Wenderlich’s site.
I had a list of 208 separate frames of animation that were added to a sprite map as part of the build in XCode using TexturePacker.
There are a number of assumptions made about the animations but at least the script should save some time on the initial creation.
* Each animation frame file starts with a name that will become the name of the plist.
* Frames have a sequence number after a ‘_’ that is used to determine the order.
* The sequence does not have to be continuous i.e 00002, 00003, 00006 is fine
* Don’t put anything in the directory that you are loading the images from that is not an image.
import sys import os def writePlist(fileName, content): # Create a file object: # in "write" mode FILE = open(fileName,"w") header = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" header += "<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n" header += "<plist version=\"1.0\">\n<array>\n" content = header + content + "</array>\n</plist>" # Write all the lines at once: FILE.writelines(content) FILE.close() # If no database is specified, drop out if len(sys.argv) < 2: sys.exit('Usage: %s directoryOfImages' % sys.argv) # Get the path to the directory of images imageDir = sys.argv + '/' if not os.path.exists(imageDir): sys.exit('Directory: %s does not exist' % imageDir) fileName="" fileContents="" listing = os.listdir(imageDir) for infile in listing: fileParts = infile.split("_") fileStub = fileParts if fileStub != fileName: if fileName != "": writePlist(fileName + ".plist", fileContents) fileName = fileStub fileContents = "\t<string>" + infile + "</string>\n" fileContents+= "\t<string>" + infile + "</string>\n" #write the last file writePlist(fileName + ".plist", fileContents)
To use it (assuming you named it plist.py)
>python plist.py safe_png
The above example would generate a single plist called hookDead.plist with 12 entries but the script can be run against whole directories of files.
Download the files here: [Download not found]
February 10, 2012
Comments Off on Toughguy over for another year
January 27, 2012
Nathan Burba has done a fantastic job of pulling together a great collection of recipes for the cocod2d cookbook covering everything from Bullets to Speech recognition.
Once Sketchshare is fully launched I plan on doing a review of the book in some detail. In the meantime it’s perfect for the Inquisitive/Intermediate programmer and covers a wide variety of techniques. For further detail check out Nathans site http://cocos2dcookbook.com/ which has videos detailing the techniques covered in the book.
It’s available to purchase over at Packt’s site