Archive for February, 2008

Shooter is a Classic!

Monday, February 4th, 2008

I didn’t even see this blog post when it was originally published but my wife stumbled over it tonight and I thought I’d share. Shooter in the Abstract is apparently one of the 10 Classic Free Games for Mac. Really!

I’d a proud papa!

Remember, it’s a free game so if you haven’t tried it yet you should! It’s fun and stuff.

Multithreading Brings Joy

Sunday, February 3rd, 2008

I’ve been listening to Cocoa oriented podcasts and subscribing to RSS feeds in an attempt to get my knowledge base up to snuff. While listening to “Late Night Cocoa” I was happy to find that the most recent episode featured multithreading and the guest was the head Mac guy over at Google (aka guy who knows what he’s talking about). It was great! Very informative and it gave my wife many excuses to make nerd jokes at my expense.

At any rate, he talked about a pair of classes that remove 90% of the pain of multithreading. NSOperation and NSOperationQueue. Using those, I was able to replace all of my multithreading code in Phorg and now it runs faster, automatically scales based on system performance, and I don’t have to worry so much about locking and synchronizing. Look into those classes if you have any plans to delve into multithreading on the Mac. So worth it!

I’ve been able to add a bunch of multithreading to ToeTag today as a result of using these classes. Everything is a little faster from loading WAD files, to generating mipmaps, to loading MAPs, etc. It’s amazing how once you have multithreading at your disposal how you can suddenly see spots in your code that could benefit.

ToeTag Nearing Completion

Friday, February 1st, 2008

Someone commented that updates seem to be slowing down for ToeTag and all I can say about that is … Yes. I mean, it works. It does what I want it to do for the most part so that’s why the updates have slowed. If it doesn’t do something critical then please, by all means, let me know!

I’m going to spend a chunk of the weekend cranking up a 0.9 release and then after that we roll on to the 1.0 real version. And it’ll be, for all intents and purposes, done!

I’ll add stuff over time, sure, but I’m not going to add features simply because I can. I want to limit feature additions to things that will get used by a typical person making a Quake level. The old 80% design rule - add features that will please 80% of your users.

I also spent a little cash and got a new logo/icon done for the editor. Check it out! I think it’s pretty swanky.

ToeTag logo

I also uploaded the source code for my multithreaded versions of LIGHT and VIS if you’re interested in those for your own projects or what-have-you. The original id tools source code is in this directory as well so you can see what I based mine on.

Source Code

Enjoy!