Matt Syrett: Polygon Pusher
Oh no time for Unity…..
As you can tell from the title I may have a grudge with the Unity game engine. On a good day, I will moan about Unity a couple of times: much to the annoyance of our programmers. The main reason for this is that my background in shader building is in Unreal Engine 3/Unreal Development Kit. However, having bought a tool called Shader Forge I have managed to put my differences aside, allowing me to get cracking with the art stuff (though that didn’t stop the moaning altogether).
Tommy's Note: Yes, buying shader forge did shut him up a little bit. Though there's still a long way to go.
Visual-Based Shader Creation For The Masses
I come from using a visual node-based approach for creating shaders. One of the first game engines I used was the Unreal Engine 3 which at the time came packaged with Unreal Tournament (such a good game). While I started working with Unreal Development Kit, the publicly available version of UE3, I have recently switched to Unreal Engine 4 for project work: both of which use a visual node-based shader system. So when I picked up Unity3D for the first time the thought of learning code to create the shaders I wanted was a daunting task. However, when a friend suggested Shader Forge, I had only one response:
This visual approach to shader building is based on dragging the different nodes and plugging them into the right slots on the main box, just like Maya and Max. Given this is how I am used to working, I was glad to find this works just as well in Unity3D.
The image above shows the master shader one of the platforms in-game. Below is a video of the shader in action, with a setup that uses masks instead of having colour baked into the texture. This allows me to control all of the colour changes in the shader.
As you can see, we handle all of the colour changes in the shader. Given we only have masks being used in the texture, this ensures file sizes are kept to a minimum. This is good for runtime performance and it allows us to be more creative when it comes to changing colour on the fly. Our plan at the moment is for James Tatum to work with the shader I have created and get it to do some voodoo magic and change colour when the certain objects collide with the platform.
Tommy's Note: Just to clarify for all artists out there (and indeed aspiring programmers), we do not practice 'voodoo magic'. This is a craft y'know!
Another target for my first milestone was to create a range of power ups. There are a collection of different power-ups built into the game already so I decided to focus on four to begin with: Phase (allows Pixel Pete to walk through obstacles) , Time, Speed and Superman! No wait… that was meant to stay ‘Super Jump’. In the end, I decided to make miniature versions of Pixel Pete as a hologram and add props to show the different power ups. The first set of these powerups is shown below.
Animation Time! Only Joking…
We have been working with a very talented animator, Charlotte Parker, who has created all of our animations for Pixel Pete so far. While I could have done this myself, Charlotte has a lot more experience in character animation and it certainly shows in the work we have received to-date. Below is a tweet of the animations for Pixel Pete running in Maya. This shows the different types of animation that feature in game as of the latest build.
— Table Flip Games (@TableFlipGames) May 13, 2014
Pixel Pete In Action…
Pixel Pete in game, walking, standing idle and falling.