{"id":1188,"date":"2017-05-16T13:35:20","date_gmt":"2017-05-16T04:35:20","guid":{"rendered":"http:\/\/blog.criware.com\/?p=1188"},"modified":"2017-05-16T13:35:20","modified_gmt":"2017-05-16T04:35:20","slug":"game-audio-mixing-with-atomcraft","status":"publish","type":"post","link":"https:\/\/blog.criware.com\/index.php\/2017\/05\/16\/game-audio-mixing-with-atomcraft\/","title":{"rendered":"Game Audio Mixing With AtomCraft"},"content":{"rendered":"<p><em>This post explains the <\/em>mixing process in <em>AtomCraft.<\/em><\/p>\n<p>&nbsp;<\/p>\n<p><strong>Introduction<\/strong><\/p>\n<p>Mixing a game can be very challenging. Like for other types of media, the final mix only comes together at the end of the production, when all the elements have been implemented. However, the interactive nature of the medium, the different constraints, the large amount of different audio assets and the very tight deadlines all contribute to making it an even more difficult task.<\/p>\n<p>In this blog, we will explain how to leverage the different AtomCraft\u2019s mixing features to create a lively mix for your game.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>The mixing architecture in AtomCraft<\/strong><\/p>\n<p>Before starting the audio mixing process it is important to understand the mixer architecture and the audio signal path in AtomCraft.<\/p>\n<p>AtomCraft\u2019s signal path is depicted below:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1250\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog-Picture_Mixing_Diagram_Volume_V2.0.png\" alt=\"Blog Picture_Mixing_Diagram_Volume_V2.0\" width=\"785\" height=\"577\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog-Picture_Mixing_Diagram_Volume_V2.0.png 785w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog-Picture_Mixing_Diagram_Volume_V2.0-300x221.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog-Picture_Mixing_Diagram_Volume_V2.0-768x565.png 768w\" sizes=\"auto, (max-width: 785px) 100vw, 785px\" \/><\/p>\n<p><strong>\u00a0<\/strong><\/p>\n<p><strong>The Encoded Volume<\/strong><\/p>\n<p>The Encoded Volume is the volume set at the time of encoding. We can view it like the \u201cTrim gain\u201d on an audio console and it affects directly the entire audio path. Changing this volume will affect all Cues that are using this audio file. It is an easy way to quickly change the volume of an audio file for the entire project.<\/p>\n<p>To access this volume: go to the Materials section, click on a wave file and set the Encoded Volume.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1191 \" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_001.png\" alt=\"Blog_Mixer_001\" width=\"703\" height=\"233\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_001.png 938w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_001-300x99.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_001-768x255.png 768w\" sizes=\"auto, (max-width: 703px) 100vw, 703px\" \/><\/p>\n<p><strong>Clip Volume<\/strong><\/p>\n<p>Each clip on the Timeline has its own volume. To access this volume: Go to the Timeline section, click on an audio clip (waveform), select the FX1 tab and set the Volume.<\/p>\n<p><strong>\u00a0<img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1193 \" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_003.png\" alt=\"Blog_Mixer_003\" width=\"541\" height=\"393\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_003.png 864w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_003-300x218.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_003-768x558.png 768w\" sizes=\"auto, (max-width: 541px) 100vw, 541px\" \/><\/strong><\/p>\n<p><strong>Envelope Settings<\/strong><\/p>\n<p>Each clip on the Timeline also has its own 4-segment (ADSR) amplitude envelope. To access these parameters: Go to the Timeline section, click on an audio clip (waveform), select the FX2 tab and set the parameters. It is a convenient way to create a fade-in \/ fade-out for any waveform in your project.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1194 \" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_004.png\" alt=\"Blog_Mixer_004\" width=\"551\" height=\"426\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_004.png 856w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_004-300x232.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_004-768x594.png 768w\" sizes=\"auto, (max-width: 551px) 100vw, 551px\" \/><\/p>\n<p><strong>Volume Automation<\/strong><\/p>\n<p>Like your favorite Digital Audio Workstation, AtomCraft offers dedicated automation curves on each track. Timeline automation is the modification of the value of a sound parameter against time using a curve. For instance, this feature can be used to precisely adjust the volume of a voice over at any given time, without altering the original source file.<\/p>\n<p>To add the Volume Automation, the first thing to do is to select the right Track. Once it is selected, click on the automation selector (displaying \u201cNo Automation\u201d), then select add and choose Volume.<\/p>\n<p><strong>\u00a0<img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1195\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_005.png\" alt=\"Blog_Mixer_005\" width=\"552\" height=\"280\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_005.png 654w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_005-300x152.png 300w\" sizes=\"auto, (max-width: 552px) 100vw, 552px\" \/><\/strong><\/p>\n<p><strong>Action Trigger<\/strong><\/p>\n<p>In AtomCraft, an &#8220;Action\u201d allows the sound designer to mute or change the volume of a target Cue directly from the Timeline.<\/p>\n<p>To access this feature: go to the Timeline section, create an ActionTrack and insert a Mute or a Parameter Action. All the parameters will be on the Properties window on the right.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1196\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_006.png\" alt=\"Blog_Mixer_006\" width=\"634\" height=\"286\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_006.png 914w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_006-300x135.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_006-768x346.png 768w\" sizes=\"auto, (max-width: 634px) 100vw, 634px\" \/><\/p>\n<p>Do not forget to specify which Cue is going to be targeted. Simply drag &amp; drop the target Cue on the Action Track.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1197\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_007.png\" alt=\"Blog_Mixer_007\" width=\"640\" height=\"119\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_007.png 678w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_007-300x56.png 300w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/p>\n<p><strong>Track Volume<\/strong><\/p>\n<p>Each Track of a Cue also has its own volume. To access this volume, simply select the desired Cue and adjust the volume.<\/p>\n<p><strong>\u00a0<img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1198\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_008.png\" alt=\"Blog_Mixer_008\" width=\"254\" height=\"239\" \/><\/strong><\/p>\n<p><strong>Cue Volume<\/strong><\/p>\n<p>Each Cue has its own master volume. To access this volume, select the desired Cue and adjust the volume of the top-most track.<\/p>\n<p><strong>\u00a0<img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1199\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_009.png\" alt=\"Blog_Mixer_009\" width=\"258\" height=\"292\" \/><\/strong><\/p>\n<p><strong>CueSheet Volume<\/strong><\/p>\n<p>A CueSheet is a sound bank composed of multiple Cues. In AtomCraft, each CueSheet has its own master volume. It means it is possible to change the volume of all the Cues in a sound bank at once.<\/p>\n<p>To access this volume: go to the WorkUnit section, click on a CueSheet and set the Volume.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1192 \" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_002.png\" alt=\"Blog_Mixer_002\" width=\"809\" height=\"140\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_002.png 884w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_002-300x52.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_002-768x133.png 768w\" sizes=\"auto, (max-width: 809px) 100vw, 809px\" \/><\/p>\n<p><strong>Category Volume<\/strong><\/p>\n<p>Assigning Cues to Categories allows them to share certain volume and instance limiting properties.\u00a0 It is a very efficient ways to regroup certain type of Cues in \u201cSubMixes\u201d (EG: VO, Music, etc.). It also helps streamlining your mixing workflow.<\/p>\n<p>To access this volume, first, create a Category Group and then a Category in the global settings section of the project. To assign Cues to that Category, you can drag them from the project tree onto the Category.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1200\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_010.png\" alt=\"Blog_Mixer_010\" width=\"471\" height=\"223\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_010.png 592w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_010-300x142.png 300w\" sizes=\"auto, (max-width: 471px) 100vw, 471px\" \/><\/p>\n<p><strong>3D Attenuation.<\/strong><\/p>\n<p>In a 3D game, many cues are 3D, which means they are affected by the distance volume attenuation at run-time. It is an important aspect of the mixing of a 3D game. In AtomCraft, the distance attenuation can be controlled by an AISAC and by the Min\/Max Attenuation Distance parameters of the Cue.<\/p>\n<p>Because many Cues could use the same distance attenuation in the project, Global AISACs are usually more appropriate.<\/p>\n<p>To access the Global AISACs, go to the Global Settings of the Project Tree and select the GlobalAISACs folder. If you have not created your distance attenuation AISAC yet, you will have to create a new one. Simply right-click on the folder, select New Object and then click on Add AISAC.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1201 size-large\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_011-1024x264.png\" alt=\"Blog_Mixer_011\" width=\"800\" height=\"206\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_011-1024x264.png 1024w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_011-300x77.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_011-768x198.png 768w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_011.png 1402w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/p>\n<p>In the example above, the yellow curve will adjust the volume of the assigned Cues depending of the distance between the listener and the sound emitter.<\/p>\n<p>Finally, the Attenuation Distance Min\/Max parameters can be set in the 3D Positioning window of the FX2 tab.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1202\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_012.png\" alt=\"Blog_Mixer_012\" width=\"800\" height=\"278\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_012.png 947w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_012-300x104.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_012-768x267.png 768w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/p>\n<p><strong>Bus Send and Dsp Mixer Level.<\/strong><\/p>\n<p>We will be covering everything you need to know about this in the following section!<\/p>\n<p><strong>\u00a0<\/strong><\/p>\n<p><strong>Working with the DSP Bus Maps <\/strong><\/p>\n<p>Like in your favorite DAW, there is an audio mixer in AtomCraft. It is possible to send the audio signals of your sound Cues to the different channels of the mixer and to apply real-time DSP audio effects such as reverberation, EQ, compressor to the Cues played by the game.\u00a0 Let\u2019s see how it works.<\/p>\n<p><span style=\"text-decoration: underline;\"><strong>Step 1:<\/strong><\/span><\/p>\n<p>The first thing to do is to open the Bus Map section. Essentially, the Bus Map is used to manage the destinations of all your DSP buses. There are two types of Bus Maps in AtomCraft: the Cue configuration Bus Map, used by the Cues, and the AISAC\/Automation Bus Map.<\/p>\n<p>Go to the Global Settings in the Project Tree and double-click on the BusMap folder.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1203\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_013.png\" alt=\"Blog_Mixer_013\" width=\"351\" height=\"276\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_013.png 351w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_013-300x236.png 300w\" sizes=\"auto, (max-width: 351px) 100vw, 351px\" \/><\/p>\n<p><span style=\"text-decoration: underline;\"><strong>Step 2:<\/strong><\/span><\/p>\n<p>An initial bus mapping is automatically set up when you create a new project; however it is possible to create a new one if needed. Note that it is not possible to create multiple AISAC\/Automation Bus Maps. There can only be one per project.<\/p>\n<p>First, right-click on BusMapforCue and from the context menu Select \u201cNew Object\u201d and choose \u201cCreate BusMap\u201d.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1204\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_014.png\" alt=\"Blog_Mixer_014\" width=\"456\" height=\"256\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_014.png 502w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_014-300x169.png 300w\" sizes=\"auto, (max-width: 456px) 100vw, 456px\" \/><\/p>\n<p>You can now configure the Bus mapping in the middle pane.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1205\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_015.png\" alt=\"Blog_Mixer_015\" width=\"1047\" height=\"189\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_015.png 1632w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_015-300x54.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_015-768x139.png 768w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_015-1024x185.png 1024w\" sizes=\"auto, (max-width: 1047px) 100vw, 1047px\" \/><\/p>\n<p><span style=\"text-decoration: underline;\"><strong>Step 3:<\/strong><\/span><\/p>\n<p>Now things are getting interesting, let\u2019s open the Audio Mixer.<\/p>\n<p>To open the DSP Mixer, click on View and then choose Mixer (DSP Bus Setting) Window. The DSP Mixer will appear.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1206\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_016.png\" alt=\"Blog_Mixer_016\" width=\"342\" height=\"333\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_016.png 342w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_016-300x292.png 300w\" sizes=\"auto, (max-width: 342px) 100vw, 342px\" \/><\/p>\n<p>It is also possible to open the mixer from the DspBusSettings folder in the Global Settings pane. Simply open the folder and click on a DspBussSetting.<\/p>\n<p>If you want to create a new DspBusSetting (mixer): Right-click on the DspBusSetting folder, from the context menu select \u201cNew Object\u201d and then choose \u201cCreate DspBusSetting\u201d.<\/p>\n<p><span style=\"text-decoration: underline;\"><strong>Step 4:<\/strong><\/span><\/p>\n<p>It is now possible to configure the mixer and add DSP Effects.<\/p>\n<p>The first thing you may need to do is to add new Bus. To add new bus: right-click in the mixer and choose Add DSP Bus.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1209\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_019.png\" alt=\"Blog_Mixer_019\" width=\"578\" height=\"248\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_019.png 578w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_019-300x129.png 300w\" sizes=\"auto, (max-width: 578px) 100vw, 578px\" \/><\/p>\n<p>If you like, you can change the color of a channel by right-clicking on it and selecting Color Settings.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1210\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_020.png\" alt=\"Blog_Mixer_020\" width=\"579\" height=\"483\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_020.png 700w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_020-300x250.png 300w\" sizes=\"auto, (max-width: 579px) 100vw, 579px\" \/><\/p>\n<p>Now, to add an effect, click on the + icon. Different effects are available depending on the target platform. Simply select the platform you are working on and then the desired effect.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1211\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_021.png\" alt=\"Blog_Mixer_021\" width=\"513\" height=\"443\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_021.png 513w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_021-300x259.png 300w\" sizes=\"auto, (max-width: 513px) 100vw, 513px\" \/><\/p>\n<p>The next step is to assign the channel to the MasterOut in the sends section. Click on the + icon, select MasterOut and adjust the send Level. It is also possible to assign the send of a bus to another bus.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1212\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_022.png\" alt=\"Blog_Mixer_022\" width=\"522\" height=\"327\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_022.png 706w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_022-300x188.png 300w\" sizes=\"auto, (max-width: 522px) 100vw, 522px\" \/><\/p>\n<p>Now, to edit the DSP effect properties, click on it in the mixer and its settings will appear on the right.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1213 size-large\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_023-1024x671.png\" alt=\"Blog_Mixer_023\" width=\"800\" height=\"524\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_023-1024x671.png 1024w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_023-300x196.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_023-768x503.png 768w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_023.png 1252w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/p>\n<p>If you want to bypass or delete an effect, right click on it and use the corresponding commands in the context menu.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1214\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_024.png\" alt=\"Blog_Mixer_024\" width=\"271\" height=\"210\" \/><\/p>\n<p><span style=\"text-decoration: underline;\"><strong>Step 5:<\/strong><\/span><\/p>\n<p>It is now possible to assign a sound Cue to a Bus. Select the desired Cue and click on the FX1 Tab. Make sure to activate the send by clicking on it. Once it is done you will see a green light.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1215 \" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_025.png\" alt=\"Blog_Mixer_025\" width=\"265\" height=\"267\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_025.png 242w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_025-150x150.png 150w\" sizes=\"auto, (max-width: 265px) 100vw, 265px\" \/><\/p>\n<p>The last thing to do is to turn up the effect send level knob.<\/p>\n<p><span style=\"text-decoration: underline;\"><strong>Step 6:<\/strong><\/span><\/p>\n<p>Once we have assigned all our Cues to their respective Buses, we can use the mixer as a sub mixer or a DSP effects mixer using the faders.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1217\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_027.png\" alt=\"Blog_Mixer_027\" width=\"574\" height=\"594\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_027.png 768w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_027-290x300.png 290w\" sizes=\"auto, (max-width: 574px) 100vw, 574px\" \/><\/p>\n<p>For instance, a Voiceover Cue could be assigned to Bus2, which has a compressor inserted, but also to Bus1, which is the reverb effect track. The \u201cwet and dry\u201d mix will be made between those 2 tracks in the mixer.<\/p>\n<p><strong><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1218\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_028.png\" alt=\"Blog_Mixer_028\" width=\"289\" height=\"729\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_028.png 289w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_028-119x300.png 119w\" sizes=\"auto, (max-width: 289px) 100vw, 289px\" \/><br \/>\n<\/strong><\/p>\n<p><span style=\"text-decoration: underline;\"><strong>Step 7:<\/strong><\/span><\/p>\n<p>In AtomCraft, it is possible to create Mix Snapshots. A Snapshot is basically a \u201cpicture\u201d of your DSP mixer settings that can be recalled by the programmer at any time during the game. Snapshots will share the DSP Mixer architecture of their parent DSP Bus Settings but can have their own values for the levels and the effect parameters. Snapshots can also have some of the effects bypassed and the interpolation between Snapshots can be achieved in the game logic by the audio programmer.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-1232 aligncenter\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog-Picture_Mixing_Diagram_Snapshot.png\" alt=\"Blog Picture_Mixing_Diagram_Snapshot\" width=\"465\" height=\"240\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog-Picture_Mixing_Diagram_Snapshot.png 606w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog-Picture_Mixing_Diagram_Snapshot-300x155.png 300w\" sizes=\"auto, (max-width: 465px) 100vw, 465px\" \/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1237\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Tab.png\" alt=\"Tab\" width=\"889\" height=\"151\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Tab.png 1007w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Tab-300x51.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Tab-768x130.png 768w\" sizes=\"auto, (max-width: 889px) 100vw, 889px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p><strong>To create a Snapshot:<\/strong><\/p>\n<p>Go to the Global Settings in the Project Tree, open the DspBusSettings folder, select a DspBusSetting, open its context menu, select New Object and then click on Create Snapshot.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1219\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_029.png\" alt=\"Blog_Mixer_029\" width=\"499\" height=\"314\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_029.png 499w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_029-300x189.png 300w\" sizes=\"auto, (max-width: 499px) 100vw, 499px\" \/><\/p>\n<p>If you need to edit a Snapshot later, select it and edit it like you would do for a normal DSPBusSetting.\u00a0 However, keep in mind that any change to the DSP Mixer architecture itself, like adding or removing an effect or a bus, will be reflected on all the Snapshots. <strong><br \/>\n<\/strong><\/p>\n<p><strong>\u00a0<\/strong><\/p>\n<p><strong>Ducking with REACT<\/strong><\/p>\n<p>Another important mixing feature is REACT. It is AtomCraft\u2019s automatic ducking system.<\/p>\n<p>Lowering the volume of a sound when another one is playing at the same time is called \u201cducking\u201d. A ducking system is a very important tool in the game audio mixing process. It allows the game audio engine to control and prioritize what type of sound will clearly be heard by the player when the game action culminates. To accomplish this task, REACT controls at run-time the audio volume of Cues belonging to specified Categories.<\/p>\n<p>A common usage of ducking is when a game is gently lowering the volume of the music when dialogue is being played. It allows for more headroom for the voice in the mix and ensures it will clearly be heard by the player.<\/p>\n<p>If you want to learn more about how to use REACT we recommend you to watch this <a href=\"https:\/\/www.youtube.com\/watch?v=lYHyhGW0-w4\">video tutorial<\/a> which explains in details how it works.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>Sidechaining in the DSP Bus Mixer<\/strong><\/p>\n<p>Another approach for ducking in AtomCraft is Sidechaining. It is an easy way to automatically lower the volume of the sounds based on their assignation to different DSP Buses in your project. For instance we could lower the volume of all the music Cues each time a VO assigned to the VO Bus is playing.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1221\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_031.png\" alt=\"Blog_Mixer_031\" width=\"504\" height=\"515\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_031.png 810w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_031-294x300.png 294w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_031-768x784.png 768w\" sizes=\"auto, (max-width: 504px) 100vw, 504px\" \/><\/p>\n<p><span style=\"text-decoration: underline;\"><strong>Step 1:<\/strong><\/span><\/p>\n<p>The first thing to do is to insert an Amplitude Analyzer on the Triggering Bus.<\/p>\n<p>The Amplitude Analyzer will be used as the side chain input of the compressor.\u00a0 The input signal of the amplitude analyzer is either the input of the bus send, if it is at the top of the effect chain, or the output of the effect placed immediately before it in the effect chain. For instance, we could use a band pass filter before the amplitude analyzer to make the compressor react to the loudness in a certain frequency range.<\/p>\n<p><span style=\"text-decoration: underline;\"><strong>Step 2:<\/strong><\/span><\/p>\n<p>Simply insert the Compressor on the Ducking Track, select the right Bus in the SideChainInput section of the Compressor and adjust the Compressor parameters. In the example below, the Compressor will \u201clisten\u201d to the VO Bus and reduce the music Bus volume each time a VO is going play.<\/p>\n<p><strong><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1222\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_032.png\" alt=\"Blog_Mixer_032\" width=\"669\" height=\"372\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_032.png 784w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_032-300x167.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_032-768x427.png 768w\" sizes=\"auto, (max-width: 669px) 100vw, 669px\" \/>\u00a0<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p><strong>Real time mixing with the game<\/strong><\/p>\n<p>It is possible to connect AtomCraft to a running build of the game in order to mix the game in real-time. It is very helpful because you can hear the result right away.<\/p>\n<p><span style=\"text-decoration: underline;\"><strong>Step 1: <\/strong><\/span><\/p>\n<p>First, we need to make sure that there is enough memory in the ACF and ACB files, in case we need to change parameters or add\/change audio files.<\/p>\n<p>Click on the Global Settings in the Project Tree and adjust the ACF Size Limit.\u00a0 For instance we could add 2 KB to the ACF limit size to provide space for potential changes to AISACs, Categories and so on.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1226\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_036.png\" alt=\"Blog_Mixer_036\" width=\"1102\" height=\"250\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_036.png 1102w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_036-300x68.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_036-768x174.png 768w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_036-1024x232.png 1024w\" sizes=\"auto, (max-width: 1102px) 100vw, 1102px\" \/><\/p>\n<p><span style=\"text-decoration: underline;\"><strong>Step 2: <\/strong><\/span><\/p>\n<p>Now let\u2019s adjust the memory size of our CueSheets. Go to the Work Units pane and click on the CueSheetFolder. Here we can set the maximum size for our CueSheets. For instance we could add about 500 KB to each one. It is a lot more than for the ACF because in addition to the parameters, it is also possible to add or change audio Materials.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1227\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_037.png\" alt=\"Blog_Mixer_037\" width=\"1108\" height=\"202\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_037.png 1338w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_037-300x55.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_037-768x140.png 768w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_037-1024x187.png 1024w\" sizes=\"auto, (max-width: 1108px) 100vw, 1108px\" \/><\/p>\n<p><span style=\"text-decoration: underline;\"><strong>Step 3: <\/strong><\/span><\/p>\n<p>The next step consists in exporting the audio data with the In-Game Preview Binary to your project audio folder.<\/p>\n<p><strong><u><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1223\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_033.png\" alt=\"Blog_Mixer_033\" width=\"580\" height=\"376\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_033.png 690w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_033-300x194.png 300w\" sizes=\"auto, (max-width: 580px) 100vw, 580px\" \/><\/u><\/strong><\/p>\n<p><span style=\"text-decoration: underline;\"><strong>Step 4:<\/strong><\/span><\/p>\n<p>We are now ready to connect to the game.\u00a0 Start the game and connect it to the AtomCraft in-game previewer. To do so, select Preview in the menu bar and click on Start In-Game Preview.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1224\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_034.png\" alt=\"Blog_Mixer_034\" width=\"582\" height=\"334\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_034.png 714w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_034-300x172.png 300w\" sizes=\"auto, (max-width: 582px) 100vw, 582px\" \/><\/p>\n<p>The following window will appear when you are connected to the game.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1225\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_035.png\" alt=\"Blog_Mixer_035\" width=\"581\" height=\"376\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_035.png 553w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_035-300x194.png 300w\" sizes=\"auto, (max-width: 581px) 100vw, 581px\" \/><\/p>\n<p>From now, any parameter change made in AtomCraft will be reflected into the game. For instance, if we change the music volume, we will notice how the music level changes in real-time in the game.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>Using a control surface<\/strong><\/p>\n<p>AtomCraft allows the usage of an external MIDI control surface to adjust various parameters such as volume or pitch, to mute a Track or even to control an AISAC. It is a very effective way to streamline the mixing process, especially when combined with in-game mixing.<\/p>\n<p><span style=\"text-decoration: underline;\"><strong>Step 1:<\/strong><\/span><\/p>\n<p>First, we need to indicate the MIDI input device. In the Tool menu, select Properties. In the tree on the left, select the MIDI options and select the controller from the MIDI input device combo box.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1228\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_038.png\" alt=\"Blog_Mixer_038\" width=\"956\" height=\"200\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_038.png 956w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_038-300x63.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_038-768x161.png 768w\" sizes=\"auto, (max-width: 956px) 100vw, 956px\" \/><\/p>\n<p><span style=\"text-decoration: underline;\"><strong>Step 2:<\/strong><\/span><\/p>\n<p>The next step is to assign the MIDI controller numbers to the right parameters. Double click on the MIDI Icon at the top of the screen to access the MIDI Assignments window.<\/p>\n<p><strong><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1229\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_039.png\" alt=\"Blog_Mixer_039\" width=\"52\" height=\"37\" \/><br \/>\n<\/strong><\/p>\n<p><span style=\"text-decoration: underline;\"><strong>Step 3:<\/strong><\/span><\/p>\n<p>AtomCraft has a \u201cMIDI learn\u201d feature. It means that using your MIDI controller while the learning mode is active will automatically assign the detected control to the currently selected parameter.\u00a0 To activate this feature, simply check the \u201cLearn\u201d box.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1230\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_040.png\" alt=\"Blog_Mixer_040\" width=\"481\" height=\"289\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_040.png 568w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_040-300x180.png 300w\" sizes=\"auto, (max-width: 481px) 100vw, 481px\" \/><\/p>\n<p><span style=\"text-decoration: underline;\"><strong>Step 4:<\/strong><\/span><\/p>\n<p>It is now possible to control AtomCraft from the MIDI device! If we move the faders on the MIDI controller we can adjust the DSP Mixer faders in real-time.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1231 size-large\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_041-1024x476.png\" alt=\"Blog_Mixer_041\" width=\"800\" height=\"372\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_041-1024x476.png 1024w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_041-300x139.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_041-768x357.png 768w, https:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Blog_Mixer_041.png 1920w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/p>\n<p>It is also possible to adjust the volumes of the Tracks in the Cues or to mute them.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>Demo project<\/strong><\/p>\n<p>To listen and look at some examples of AtomCraft mixing features, we have created a small AtomCraft project that you can download below:<\/p>\n<p><a href=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Mixing.zip\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-1240 size-full\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2017\/05\/Logo_Zip.png\" alt=\"Logo_Zip\" width=\"134\" height=\"177\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>This concludes our post about the <em>mixing in AtomCraft<\/em><em>.<\/em> As always, let us know if you want to learn more about a specific ADX2 feature!<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This post explains the mixing process in AtomCraft. &nbsp; Introduction Mixing a game can be very challenging. Like for other<\/p>\n","protected":false},"author":2,"featured_media":1190,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"colormag_page_container_layout":"default_layout","colormag_page_sidebar_layout":"default_layout","footnotes":""},"categories":[5,7],"tags":[],"class_list":["post-1188","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-adx","category-tutorials"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/posts\/1188","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/comments?post=1188"}],"version-history":[{"count":16,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/posts\/1188\/revisions"}],"predecessor-version":[{"id":1252,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/posts\/1188\/revisions\/1252"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/media\/1190"}],"wp:attachment":[{"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/media?parent=1188"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/categories?post=1188"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/tags?post=1188"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}