Archive for December, 2008


Game Announcement: Dapple!

Streaming Colour Studios is thrilled to announce Dapple!

Dapple is a color-matching puzzle game for the iPhone and iPod Touch with a twist! Make sets of four or more of the same color to eliminate blobs of paint from the board. Matches are made by mixing paints to form new colors. Watch out for brown paint, though. Let it spread too much and you could be in trouble!

Dapple features highly addictive gameplay, beautiful artwork, and a terrific soundtrack. Check out the Dapple page for more game details along with screenshots of the game.

Dapple is Streaming Colour Studios’ first game and will be available for iPhone and iPod Touch in early 2009!

Owen


Now With 100% Fewer Memory Leaks!

This post is probably only of interest to other programmers, but hey, don’t let me stop you from reading…

I got back into the code today and I was trying to get multiple music tracks to queue up one after the other using the SoundEngine code. I was having some problems and so I went onto the developer forums and discovered that a lot of people have had problems with SoundEngine. Apparently it had a lot of memory leaks and other problems. Some of the leaks have fixes on the forums. However, what was most shocking was to discover that Apple has pulled all of the example SoundEngine code off the developer site. They’re basically telling people not to use it anymore.

With the latest public update to the SDK there are preferred ways to do audio. The problem is, they only work on devices running the 2.2 SDK. I want my game to run on anyone’s iPhone or iPod Touch, so I’m trying to support 2.0.

I managed to track down a bug in the SoundEngine code that was preventing more than one music track from playing and then decided it was time to boot up Instruments (Apple’s cool performance analyzer) to have a look for memory leaks. There were quite a few, all of them coming out of the fix I’d just put in place for the audio system. Ugh.

I spent the afternoon tracking stuff down and I’ve finally fixed all the leaks in the game (for now). I can also queue up multiple music tracks. Hooray!

I did want to post a couple of things I learned today about tracking down leaks with Instruments:

  • You need to launch your iPhone app directly from Instruments (you can’t track leaks in an already running iPhone process).
  • Once you find leaks, go to “View” -> “Extended Detail”. I can’t tell you how important this is! I spent an hour chatting with a friend online trying to find a way to get a full stack trace for the leaked memory allocation. It turns out it’s all in that little hidden window! When you open the Extended Detail window and click on a memory address that leaked, it will show you a full stack trace that lead to the leak.
  • Double-clicking on a function in the Extended Detail stack trace will open the source code to the exact line in XCode!
  • You can’t create custom DTrace instruments for use with an iPhone, they appear to only work with Mac OS X processes.

Now that I know a bit more about how to use it, I’m quite impressed with Instruments. It seems to be a very powerful tool.

Owen



No More Font Puns, I Promise

Again, I am not a lawyer, so do not take any of this information as legal advice…this is just what I’m learning as I go along.

Well boys and girls, I’ve learned another important lesson: read the font EULA (End-User License Agreement). The contents of the EULA for a font trump the copyright laws. This is because by purchasing the font, you’re agreeing to the terms in the EULA as though you were signing a contract with the foundry. So if the foundry specifies that you can’t use rasterized images of their text for commercial use, then you’re out of luck. This is what I’ve discovered this morning with the font I wanted to use.

At this point I either need to work out some kind of deal with the foundry to be able to afford their font, or it’s time to move on and find another one.

The moral of the story is: read the licensing terms of any font you want to use very carefully. Then read them again. And then read them again.

Owen


The Font Thickens

Another excellent pun!

I need to start this off by saying: I am not a lawyer. I don’t pretend that any of this is legally sound and recommend you consult with your own lawyer before taking any of this advice.

This is getting more and more interesting, while simultaneously getting more and more confusing. I’ve been reading up on copyright law as it pertains to fonts and discovered some interesting things. It looks like, in the US at least, that only the “font software” can be copyrighted. The “font software” is the font file (TTF, or whatnot). The image of the font once it’s rendered can not be copyrighted. So using a image rendered from a font is ok, as long as the person who rendered the image owned a license to the font.

What I think this means is that as long as the game itself doesn’t include a copy of the font software, but instead only uses images that contain the font, then it’s OK as long as I own a standard license for the font. However, it looks like EULAs trump the copyright laws, so I’m reading through a bunch of those very carefully now. It’s not as much fun as it sounds…

It’s really hard finding reliable information on any of this, but here are a few links I’ve found:

Good times…

Owen