Kitbashing Game Audio

Kitbashing Game Audio

Suggested Prerequisites:

Introduction

Audio is a very important and some times negelected aspect of game development. Great Audio impacts the mood and feeling players of a game experience. It can greatly enhance the pyschological impact of the game for players.

Be it background theme music which sets the mood. Such as building suspense or epic hard hitting battle theme music.

It also plays a role in enhancing the immersive experience of a game maps environment. Such as the sound of burning fire, lava, waterfalls, wind, chirping birds. Generally speaking these are know as SFX (Sound Effects) they are very powerful when combined with VFX (Visual Effects). Especially when used to enhance player or NPC actions such as casting spells, or firing weapons.

The trick is finding and locating the right audio clips and music to use.


Core Audio Settings

One of the things you'll want to do before working on audio kitbashing for your game is to make some adjustments to you Core Game Volume Settings.

You'll want to make certain that your Music, Sound Effects and Dialog settings all are at the same volume level. I personally set mine all at 50 and turn the overall game volume up to 100. (Note: It's best practice to always have Channel or sub volumes set lower than Master Volumes.)

You can get to this panel via Edit > Settings

EditSettings

Note: The idea here is to work in an environment with well leveled sound volumes.


Audio Gear

Many game developers use headphones or Speakers with a wide frequency range. If you are going to spend any amount of time in constructing sound environments or get into Audio Engineering (Regardless of it only being Game Audio). A pair of "Studio Headphones" with a wide frequency range is recommended. Studio Headphones are designed to provide an accurate reproduction of audio without intentionally coloring the sound tone such as with adding Extra Bass.

The Audio Gear which people use while playing your games will greatly vary, in price and quality. It's very easy to overdo it on Audio with tones which reach into subwoofer range. You may end up over doing sound FX or Audio levels. If you yourself don't have at least decent set of speakers (with sub) and headphones.

I myself own a few different pairs of Studio Headphones, along with Studio Monitors and a Sub to test things on. You should at the very least should be using something besides exceptionally cheap headphones, ear buds or speakers with a narrow frequency range when working with Audio production.

You can learn more about Studio Headphones and Studio Monitors (speakers) by searching this topic online.


Importing Audio

Core currently does not allow for the uploading import of audio clips or music files (.wav, .mp3) into the game engine.

Although there is a project on CC (Community Content) called MIDIAudio by NicholasForman which will play Custom MIDI (Musical Instrument Digital Interface) files in game. This requires that your MIDI files are converted to JSON (Javascript Object Notation) format.

MIDIAudio-Screenshot

MIDIAudio has well written Documentation regarding how to setup and use it. The Support for MIDI instruments is rather limited to the Instruments provided in the Core Audio Content Library. It's similar to how Virtual Instrument plug-ins such as those associated with DAW (Digital Audio Workstations) or other audio production software work. Your sound quality expectations and availability of desired instruments may or may not be violated.

This however is the only method to import and incorporate your own custom music scores into the Core Game Engine.

Since you cannot upload or important your own custom audio or music files. The majority of your audio work relies upon using Audio assets from The Core Audio Content Library


The Core Audio Content Library

The concept of Kitbashing originally comes from the practice of people taking different parts from a collection of plastic model kits and using them to completely bash (construct)together their own new and different model. The same is true with 3D Kitbash modeling only it's using virtual parts (instead of physical parts). In the case of Audio kitbashing we are working with audio files to construct the desired sound scapes, Sound FX or audio environment.

The following screen shot shows where the Core Audio Content Library is located at under the Core Content tab.

It's organized into 10 main categories (perhaps more in the future)

  • Ambience Backgrounds

  • Game Sounds

  • Instruments

  • Music

  • Player Sounds

  • Sound Effects

  • UI

  • Utilities

  • Voice Over

  • Weapons

Most of these Main Categories contain sub-categories. The category names lend themselves to the intended use or function of the associate audio files.

For a good overview and more in-depth information regarding the Core Audio Content Library and Audio in Core. Please follow the link below to the Core Documentation regarding it. Audio in Core - Core Documentation


TIP : I recommend Toggling from Icon view to List view. So that you are able to read the full-length names of Audio Assets. This will make things a lot easier in understanding what each audio asset is intended to be used for and what features it might contain.


Audio assets not audio files

It's best to not think of Core Audio assets as being merely audio files. Rather as being configurable audio assets.


Previewing Audio Assets

There are a couple of different ways to Preview Audio Library Assets.

Asset Properties Panel Preview Method

The First Way is via the Properties Panel.

This is a quick preview of the Audio Asset, however, does not let you fully preview many assets which have smart properties or different sound sections or layers. At the time of this writing there is a bug in being able to Stop the Audio Preview using the Play/Stop button. You will need to click onto another asset to stop the preview from playing.

Asset in Game Preview Method

The best way to fully preview an audio resource is it drag it into your game project Hierarchy. Use the Play Audio Button on the Assets Property Panel. It's also recommended to check "Apply Effects" So you can hear whatever Audio Effects or modifications you make to the Audio Assets Properties.

Some Audio Assets provide multiple Audio clips or tracks within them, via Smart Properties.

Below is an example of the "Astral Dream" Music Contruction Kit (Sections) 01 and the additional list of audio resources it provides in the Smart Properties section.

It's important to keep this in mind that Audio Assets with Smart Properties will offer a wider range of audio to use when previewing and looking for audio resources to use in your game or Metaverse projects.


Normal Audio and Smart Audio Properties

All Audio Resources (assets) have a set of several consistent customizable audio properties. These baseline properties can be found on all audio files.

It's important that you understand the function of each of these properties when working with Core Audio resources/assets.

Any Audio resource/asset which only contains this basic audio properties is known as a "regular" or "normal" audio Resource.

An example of a normal audio resource would be the "Air Conditioned Room Tone Loop 01 SFX" audio asset as shown below.

Audio Assets which have an additional Properties Section labeled as "Smart" are known as "Smart Audio" or Audio Assets with "Smart Properties". The smart properties available will vary from smart audio to smart audio file. Other types of Core Assets (besides Audio Assets) can have Smart Properties. Smart Properties can and do vary from Asset to Asset, depending upon what the asset is designed for.


General Kinds of Audio

Core Audio Resources use a self-descriptive name to help you understand the type of audio asset it is, and it's intended use.

Loop SFX

Some audio is designed to flawlessly repeat itself over and over again. These are what's known as Audio Loops. These are generally Assets with the word "loop" in part of its name along with SFX.

Generally speaking, you can loop any audio (using repeat) just be aware that some audio is designed to flawlessly repeat itself in a loop.

One Off Audio SFX

Audio designed to be played only one time, without looping (repeating). These are sometimes referred to as "One Offs" or "One and Dones". Generally speaking, these simply contain the phrase "SFX" at the end of the asset name, without the word "loop" appearing in the name. Some of these may or may not contain additional smart properties.

Stinger

A stinger or what is also known as a bumper is short clip of music that is used to introduce, end or link various sections of audio. Also, Stingers can be used when introducing players to an NPC, or when one is defeated. They can be useful when starting or ending any kind of action event. There are many creative uses for stinger or bumpers in your games. They tend to provide an extra audio enhancement or excitement of the start of end of action.

Look for the word "Stinger" to be used in the asset name. You can even search for this specific kind of audio asset using "Search" Core Content.

Other Types

There's a wide range of audio asset types which you can figure out from reading the name of a given audio asset, along with what category/subcategory it's contained in.

Some more examples would be:

  • Music

  • Background

  • Ambience

It was my intention to write a little about Loops, One-Off SFX, and Stingers to help people new to game audio or audio development in general understand the intended function of such assets.

  • UI Audio - Is designed to work with User Interfaces

  • Voice Over - Contains Spoken Audio Resources

  • Weapons - Contains VFX generally used with Weapons

  • Utilities - Contains Audio Asset Utilities. Such as the "Reverb Zone" which allows you to setup a volume area which applies Reverb effects to all audio inside that volume.

Audio Kits (pre-kitbashed)

Some Audio is already kitbashed together for you. If you see the phrase Audio Kit with the Group Icon instead of the Speaker Icon. It's more than likely a collection of other Audio Assets which has been grouped together and pre-kitbashed as a Core Template.

Below is an example of the Ambience Desert Kit 01 SFX Audio kit.

When you drag it into your project Hierarchy it looks like this. It is also colored blue to denote that it's a template.

You yourself can create your own Audio Kit Templates to use in your game or metaverse projects. You can also upload and share them with other people on Community Content.


Types of Smart Audio

The naming conventions of the Core Audio assets give you a clue as to the kind of smart audio features are available. The following is a general guide to give you some insight. It's by no means 100% Authoritative or all encompassing. It's meant to give you a better idea of what kind of smart properties to expect.


Set

If you see the word "set" in the audio asset name. It typically means it contain Multiple Sound types and extra smart properties depending upon it's the intended use.

Example: Gunshot Sniper Rifle Set 01 SFX


Music Construction Kit (Sections)

Audio Assets with the phrase "Music Construction Kit (Sections)" in its name generally contain different sections (Multiple Audio files) to a music composition in the Smart Properties.

Below is an example of the "Acoustic Campfire Stories" Music Construction Kit (sections) 01 Which show different available sections of music to select from and use.

As you can see there are 10 different music sections all of which are given self descriptive names.


Music Construction Kit (Layers)

Are Multitrack Audio files with Smart Properties that allow you to set and control the audio level of each track (channel).

Example: "A Slice of Life" Music Construction Kit (layers) 01

This example allows for you to control the volume levels for all 10 Instruments of this audio asset. This allows for you to create your own custom mix of this audio asset. You can even completely remove an instrument by setting the Volume level to '0'.

ZeroVolumeLevel


Music Score Set

Are Audio Files which contain multiple audio files which are designed to work together as a set (Collection) for musical score work. While they are similar to Music Construction Kit (Sections) they are designed to be more widely used in creating Musical Scores for your game metaverse projects.

Example: Action Music Score Set 01

As you can see this Music Score Set contains 19 different Audio files which you can use as part of your theme music for your project. These audio files have been produced and designed to work and function together.


Instruments

The Smart Audio support varies on Instrument files. Some allow you to pick the type of instrument sound (Japanese Epic Huge Taiko Percussion Ensemble Instrument 01). While others will let you pick the actual note pitch that's being played (such as "Flute Sampled Instrument"). A few Instruments don't have any smart properties.

Below is an example of Smart Properties available on the "Japanese Shakuhachi Flute Instrument 01" audio asset.

As you can see, it allows you to pick the Note/Octave range. Adjust the Velocity, Sustain and Release of the note. These types of Audio Assets are most useful when working with NicholasForeman's "MidiAudio" package off from CC (Community Content).

While CORE does not directly support the use of Virtual Instruments in the same manner (way) as DAW (Digital Audio Workstations) do, you can use Lau scripting for programmable control over things or even change Smart Properties via Lau Scripting.

See:

This example returns a list of Smart Properties which you can update or change via scripting. I'm mentioning this because working with Lau scripting and Audio almost goes hand in hand with one another.


More

It was my intention to share some insight into the structure of the Audio Asset names and what to expect or look for.

The trick is finding and locating the right audio clips and music to use.

The Core Content Libraries are frequently updated. New Audio Resources/Assets being generally added or updated with each new major update.


Audio Emitters in Core

Core currently provides only spherical shaped Audio Emitters in the game engine. Think of this as spherical shaped speaker. Instead of a directional speaker which sound travels in a specific direction sound instead travels outward from the center of the sphere in all directions.

Note: You may need to turn visual gizmos on (by pressing V while in the editor), to be able to see the audio emitters and make adjustments to them. They provide Developers with a higher visual understanding of how the sounds are emitted and heard in game.

Note: Directional Audio Emitters (emitters that behave in the same manner which physical speakers do) are not possible at this time of writing this.

However, you can still achieve a lot of Spatial or 3D audio working with spherical emitters.

You can also make the desired audio asset play everywhere in your game project by Disabling the following audio Properties.

  • Enable Spatialization

  • Enable Attenuation

  • Enable Occlusion.

This is most useful for Background Ambient Sound FX or background music which you wish for a player to hear everywhere in game. The same applies when working with audio effects on UI (User Interface) menus or systems.

When you enable these properties, is when the real power of in game 3D audio happens.

Enable Spatialization

Allows your audio asset to be heard in a specific positional channel based upon the position of the sound object to the players active camera. Camera game objects are actually the listening points for picking up game audio.

If the Audio source is positioned to the right of a player, it will sound like it's coming from the right of the player. (Unless they have their headphones or speakers accidentally reversed).

Enable Attenuation

Enables the volume of an audio asset to become attenuated based upon the distance a player is away from the audio asset source in game.

Enable Occlusion

This allows for Game Art Geometry to affect the attenuation of the audio, if it's between the player and the audio source. Provided it has Game Collision.

The Core Audio Engine will handle the volume attenuation, apply low pass frequency filters (to allow lower frequencies) to pass through the object and other DSP (Digital Signal Processing) tasks in real time.


Footstep Audio FX

The type of footstep sounds a player makes depends upon the Material applied to the ground or objects which a player walks on. For instance, if it's Snow or Sand material texture it will automatically sound like the player is walking upon the respective material. The same applies with Water Material Textures (it will sound like a player is walking through water).

Footstep sounds are managed and handled automatically by the Core Game engine. Just be aware that what materials you use to texture objects which players walk upon effect the sound of the Footstep Audio being automatically produced.


Kitbashing Audio Tricks and Tips


Wading through Water

This short Kitbashing Video shows how to setup core assets to make a player sound like they are wading or walking through water. Involves already knowing how to work with basic kitbashing and materials in the core game engine.


Spashing into Water SFX plus VFX

Whenever a player first jumps or lands in water. It's most amazing to include a Water Splash SFX (Sound Effect) along with some VFX. I've used this piece of CC (Community Content) in a number of projects. It's called "Splash FX Trigger Zone" and was created by deadlyfishes_mc.

*Here's a Video Tutorial on how to use "Splash FX Trigger Zones" in your game projects.


Stacking Audio Layers


NPC Enemies Kit (Examples)

NPCEnemiesKit1

Video Walk Through of Kitbashing Stacked Audio Layers on NPC Enemies Kit.


Audio Manager Tools from CC

Here's an excellent set of Audio Manager Tools created by JasonCdesign. What's most useful about this is that it allows you to stack layer audio assets very easy with control over waiting how many seconds before playing the audio asset (A property which is not available on Audio assets). While you can control things like; Fade In time, Fade Out Time, Start Time and Stop time from audio asset properties panel. There is no Wait to play property.

AudioMangerToolsCC

This set of audio manager scripts allow you to do just that. It's designed to work with Triggers. Although if you study the code and learn to work with Lua a little. It can serve as great starting point in working with audio scripting.

You can learn more about "Audio Manager Tools" in the link below.

[AUDIO] Audio Manager Tools

Again, this is resource which is available on CC (Community Content) and is easy to import into your Project content and get started working with right away without any knowledge of coding.


(updates to this section soon.)


Scripting Audio

Here are some links to the Official Core API Documentation which you will need for scripting Audio in Lua for Core.

Audio - Core Documentation (coregames.com)
SmartAudio - Core Documentation (coregames.com)
SmartObject - Core Documentation (coregames.com)

You'll need to understand and work with the Audio API, SmartAudio API and SmartObject API. These three API's will allow you to tap into and work with both Normal Properties and Smart Properties of Audio Assets. The API Documentation also provides Example Lua Code.

2 Likes