I recently got back from AnDevCon V in Bostom, MA after delivering 2 technical sessions on OpenGL ES in Android, running a game development workshop and hosting a panel of professionals in a session about the business of Android apps, and decided maybe it's time to actually track all of the various sessions, workshops, demos and other such professional public things I've done. It's cool to look back and see the progression of small, local events out to larger events with bigger audiences. I'm more comfortable now than ever teaching classes, speaking to groups and working with people. I've got a good list here and will keep it up to date as I do more events and will also dig for links to recordings, livecasts, etc from past events. If you are looking for a speaker to present at your conference, please reach out! I'd love to work something out. Read on for the complete list...

If you used to follow my blog then please allow me to apologize. I may have just been through the busiest year of my life, but I have something to show for it so allow me to get everyone caught up with this post and then I am going to make some efforts to keep things a little more current going forward. It's amazing, when you're really in to a project or multiple projects as my case usually is, how fast time starts to slide by. I'm always stretched thin these days but I have managed to crank out a few things so here it goes...

BatteryTech has been an interesting experiment so far. In case you don't know what it is, it's a software library I developed last year for Battery Powered Games that makes it way easier to write cross-platform games, assuming they are targeted at PC, Mac, Android and iOS. BatteryTech is not free, but instead goes for a one-time purchase with lifetime upgrades. This model is nearly opposite from most of the competing products which opt for a subscription model, getting you in the door cheap and taking that chunk of change from you each year to keep using their product. It's difficult to figure out what the best marketing strategy is for a product like this, so today I set up the $99 experiment, which I'll explain further.

It's been a very eventful 8 months since the first article of this series. I moved cross-country, took on my first reasonably-sized contract, bought my first house, ran deep into debt, paid all the debt off, then went way back into debt, started my first e-commerce site, worked on a book and saw it get published, developed & marketed a new software product and recently hired a full time contract developer and 2 sales roles. When I write it all out like that, it seems a little ridiculous. I like to think that everything I'm doing is making perfect sense, but if you haven't noticed, my blog updates have become extremely sparse since I became self-employed and there is a good reason for that: I never seem to have enough time anymore! So what does a person do in this sort of position?

A few weeks ago I began prototyping a new game, tentatively titled "Project 7." It's called that because it's my 7th game, but that's just a working title. This will be a featured BatteryTech game and will utilize Bullet Physics, Lua, OpenGL ES 2.0 and will run on Android and iPhone. The game idea was conceived by Ryan Foss who did the art, level design and much of the overall game design on Deadly Chambers. The idea is to have a game world where you, the player, control a race of characters that are in danger of being swarmed and killed by another, much meaner race. Originally we were going to go for Humans and Zombies but right now the art team is working on a cuter alien race vs some scary indigenous monsters. I love the art concepts they are coming up and will post some of them below. Keep reading for those and then some videos of the prototype running on Windows and Android.

I've always been super interested in point-of-sale systems and e-commerce, particularly the bits around inventory management, shopping carts and really slick sales integration pieces. I've never had a really good functional reason to mess around with any of this, though, outside of when I worked at IBM on an order management system for a client, until I wanted to start selling BatteryTech licenses online. The site, www.batterypoweredgames.com runs Drupal and I had some special needs so with just a little bit of module coding, I was able to piece together a fully automated sales and checkout system that requires a webform to be completed (EULA in my case), handles payment via paypal and provides the customer with access to everything once the payment is completed. This article will outline how I did it.

If you haven't heard, the Android 2.3 SDK was released to the public today. Up until this release, Android has been a bit problematic for many game developers. While it's made steady progress in that area since the 1.0 release in 2008, there have been many things missing that we game developers have been begging for. Ask and you shall receive. 2.3 comes with the release of NDK r5 which includes a slew of game-friendly native APIs. Native Input, Native EGL and one of the biggest ones.. OpenSL!

It's been nearly 2 years since I've received a corporate paycheck. I left that world in Jan of 2009 and haven't looked back since. Was it an easy jump? Hell no. It's been hard - very hard, but I don't regret it and still consider it one of the very best things I've ever done for myself. Read on...

I'll make this article short and sweet. If you have an Archos 5 Internet Tablet and wish to use ADB with it like I do with any Windows x64 variant, you'll just need the latest Android ADB driver and a little text editing skills with magic numbers. Click on for the technical stuff..

After having the story about the Nexus One multitouch flaws spread all over the blogosphere and seeing so many comments blame my test app for the problems, I figured the best way to kill that whole idea would be to just publish the source code so that people, even non-technical, can see that I do absolutely no manipulation of the touch points. All this code does is figure out what color the touch point is based on the ID and then draws those points exactly where the touch API tells it they are.

This is also a good bit of source to start with if you're interested in developing multitouch code. I still am using multitouch in the new games. This test simply allows me to understand the limitations before I design the control system. Read on for the code.