Overview

Hi, my name is Tommie Kerstens and I am very passionate about Game-Design, Artificial-Intelligence and 3D-Animation. In this portfolio I want to give you a glimpse into my most recent work. Enjoy.

Full multiplayer game developed in the Unreal Engine 4.

Sliding Mechanic for the game Shrine. Using a custom physics simulation.

Study into a novel AI-technology augmenting BehaviorTrees with Neural Networks in Unreal Engine 4.

Evolving Neural Networks for locomotion control.

Visualization of an evolutionary approach to the
"Traveling Salesman Problem".

Showreel of Animation done in 3dsMax, Maya, and Blender.

A film about the catastrophic impact of overfishing.
3D-Modeling & Animation.


Games
RoboTrouble

Welcome to RoboTrouble. Step into a world overtaken by mechanical creatures. Fight off hordes of angry robots with your buddy, whilst trying to survive. Research new weaponry to blast your way through wave after wave of ever more deadly metal. Blaze your enemies into glowing piles of precious resources that you can utilize to advance through a rich and diverse tech-tree.

Featurecreep as a Feature

We have all had that one very personal project that never seems to reach completion. It is possible to get bogged down on details that we just aren't sure about how to implement or because of a lack of deadlines and pressure the project is just floating around in an endless ocean with no clear purpose or direction. Another option is this one phenomena referred to as "Featurecreep"; you just want to keep adding new features to the game, even though these features might not be adding any value to the final product. RoboTrouble has had its fair share of featurecreep, but as this game to me is more of a playground (a game in a game?) for implementing new features,

testing new systems and improving upon myself, I have made the conscious decision that this would not matter.

Iterations

The game has gone through several iterations. Each time improving on stability, efficiency and adaptability. I hope in the near future to have especially the adaptability part nailed down well enough to not have to iterate any longer, but just adapt the existing. My recent study into better code design has given me some great ideas on how to reach this required level of adaptability.


Shrine (Slide mechanic)

A Fast and Fun Way to Traverse the World.

The objective was to build a slide mechanic which allowed the player to travel around the world in a fast and fun way. The mechanic had to be programmed such that a designer could adjust the feel and function of the sliding behavior. To gain the required control over the sliding behavior the character is placed on a virtual sled existing of line-traces. The sled is utilized to generate estimates of the surface under the character and by this smoothing out the surface through averaging. Based on the curvature of the approximated surface a custom made physics simulation computes the motion of the character.

The custom physics simulation allows a designer to tailor the slide behaviors to his or her likings. For example, we were experiencing the character losing too much velocity on her way up-hill, but did not want her to gain additional velocity on her way down, since the rate at which speed is lost up-hill and the rate at which speed is gained down-hill could be adjusted separately, this problem was solved by the adjustment of one single parameter.


Artificial Intelligence
Neuro-BehaviorTrees

A novel technology I am developing for my master thesis in Artificial Intelligence. Neuro-BehaviorTrees is a hybrid approach for the creation of AI. It combines the benefits of top-down AI through a behavior-tree, with the learn-ability of bottom up (modern) AI. In the example below we see an early demonstration of this technology used to learn locomotion, in which the decisions on "what to do" is made by a preprogrammed behavior-tree, the controller then has to figure out "how" to perform the required actions. Current research is aimed more towards learning policies for decision making. More on this should be available soon.


EvoBots

My first attempt of simulating evolving robotics in the Unreal Engine. For an explanation of the inner workings of this simulation I recommend you to watch the video below.


Traveling Salesman

As we were studying "Evolutionary Computing" during my master program, I wanted to make a very visual implementation of an evolutionary algorithm to aid in my understanding of some of the underlying concepts involved. I chose to create a solver for the "Traveling Salesman" problem.

On presenting this application to my professor he asked me to develop this tool further for educational purposes. In the video below I showcase some functionalities of the application and allow it to solve a few different configurations of "City Layouts".


Animation
Showreel

Having spend much time self-studying and creating computer animation this remains one of my biggest passions. In my showreel I bring to you some of my work I am most proud of.


Losing Nemo

Losing Nemo is a six-minute long animated film about industrial overfishing, made by a 30+ strong international team of creatives! What began as just an idea turned out much bigger than we could possibly have anticipated. From concept to writing, from 3D-modelling to animating and to the composition of music; it has all been done with the help of creatives in our network. People from Germany to Spain and from Venezuela to New-Zealand have contributed to the first self-initiated project of Mister Lee. Read a bit about the backstory on our blog. The director of The Black Fish also wrote an article about the tangible effects of the film.

National Geographic wondered if the film went too far. Treehugger featured the film. Renowned design blog Visual.ly named the film one of the 20 Most Powerful Storytelling Videos of 2013. 'Losing Nemo' won the 2014 Animation Award of the San Francisco International Ocean Film Festival and was selected for KLIK! Festival in Amsterdam, the Shortshorts Festival in Japan, the Ecocinema Festival in Israel and many more.


About
Contact

Phone: +31 (0)6511 921 85
Email: Tommie.Kerstens@gmail.com