This demo shows the current state of my top-down stealth game. It also demonstrates the SimpleSteer version 0.62, my AI steering solution for Unity.
I’m responsible for the basic modelling and scene set up. The goal was to get an idea for the feel of the camera angle, the detail needed on the 3D models, and the ability of the AI agents to maneuver in such an environment.
I used Behave, a behaviour tree system by Emil Johansen for AI behaviours, Aron Granberg‘s A* Project for AI navigation, Locomotion system by Rune Skovbo Johansen for controlling the character animations, and FSM by Daniel Gallagher from Lost Zombie Studios mainly for input states.
The character model and animation is provided by Unity Technologies.
Pawng is an action puzzle game. It’s a mix of tile matching games like the classic Luxor and the legend called Pong. I made this prototype in quite a short time, and it still has issues, some bugs, and lacks features. Nonetheless I think it demonstrates that with a lot of work this could be turned into a fun little casual game.
You can control the “paddle” by clicking and dragging. On the top left you can see your score, while the number on the top right shows your remaining lives.
Point & Click
This is a demo of a very basic proof of concept for a point and click adventure game idea. The goal was to create a camera movement that follows the action in 3D on a “rail” and settles in a position that overlooks the scene. While the two scenes in this demo are entirely made of in-editor cube primitives, they are still somewhat representative of the idea for an actual game where the character would move around in a dream, in stage set like copy of reality.
Apart from designing and implementing the camera movement, the goal was also to design an easy and fast process for the level designer to set up the camera for the scene. I also used this small project to try out different methods for implementing states for input, player character movement, the AI character, and the interactive object.
I used a finite state machine, a behaviour tree and simple boolean checks in the Update method. The goal was to find out which method would be better suited for more complex and simple tasks. Also I wanted to get a good idea of the time needed to implement the desired behaviour with each method and the additional time cost of debugging them as more and more entities are introduced.
This demo shows a recreation of the Team Fortress 2 shader by Valve. It is a well documented shader and is often implemented for various game engines. This makes it the perfect choice for shader writing exercises. I used the paper published by Valve and a version created by Unity user Farfarer.
In the demo scene you can see six instances of the same character model in two groups. The left group does not have a diffuse texture map, to show the lighting better. The right group uses a diffuse texture too. In each group you can see from left to right the built-in BumpedSpecular shader, Farfarer’s TF2 shader, and finally my TF2 shader implementation.
The main difference between the two versions is the calculation of the specular element of the lighting. I would like to stress that the comparison isn’t supposed to show which version is better, I only included both to get a better picture of the features of each.
The character model was not created by me. It is a standard asset that comes with the Unity engine. You can move the camera with the WASD or the arrow keys of your keyboard and rotate it with your mouse.