Adam Fort

Student - Programmer - Game Developer

C++; C#; HLSL; Python; Unity; Unreal; DirectX;

Portfolio




About


I'm a twenty two year old student from the Czech Republic. I have a big passion for technology, coding and games.

I'm currently studying BSc (Hons) Games Technology degree at the University of the West of England in Bristol. I've finished my first and second year with a first and now I'm in my final year.

Short 3D Animation



Animation created as my Maturita Exam project for IT class at high school. I’ve provided full documentation how to create and animate your own projects in Blender which is now being used as a teaching material for those interested in 3D at my high school.


Close Project

3D Animated Orrery



Created in Maya with use of Mental Ray as a one of my assignments in first year. Orrery is fully functioning with all gears conected to each other.

I was awarded with 90% for this assignment.


Close Project

Blobs: Suicidal Race



Suicidal Racing Blobs is a game concept for Nintendo Switch that I’ve created in a group of 4 as a final project for my first year.

I’ts a 8 player local/online multiplayer game playable in free for all or team mode. Players can choose to race in different themed locations. And to complete each level they need to help their teammates and kill their opponents.

Game is controlled with one joycon per player with simple controlls. It also features blob customization and Blobs Social Network where players can create new levels and compete against each other in online tournaments.

Full project presentation available here.


Close Project

Crazy Boxes



Sipmle 2D game created as a part of my portfolio for 1st year at university. It’s based on popular android game called Move the Block. The game is created in free open source framework called Cocos2D-x. It is entirely written in C++. It has multiple levels, working collision system, sound effect and score/hi-score system.

I was marked with a first for this assignment.

Playable version

Download: Google Drive.


Close Project

Snake



This is a my version of a very popular game Snake. It’s programmed in C++ in VS2017 in our lecturer’s engine called ASGE - it’s a simple 2D engine with basic functions for rendering sprites and so on. Into my version of the game I’ve added a moving fruit, so that it tries to escape from the player, making the game harder and adding a bit more challenge.

Because of possible plagiarism I can not show the code directly here, but if you are interested in seeing it, contact me.


Close Project

Grass Shader



For one project I’ve decided to try and create grass shader in Unity using HLSL. I wanted to create more stylized grass than realistic one so my shader is taking a mesh of points and then from each point it’s creating a simple grass strand. The grass is fully dynamic and lots of its parameters can be changed on the go, like for example wind speed, wind strength, width, height and so on. The complete look of the grass can also be easily changed by just using different noise textures.

It is also interactive - it reacts to a user-defined number of moving objects. That number can vary from 1 to hundreds.


Because of possible plagiarism I can not show the code directly here, but if you are interested in seeing it, contact me.


Close Project

Endless Runner



This game is my take on Google’s famous T-Rex game.

It’s a proceduraly generated endless runner game, where your main goal is to survive as long as possible. The game speeds up as you progress so it’s constantly getting more challenging.

Game includes a scoreboard that saves your previous scores and shows you the top 5. Scores are saved to a file so you won’t loose them even if you copy the game onto another machine.

Because of possible plagiarism I can not show the code directly here, but if you are interested in seeing it, contact me.


Close Project

Stargate Escape



Stargate Escape is a single player demo created in Unreal Engine 4 using blueprints. A player finds themselves on an empty Goa’uld mothership that has been greatly damaged, and their goal is to escape before the ship goes down and takes them with it. They’ll have to explore the ship and find powers that will help them achieve their goal.

The level was completely designed by myself with the majority of the assets created by myself in Blender, with some assets downloaded from ShareCG.

There are multiple interactive objects in the level including a ship’s control panel where the player is required to input a password in order to complete the level. During the game the player also gains access to a double jump as well as to a gravity gun with push and pull projectiles.


Close Project

Project Atlas



With Project Atlas our goal was to introduce simple and easy to use motion controls for manipulating objects in VR. Our platform of choice was HTC Vive, however, the approach would work with any motion controllers available.

We tried multiple VR experiences but in most of them, the controls felt flimsy and not really easy to use. In many of them, Google Earth VR for example, they required a whole tutorial part for you to actually learn the controls. With Project Atlas we aimed to change this. So we took the basics of the basics and through many playtesting sessions where we collected data form different users (with or without VR experience) simplified the controls to a point where even a person with absolutely no VR experience did not require any guidance to use them.

We looked at the most common controls that people are used to and tried to transfer them to the VR space. We took combination of gestures from smartphones and tables with standard controller input from the HTC Vive controllers. By doing this we created a simple control scheme which can be used to manipulate objects in VR (item inspection in games, virtual shopping, expolorng 3D maps and so on).

Full project presentation available here.


Close Project

Super Smash Potatoes



Super Smash Potatoes is a Smash Bros-like game created by me and my 3 friends. It’s a vertical slice of a fighting video game powered by our own Smashed Potatoes Game Engine developed in a DirectX as a part of a uni project. Engine is fully object oriented and file driven with own Physics & Collision system, Animation System, Particle System and much more. Game currently has 4 playable characters with the possibility of adding many more. It features fully fledge combat system with multiple attacks and the possibility to make amazing combos.

You can enjoy Super Smash Potatoes with up to 4 players on the same device. There is no singleplayer mode at the moment, however, it comes with a powerful level editor so even without friends, you can still enjoy at least part of the game.

My role in this project was the lead Physics & Collision system developer, I also did the whole combat system and a big part of the character movement.


Close Project

Un-Excite Bike



This project was part of the first of three UWE's Game Jam, we had a modern popular game and demake it for the Atari 2600. Our group decided to take the popular series Trials, many focusing on Trials Evolution. This game is a racing game for the Xbox 360 in which each player controls a motorcycle trials rider who traverses an obstacle course.

Gameplay video


Close Project

Super Trash



This project is second game of three UWE's Game Jam, in this game jam we were given assets from Playwest's (UWE Games Studio's) Super Trash Heroes. The task was to either to work on their IP or create a new game based on the same theme of food waste. Our team chose to create a new game with the assets. The original purpose of the assets we were given, was for a brawler game. This meant the project was limited to certain types of games, we also wanted to make the most of the assets given. After looking through the sprites, we really liked the flying animation they had for the player. Due to that fact, we chose to create a bullet hell game with food waste being a big part.

Gameplay video


Close Project

Dragon Mockery



Dragon Mockery This is the third and final game jam we had to do for an module. Each of the group had to use random game idea generator 6 times and pick the game they wanted to create. Our team ended up picking "Shooter game where you suffer mockery of dragons in beta", this game must include procedural generation. With these parameters, the first idea was a shooter rouge like game, where new level would load each time.

Gameplay video


Close Project

Ray Tracer



This project is a custom ray tracer I created in pure C++.
It has support for sphere, plane, box, and triangle intersections. I've created a custom .obj file loader that allows the ray tracer to load in any custom mesh. With custom meshes it has also support for smooth or flat shading.
Ray tracer also supports different materials, it has built in functions for reflection and refractions, so it has the possibility to render realistic glass, or any combination of materials.
The ray tracer not only supports standard lights like directional, point lights or area lights with soft shadows, but it also includes support for global illumination using Monte Carlo method.
To speed up rendering times of complex scenes a BVH was implemented and the whole ray tracer is multithreaded.


Close Project

Kachiku64



Kachiku64 was a pre-existing IP that Play West (UWE Games Studio) let the students work on, the game is 64 player party game that includes many different old school mechanics. This project was a cohort task (34 people), each teams was responsible for technical and design task. Our team was response for: Camera System, Web Based Controllers, Lobby, Spawning and Crowd Bombing Planes, Bug Fixing.

I created a web base controller using an framework that allowed unity to communicate with a website on a local network. The controller was made in JavaScript, HTML and CSS. I've improved my skills with web development, networking but mainly I've learned what it is like to work in a studio with dozens of other people.

Kachiku64 Trailer


Close Project

Dynamic Terrain Deformation on a GPU



Dynamic Terrain Deformation on a GPU was my dissertation project at the University of the West of England. Main goal of the project was to create system for the simulation of terrain that could be used to simulate variety of materials simply by adjusting couple parameters.

Terrain deformation is done by a combination of a tessellation shader to create high poly meshes and do the vertex displacement and with an implementation of 2D Navier-Stokes equations in a compute shader, which are used to create displacement textures. With this implemented, the whole terrain can be changed by simply adjusting parameters like the viscosity, speed, depth etc...

Multiple optimisation techniques were implemented as well, such as only simulation active is the one that the player is interacting with, allowing for multiple different simulations in one scene, textures for created paths are stored only if the tracks in the surface are permanent and many more.

Project video


Close Project