This week, I officially cut the corporate umbilical and am out on my own again. I’m grateful for my time with Atlassian, which is a great company filled with truly excellent people who I’m going to miss. The fact that I stayed for 6 years when my pitch to myself at acquisition time was ‘stick with it for 12 months and then see how you feel’ is indicative of that.
This week I wanted a toon-style non-photorealistic render, which is something I’ve done before but not for a while, and never in Unity. I’d been playing with the Standard Shader, the physically based pipeline which has support for quite a lot of good stuff like normal / specular / occlusion maps, and kinda just wanted that plus a toon ramp. I figured I’d check out what Unity already had first.
I’ve waxed lyrical before about how much I like Hugo for blogging; the ability to just use a static site with no need to worry about security patches, database connections etc, but still with the convenience of a simple blogging platform, is very attractive. However, it does mean you can’t easily write or tweak content from simpler environments like your phone if you notice a typo, since you need a full Hugo build environment to change content.
My primary development machine has been a series of nicely specced MacBook Pros for about 7 years. Over that time I’ve grown to love these shiny boxes of aspiration. My current machine dropped out of AppleCare in 2016 though, so it was time to start thinking about a replacement for my main work machine - as usual the previous model would be downgraded to our casual machine and would stick around for a good few years afterwards (or so I thought).
Recently I found myself wanting to expose a bunch of game parameters for our latest game project to my wife so she could easily edit them, to play with the difficulty and feel of it. I didn’t want her to have to use Unity, I just wanted her to be able to edit a simple file (while the game is running in this case). Bring on the text Although Unity’s own JsonUtility is a very useful tool for text exchange, JSON isn’t very approachable for a non-developer, given its very strict syntactic requirements.
How about that 2016 eh? I mean, leaving aside that a couple of mature western democracies deciding that it was well past time they got a little ker-azy and lit themselves on fire in case it might distract from other problems. Ignoring the 2016 “Cirque de Caca” thing, it’s been an interesting year for me. I decided to try being a game developer about 3 months ago, and that’s been a fun learning experience so far.
TL;DR: SpriteRecolour project page Download binaries (Mac, Win x86/x64, Linux x86/x64) SpriteRecolour example project in Unity Background While doing 2D gamedev work this week, it came to the front of my mind how nice it would be able to easily have multiple colour variations of sprites, without having to have multiple copies of the sprites themselves. There are various ways to do this, but the one I wanted to explore was a classic palette swap technique; the sort of thing we would have used in the 16-bit days.
I alluded in a previous post to the fact that I’ve chosen Mac for all my development activities. I’m aware that in game development (outside iOS games), this is perhaps not the most common choice. Apropos, I saw a tweet thread last week, not gamedev related, where a heated debate broke out about what platform/editor/language ‘real’ developers use. I’ve lost track of the number of times I’ve seen threads like this, where opinionated developers try to tell others what choices they should be making.
In my recent post A new journey I announced that I was moving into game development. Some people immediately followed up with questions about what engine I was intending to use, because developers 😉 Plot Twist! So let’s get this out of the way early: I won’t be using Ogre 😱 Hold your incredulity for a moment. 😀 The reason is not because Ogre isn’t great; since I retired, the team has been doing some amazing work.
I’ve thought about having a proper go at making games of my own for quite a while. There’s always been some reason why I’ve never quite gotten around to doing it seriously; all good reasons but when you line them up in serial, you suddenly realise a lot of time has passed. I’ve decided it’s time I stopped just thinking about it. As of today, I’m stepping down from most of my other responsibilities to dedicate serious time to making games.