Projects

Roles & Responsibilities:

For this project I was responsible for the grapple hook feature, early level design, both our enemy AI and tutorial AI behaviour, Player HUD, pickups, some level blueprints and most of the vfx.

8bit-Blitz

Description from my team Sapphire Dagger for the project:

8 Bit Blitz is our stab at the speed running platformer genre, and took a lot of inspiration from games like Cyberhook and Roboquest. As a team our first priority was nailing down a fun and engaging gameplay loop early on so we could have plenty of time to iterate and decorate. Our core pillars were Momentum, Smooth, and Pacing. Our aim was to provide fast, interactive platforming challenges that pit the players' ability to line up shots and avoid obstacles while trying to hammer out their fastest clear times. 

 

Our biggest challenge with 8bit- Blitz was feedback and game feel. Our team spent alot of time researching a proper way to teach our players game mechanics. After many iterations we chose to teach the players as they play increasing the challenge as well as teaching new mechanics over time.

Roles & Responsibilities:

I was responsible for Character rigging/animation and Shader creation/vfx for the character.

Waterman

Description from my team for the project:

Waterman is a high-paced 3rd person water-shooter where the player fights to put out fires in order to save the forest.

 

At the start of our creation of Waterman my team new that we wanted to create a game in support of the wildfires that happened in the Los Angeles and San Diego areas of California in January of 2025. We created the game in hopes of empowering our players in times of stress and tragedy.

Stylized Slime Character is from Fab by Beyond Sky Studios and was used for the character model of waterman.
Stylized Slime Character is from FAB by Beyond Sky Studios and was used for the character model of Waterman.

VFX

A collection of all the vfx that I have created using unreal engine.

Darkness AOE

Ghostly knight

Black Knight is from FAB by Buzolin Studios and was used for the character model.

Lightning Strike

Firebreath

Fireblast

Dissolve

Black Knight is from FAB by Buzolin Studios and was used for the character model.

Potion bottles w/liquid

Fireball

Rock Hammer

Flame Sword

Tornado

Crystal Burst

Healing Tentacles

Fairy Teleport

Lava Eruption

Tools and other Content

A collection and breakdown of all the tools used or created from various projects.

Dissolve

The dissolve VFX is used to disappear and reappear actors. It uses Niagara particles and a masked shader that uses a base material to dissolve over the objects base material. A material function is used to subtract from the base material for the dissolve. For the VFX a Niagara script module is used to sample the vertex data of the mesh.

Black Knight is from FAB by Buzolin Studios and was used for the character model.

Lava Shader

The lava shader I created to be used for lava particles in the lavaeruption. I created the material so that the particles would react like lava would when they hit the ground. The material uses distance fields to push out at the bottom and it is customizable. I am using normal textures and vertex offset to wiggle the material overtime.

Fillable Liquid Shader

This liquid shader was created to be used with potion bottles to simulate the look of fluid. The level is fillable and the fluid simulates physical movement inside of the material using sine waves. The liquid shader also has the ability to change textures and manipulate their movement and color to allow for lots of liquid customization.

Wiggle Shader

The wiggle shader uses similar vertex animation to the lava shader and it has 3 different layers of texture animation. The size and angle of the shader can be changed to allow for plenty of different uses. I also added the functionality to mask the movement on parts of the mesh so that masked portions will not move.

AOE Shader

In the AOE shader a fresnel is used to create the edge glow with plenty of customization for color, width, and intensity. The edges only glow so when the mesh touches an object the line edge of the mesh is shown properly on the overlapped object. The bottom edge of the shader is using distance fields to control the height and the width is customizable.

We need your consent to load the translations

We use a third-party service to translate the website content that may collect data about your activity. Please review the details in the privacy policy and accept the service to view the translations.