This is one of those things I’ve been meaning to do for a long while now, but never really got around to, and apparently I’ve decided that now is the perfect time. Despite having an 8 week old baby.
Who am I?
Hi, I’m Sean. I’m a game programmer and I like to ramble. At the time of writing I’ve been making games professionally for 14 years. I’ve ended up as a bit of a generalist really, but I think that’s just because of the pretty winding career path I’ve been on.
I started out studying Computer Games Programming at Teesside University, which got me a year long work placement at Ubisoft Reflections while they were developing Driver: San Francisco. I still apply some of the lessons I learned there to my work today.
Post-University though, I spent about 8 years working in Game Development as a service. First at a small studio called Rubix, then freelance. 2010 was a bit of a boom period for mobile games, the iPhone 3GS was released the previous year, the iPhone 4 was out, the first iPad was out, Android was ramping up. Lots of people wanted in on the market, with no skills to develop games on their own, so they came to us.
I’d usually be the only programmer on all of these projects, and they were all pretty quick turn around. 3-5 months typically. I learned a lot. We hit just about every game genre going, some of them more than once which was especially useful for actually building on what you learned the first time around.
We used Unity for all of them, it was really the only viable option for the wide array of games we were making on the platforms we were targetting. Even if “Unity iPhone” and “Unity Android” were entirely separate versions of the Editor in the Unity 2 days (Unity 3 is what brought them all under one roof properly).
Eventually though, the itch to work on a game that I could actually get attached to grew a bit, and that as luck would have it late 2015 I got a call to come help work on an AG racing game. Formula Fusion, eventually renamed to Pacer.
A whole new engine (UE4, I’d never even touched UE3 for more than an hour before this), a multi-year long project, high(er) fidelity graphics and physics and AI challenges (Have you ever tried to get a vehicle with basically 0 friction to steer correctly at the speed of sound?… it’s not easy). Something completely different to what I had been doing, but it turns out it was just what I needed, some really meaty problems to really sink my teeth into and solve as “properly” as I could.
The project didn’t do all that well commercially, but there wasn’t any way I was going to go back to development as a service anymore, so I started looking for my next role.
And that’s where we are now. I’m at Roll7, back in Unity land, and last year we released OlliOlli World and Rollerdrome. Both of which were nominated for Best British Game at the BAFTAs, with Rollerdrome winning it! That’s the one I worked on, I never got to work on OOW, though I’d have loved to.
Anyway. That’s me. I probably won’t do many “stories of my career” kind of posts, but I thought I should give you a reason to keep reading what I’m writing.
What will I blog about?
Technical stuff mostly. Life might creep in now and again. Maybe some other hobbies too.
The first kind of post I hope you’re likely to see from me, is just about any cool stuff I might be working on. For example I decided to start making an entire engine about a month ago (if you’re keeping track, yes I had a 4 week old baby at the time… yes it is going quite slowly).
I made a few small ones in University, and had one on the go after graduating. But the drive to make them fell off a bit as Unity was taking over. But with recent… events… I thought now might be a good time to see what I can do.
I’d like to post about it and share what I’m learning, how I’m solving certain problems, discuss architecture. All of that will hopefully be incredibly useful to younger developers wondering how these things are done. With any luck I’ll attract the attention of some people more knowledgable than myself who can tell me if I’m doing something stupid, making my engine better. Maybe even making it good!
The other kind of post you’re likely to see is more along the lines of explicit learning resources. For example one I’ve been saying I should write for a while is how to write a good Pooling system in Unity. I’ve seen a lot of the same mistakes being made by junior programmers, and it seems they always end up having read from the same 2 or 3 tutorials which are more designed to explain the concept of pooling, rather than an actually good implementation of it. So I suppose, watch this space for that one.
How often will I post?
I have absolutely no idea, I figure if I try and hold myself to any sort of set schedule (at least for now) then this whole thing will fall apart before it even gets going. I am almost definitely riddled with ADHD, so I’m quite honestly amazed it’s gotten this far.
That’s it for now, we’ll see what happens from here I suppose!