An experienced software developer with a bachelor degree in game development working in the
computer games industry.
"Ash took on a very significant role during the development of ZomNom. He was extremely proactive in identifying issues with tech and worked closely with the design and art teams to ensure the project ran as smoothly as possible. He took on a mentoring role and ensured everyone knew what the tech did and how it could be best utilized to improve the game. The final project is excellent and I think this is in large part down to Ash's dedication."
- Tony Oakden, Project Mentor
Producer for Bioshock, 2K Games
Eat Brains in a beautifully ruined city
Check out the full playthrough video.
A twist on a classic 2.5D platformer, set in the middle of the zombie apocalypse. ZomNom was a fifteen week rapid-development project in Unity with a cross-discipline core team of six that aimed to create a finished and polished game to showcase our skills. I took on the role of lead programmer and applied my skills a wide range of features; principle gameplay programming, character and animation controllers, procedural joint animation for NPC aiming, a custom ambient soundscape system, custom Unity dev tools, NPC AI, weapon and environment VFX, complex physical interactions that give this platformer surprising gameplay depth, and much more.
❤️ This project received the AIE Head of School Award for the Most Impressive Advanced Diploma Game Project (2018).
IT'S NOT EASY BEING A DEMON LORD
A demonic hack-n-slash extravaganza. Wreak havoc on the cultists that summoned you from the underworld and escape before they can undo their mistake. Demorial was a six week proof-of-concept project made in Unity with a large cross-discipline team of 12. I acted as lead programmer and scrum master, contributing to a variety of systems including; NPC AI, custom Unity dev tools, custom physics interactions, weapon and environment VFX, camera behaviour and more.
A love letter to skyroads
A homage to the 1993 classic Skyroads, pilot your ship through this procedurally generated endless runner. Working alongside fellow programmer Zack Direen, our challenge was to create a finished game using Unity in just one week. This project satisfied my keen interest in procedural content and nostalgia for classic games.
ALL TILED UP
Three Day Game Jam
Move elemental cubes of fire and ice through a selection of brain-teasing obstacles in this unique puzzle game. A game jam project made with Unity in just three days, then given a final polish. I was the sole programmer in a team of five, and had to create a level editor and level data load/save system, movement and puzzle logic systems, game state, VFX and sound management systems - in a bug free, polished and play-ready state - all in rapid time.
Caelum Magna VR Star Map
virtual reality visualisation of science data
Caelum Magna is a VR star map tool that visualises star data from the European Space Agency's Gaia satellite project, which has mapped over 1.3 billion stars in our galaxy.
The above recording was made using an Oculus Rift S VR headset.
This project is written in C++ using the Amazon Lumberyard game engine, and streams data in real-time from positional data of 1.3 billion stars stored in a locally hosted PostgreSQL database.
The star map software is open-source and is available on GitHub.
To navigate and stream the vast amounts data in real-time, I use a multi-threading database connector I created for Lumberyard called PLY (also open-source).
Special thanks to Dr. Coryn Bailer-Jones at the Max Planck Institute for Astronomy for providing distance estimate data.
Using Caelum Magna VR to visualise an anomaly in the Gaia data set.
Gaia Sky Survey in 2D - ESA/Gaia/DPAC
The Gaia Satellite - ESA/ATG medialab
PLY - Gem for Lumberyard
Multi-threaded Postgres database connector
PLY stands for PostgreSQL for Lumberyard. While Amazon provides Gems (self contained packages) for connecting to databases on its AWS cloud services, PLY is a C++ based solution for connecting to your own self-hosted PostgreSQL database instances (either remotely or locally).
PLY provides a connection pool combined with a multi-threaded worker pool, which allows the simultaneous processing of multiple queries from a query queue. Results are returned to a results queue.
PLY is an open source gem written specially for Lumberyard, allows easy setup and integration with Lumberyard projects, and includes database connection and query worker pool management via editor tools. It uses the Lumberyard event bus system (ebus) to take requests from other modules, and to return results.
PLY is used as the core of my VR star map project (seen above), and provides rapid multi-threaded access to over 1.3 billion star data records, streaming them into the game engine in real-time.
Cybersecurity by Example
Built as a working demonstration of cybersecurity development practices and the model-view-controller (MVC) design pattern, Starchat is a PHP-based web application and simple chat server inspired by Discord and IRC, with account roles and a few other goodies thrown in.
Industry-best-practice security measures are employed, such as protections against Cross Site Scripting (XSS) attacks, and SQL injection.
Many of the principles are applicable to software projects beyond the web application and PHP sphere. Check out the README file in the project for more details.
Icon by Eucalyp of The Noun Project
CLUSTER COMPUTING MADE EASY (C++ LIBRARY)
In the above example, two computers work together using ClusterFrac to render a single Mandelbrot Set.
ClusterFrac is a C++ library that facilitates the distributed computing and multi-threading of parallelisable tasks. This allows a single task to be worked on by multiple computers at once, allowing it to be completed faster. The module allows any parallelisable task to be broken down into discreet work packages which are then shared among multiple computers on a network and processed by multiple CPU cores on each computer.
One ship, one crew, multiplayer teamwork
One ship. One crew. Players are in charge of command stations together on the bridge of one ship. Helm, navigation, weapons, sensors and engineering stations must work together to command a vessel too big for any one player to operate on their own.
It is intended to be played face-to-face with a bunch of friends, each with their own laptops or tablets, sitting in a lounge room in front of a TV that is connected to a PC that is the game server. The TV displays the "observer" view mode which provides a cinematic view of the action, like the front screen on the Enterprise in Star Trek.
Networking (sharing command station states and synchronising game objects across all clients) and prototypes for many of the stations are complete. The big take-aways from this experiment: Multiplayer development is twice the work of single player games, this concept is too big for one person to achieve alone, and it shows lots of promise.
Procedural Voxel Terrain meets Perlin Noise
Ever wondered what happens when you inject Perlin Noise into the height map for a procedurally generated Voxel Terrain, and then move the Perlin coordinate offset in realtime? Now you know!
These glowing bio-luminescent mushrooms react to player presence and emit spores that float away in the breeze. Models by Jamie Jenssen. Shaders and VFX by me.
A time-based sine wave is fed into the emission intensity value for the mushroom shader, creating the pulsing glowing effect. The spores are particles that follow the breeze created by a local wind zone object. Coloured light sources reflect off the surrounding environment.
These mushrooms feature in our game "Demorial" which you can find in the Showcase section above.
Dynamic Shaders and Particle Effects
After years of developing business applications for government and private clients, I decided to switch gears and combine creativity with code by entering the field of games and simulations development.
After achieving an Advanced Diploma in Professional Game Development in 2018, I received the AIE Head of School award for Outstanding Game Programmer of my graduating year.
I completed a three year Bachelor Degree in Game Development between 2017 and 2019, while working on my own games and simulations projects on the side.
Since 2020 I have been working on games at Electronic Arts as a C++ engineer.
I have experience as a project manager, development team lead, scrum master, games and simulations developer, web application developer and much more.
For a complete résumé, contact me at firstname.lastname@example.org.
Contact me at:
© Ashley Flynn - all rights reserved