The third solo Unity project started as a commission for my friend Morgan, of her fursona (also named Morgan). My goals for the project were these:
- 3d model a character and keep it under 100 triangles, for a mobile/retro spec style.
- Model with Maya’s modeling tools – I’d been using Silo for years and it was starting to show its age, and I wanted to get used to something more current.
- Use a very small texture map with no mipmapping or texture filtering, to keep the chunky hard pixelated edges on the textures.
- Learn to rig and animate with Akeytsu, which was a new tool at the time that was aimed at indie game studios.
- Get it into Unity, and get it playable
Started with in Clip Studio, drew a concept front/side view:
I box modeled the character and the final tally came in at around 800 quads.
Initially I did the UVs in Maya and then started painting the diffuse map in Photoshop but the further along I got, the less and less satisfied I was with the way it was looking. I did discover that it made more sense to paint portions of the diffuse map first, to get it pixel perfect, and then drag the UVs into place with pixel snapping turned on, rather than try to solve the UV layout blind, though.
So about halfway into painstakingly pixelating the diffuse map in Photoshop, I decided you know what, actually fuck this and then brought it into Silo to rejigger the UV’s for handpainting in CSP, which is much more fun. You can also see that I ditched the armor. Usually the way it goes is the more work I put into a project, the more work I look to eliminate.
Once the diffuse map was done, I was ready to start rigging. Akeytsu is a very interesting little application that is to rigging and animating what Silo is to modeling – it’s not trying to be a fully featured software suite, it’s trying to do one specific thing very well, and to do it in a way that is painless and intuitive. I’d already had some prior experience with rigging and weight painting in Maya, and Akeytsu didn’t make me waste a lot of time looking for where they keep the spatulas, letting me get to cooking right away.
And, similarly, once the character was rigged in Akeytsu, the animation functions are also very streamlined while also being very similar to Maya, so I was able to create a couple of idle animations, and a walk and a run cycle in a couple of weeks. Looking at it now, I could have spent a bit more time tightening up the walk and the run cycles because they both look kinda swimmy, but still. Character animation is a discipline I’ve got the least amount of experience doing.
With idle, walk, and run animations done, the last thing to do was import it into Unity. I’d done enough of the project-based tutorials and had been working out of the Unity 5 Animation Cookbook that I was confident I could dummy up a functional character. Importing from Akeytsu to Unity was painless, though it did take some googling to figure out how to stick the diffuse map into the shader, because that was new. But all of the animations showed up where they should be.
From there it was pretty easy to create a player gameobject with some simple player controller movement and oh wait whoops lol it needs an animator controller too doesn’t it
Once it had an animator controller, the state machine needed a bit of script to tell it which animations to play for which state and all the transitions had to be set up – rather than having a separate ‘run’ button I just had her build speed the longer she stayed in motion, so in the course of a couple of seconds she’d gradually transition from ‘walk’ to ‘run’.
I exported the project as a web-playable demo and put it up on itch, if you’d like to try it yourself.
Morgan passed in 2020, and she was a tremendous person and a bright point of light in the lives of everyone who knew her. I’m very grateful to her for the support she showed my work and for her friendship. I learned a lot from this project and I was very fortunate to have a client who was willing to throw money at me to do something so personally enriching.