Game Audio Learning Portal

View Original

Game Engines Explained (For Sound Designers)

Overview

To start with, let’s check out this video by Ask Gamedev, that explains what game engines are, why we need them and how they work: https://youtu.be/LMRZBKhQcRc

Do I Need To Learn A Game Engine?

Depending on the path you choose you might never have to touch a game engine. However, having a fundamental understanding of how they work will empower you to create better sounds. If you are going down a more technical path then it’s a necessary and essential skill.

How will it help you with sound design? Simple - by knowing the capabilities of our game engine, we can make use of the data and tools available to create better soundscapes. What do I mean by that? Well, I’ll give you some examples:

For instance, if we learn a little bit about the animation system in a game engine, we will find that we can easily tag audio events to certain parts of an animation to trigger them at precise times and ensure that they are synchronised with the animation.

Additionally, if we learn how audio emitters work, we might find out that we can attach them to models and props. We can then rig a large character like a dragon with separate audio emitters for the wings, body, feet, and mouth. This allows us to split the sounds up during our design process and create a more modular system that provides more variety and sounds more immersive.

Another example based on the dragon would be the task of creating a sound for its scales when it moves. Simple animation tagging would work but with lots of animations, it would become a painstaking process.

A different method would be to create a bunch of short sound loops for the scale movement that crossfade randomly into one another, and then change the volume of this combined sound based on the speed at which the dragon is moving. This allows the dragon to be completely silent when stationary but make natural sounds every time it moves without having to painstakingly tag all of the animations.

The value that controls the volume of the scale sound is called a game parameter. These values let us manipulate sounds during runtime, from changing the volume of a sound to switching what sound is being played or adding filters and reverb.

As you can see, the way that we implement sounds influences how we design them in the first place. This is why it’s so useful to have a good understanding of the capabilities of our tools.

The final reason to learn a game engine is because it increases your chances of getting hired! From an employer’s perspective, knowing that a candidate can hit the ground running and implement their own sounds without requiring a bunch of extra training can be the deciding factor, especially when time is scarce.

What Game Engines Should I Learn?

My personal recommendations are Unity and Unreal Engine, as they are not only very popular but also free to download and have a ton of great learning resources. This includes hands-on demo projects which will allow you to apply your knowledge practically and even create your own games.

While it’s a great idea to learn both eventually, which engine you start with depends on what area you are looking to go into. Unity is very popular among indie developers, whereas Unreal Engine is more common in the world of AAA game development.

How Do I Learn A Game Engine?

First, pick one and stick with it - you will learn more quickly by focussing on one engine than by switching back and forth between two or more. Once you have learned one, the process of picking up another later down the line will be quicker from the experience you gained learning your first engine.

Focus on understanding the high-level concepts rather than going into all of the details. Odds are that you might not even touch the game engine for a lot of your early projects, so take baby steps and focus on the things that are relevant to the path you want to follow. For example, if you want to go down the asset creation route then it’s more important to know what sort of ways your sounds can be played back and what parameters you can use to change the sounds during runtime.

If you want to go down the technical route, then you’ll want to learn how to implement sounds, how their playback can be optimised to save memory and the tools that allow you to manipulate and process the sounds during runtime.

The way I personally find most fun and efficient to a game engine is by creating a little game of my own. Not something extremely complicated, I’m talking a very basic 2D platformer or something similar. This will require you to engage with all the fundamentals of the engine, and allows you to split the learning process into smaller tasks and milestones, and figure out each step along the way - first, you create a rectangle and then add the ability to control its movement with the WASD keys, then you add platforms and colliders, and so on.

This way you’ll not only have learned the principles of game development, some very basic coding, and how to use a game engine, but you’ll also have something to show for it that you can add to your portfolio.

Finally, remember that the learning process is a gradual and continuous one. Focus on small, incremental steps, and go at your own pace. If you’re struggling, and it feels like things aren’t sinking in, then I highly recommend this video by Game Maker’s Toolkit, talking about the difficulty of learning an engine and offering some advice on how to move forward: https://youtu.be/vFjXKOXdgGo

Unreal Engine Resources

This short and concise tutorial will provide you with a great overview on all the basics of Unreal Engine: https://www.raywenderlich.com/771-unreal-engine-4-tutorial-for-beginners-getting-started#toc-anchor-001

A great quick-start guide to the audio implementation side of Unreal Engine: https://www.asoundeffect.com/unreal-engine-audio-primer/

Here is a wonderful Twitter thread with resources to learn the different parts of Unreal Engine’s audio tools and implementation methods: https://twitter.com/TheNewTeed/status/1505820433005826049

If you’re using Unreal Engine 5’s Meta Sounds then this tutorial series from The Sound FX Guy will teach you all the basics: https://youtube.com/playlist?list=PLgp5bmNEz8Vzd6XI2D1ti8ZHGjNdfgi2E

Unity Resources

A guided tutorial that teaches you all the basics of Unity: https://learn.unity.com/pathway/unity-essentials?language=en

This excellent website gives you a great place to start learning the fundamentals of playing back audio in Unity: https://gamedevbeginner.com/how-to-play-audio-in-unity-with-examples/

Lastly, here is a great tutorial to get you started with audio scripting in Unity: https://www.asoundeffect.com/game-audio-scripting/