top of page

Mechanic Highlights

Here I'll go over some elements I've worked on from a few of my projects. Some will be more in depth than others, since it's been quite some time since I've worked on my older projects. 

Anthill Annihilation (Old)

Procedural Ant Animation

Ants have six legs and for someone who does not work on keyframed animation often, are quite hard to animate convincingly. My other concern was that with the ants existing in uneven, unpredictable terrain. Walls, cliff edges, narrow walkways, I wasn't prepared to try and deal with the animation, so I instead opted to make the ants' animation procedural. I created the Model, Rig and Texture for the Ants also.

​

I will make it absolutely clear: This is not suitable to be used in a game. It was built off of fundamentally flawed methods, and was a learning experience. It is not optimized. Too many ants and the game will chug. It is heavily reliant on tick events and broken plugins, as initially I was under a strict deadline for a university submission. I do still believe what was made was cool, and I will absolutely revisit the animation in future. 

Overview

Each ant has a component tied to each leg which handles all of the logic related to where the foot should be at any given time. This means each leg can hold individual settings on the step time, the distance of each step, the height of the step, and how much randomization the step will have. 

​

The Components would then feed their information to the Control rig bound to the ant, which is what handled all of the movement that the mesh made. Each leg had basic IK, and the position and rotation of the body was calculated from the position of each leg averaged out, with a height offset added. There is also a control for the look target of the ant, which has the head and upper spine of the ant aim at it.

Demos​

The traces for each foot would cast backup traces in case the initial trace did not land, which helped them continue walking where their footing would otherwise be difficult.​

I also added a slight movement to the bodies. The position is also random, but makes the ants feel more alive and inquisitive.

Root 66

Petals and Animations

Root 66 was a 48 hour jam. Barry Petal, the protagonist, was originally set to have his health represented by the number of petals he had remaining.

image.png

The bones in the petal were also set up so that as the player jumps, they would blow in the wind, and once landed settle back into position. This was a simple case of when Barry is jumping, the petals would curl back, with noise added to their position to emulate the wind buffeting them as he flies. Once landed, using a timeline they would settle back into position, slightly overshooting to give a better impression of his velocity coming to a sudden stop. 

Barry's body was heavily reliant on the verlet node in the control rig, which kind of emulates springy physics in a chain of bones. When he launches, it simply pulls the target for the head back, and when he lands it puts the target back in the default position. The verlet node does the heavy lifting and has him bounce back naturally. 

​

I also created the Arrow that appears when preparing to launch. I will not say I'm proud of how it works but it was made in it's entirety in the last hour or so of the jam. I really wanted it in and the quickest way I thought of doing it was by using a Spring arm component. The spring arm has a Camera Lag option, and the arrow simply aims itself to where the camera would normally be placed. It gives the arrow a nice physical feel.

Snip Snap

Selfie Mode

Snip Snap was made for a 48 hour jam (Global Games Jam 2021). It was a difficult jam to work on because we had a particularly large team and it was tough to manage. I had wanted to try out making a selfie mode in a game, the jam's theme was "Lost and Found". We loosely wrapped it around you finding people's belongings with your camera, which gave me the chance to play around with making a selfie camera. Here's a quick video of it in action. 

It also saves your image in the game's directory.

​

HighresScreenshot00001.png

There were a few games that inspired the selfie mode in different ways.

  • Yakuza Kiwami 2 - Inspired the awkward nature of someone taking selfies who ordinarily would not.

  • Spider-man (2018) - Inspired the arm placement using IK to hold the camera

  • Watch Dogs 2 - Inspired being able to rotate the camera in the hand to get a better angle. 

For the animation of Snap, I used an Animation blueprint which rotated the Jaw bone according to a clamped value from the player blueprint, and used the FABRIK node to give the arm IK and set the end to be the position of the camera. 

​

I received the player mesh fairly late on in the jam and it was my Mum's birthday on the last day, so I didn't have time to get everything in I wanted to. The joint orientation of the eye bones was a little off, which made eye tracking difficult and I unfortunately wasn't able to sort it in time. Given more time I would have also added control to the angle of the head with the Alt key.

​

It was a nice experiment and I feel like it added a lot of characterization to the game, and to Snap.

Cube Escape: Express

Train Exterior

I used to take the train in to College and University often, and there's not really much to do on the train other than look out the window. When we landed on our Cube Escape project being set on a Train, I wanted to try and re-create the feeling of watching the world going by outside.

Here's a video of it in action in the gameplay video. 

​

​

​

​

​

​

​

​

​

The system I set up had the environment spawn in "biomes" at random. It would set up a playlist of sorts, which would determine what order the biomes would appear, and once the playlist had completed, it would re-shuffle it and cycle through them again. This idea was inspired by Tetris, which uses a similar method to ensure you get an even spread of tetronimos, but here it just ensures you're not constantly within the same biome. 

Each biome is made up of a Start, middle and End section to allow the biomes to shift without being too jarring. The inherent issue with this is that it always fades in from and out to the plains biome, so it's not exactly seamless but it helps blend a little bit better. The basic blending meant it was easy for others to build upon, where they would only need to create the start middle and end pieces, and then add them to the biome pool. 

The Unique Biome is different however, and always only creates one track segment. These segments exist to be one off pieces, such as a long bridge, or a pond.

Pizzatron VR

Customer and Waiter A.I

This one will be tough to talk about due to it being so long ago, and the project is hard to open.

Pizzatron was a project done in 2018 during the second year of University. It was produced in three months, and was a replacement of a project with an astronomical scope. For that project, I was working on the A.I of worker bots. Small, floating robots with two arms that had a variety of behaviours, such as patrolling, wandering, transporting boxes, attacking the player and fleeing. That project is even harder to open so all I have is this gif.

​

​

When we made the shift to Pizzatron, these robots became the customers and waiters. In this gameplay video you can see their behaviours in action. 

The Customer's basic actions were as follows: 

  • Join the Queue

  • When at the front of the Queue, hand their order in

  • When the order is on the board, Find a table and sit at it

  • When the order has arrived check that it is accurate

  • If the order is accurate, "eat it", pay the waiter, and leave

  • If not, return the incorrect order paper to the player and leave

​

As for the Waiter, it's actions were:

  • Wait until an order was ready

  • Pick up the order and take it to the corresponding table

  • When a customer has finished eating, go to their table to take their payment

​

I regret not having the waiter collect the plates after a customer had finished eating, but we were on a strict time limit and I was also working on anything to do with the customers and order taking, such as the Menu, The order board, the money counter, the clock and the day system. â€‹

  • Instagram
  • Twitter
  • LinkedIn

©2023 by Bruce Gdula.

bottom of page