Announcement

Collapse
No announcement yet.

New Audio Engine: Early Access Quick-Start Guide

Collapse
This is a sticky topic.
X
X
  • Filter
  • Time
  • Show
Clear All
new posts

    New Audio Engine: Early Access Quick-Start Guide

    4.17 New Audio Engine: Early Access Quick-Start Guide

    This is a quick-start guide demonstrating tips and starting procedures for getting started with the new Audio Engine Features!

    Important: The New Audio Engine is currently in an experimental/early access state. As such, it has not yet been thoroughly tested. With that in mind, we encourage you to explore the new features with an open mind as we both develop and refine our integrations and implementations. We’re eager to hear what you can create with these new features and welcome constructive feedback or information on any bugs you might encounter.

    Getting Started/Initial Configurations

    Setting Up Windows via the WindowsEngine.ini file:

    1. In your engine folder, you will want to edit the WindowsEngine.ini file located here:
      \Engine\Config\Windows\WindowsEngine.ini
      Or your project folder, here:
      \Config\Windows\WindowsEngine.ini
      (If you don’t have one, you can create one)

    2. Enter the following:
      Code:
      [Audio]
      AudioDeviceModuleName=AudioMixerXAudio2


    Setting Up Mac via the MacEngine.ini file:

    1. In your engine folder, you will want to edit the MacEngine.ini file located here:
      \Engine\Config\Mac\MacEngine.ini
      Or your project folder, here:
      \Config\Mac\MacEngine.ini
      (If you don’t have one, you can create one)
    2. Enter the following:
      Code:
      [Audio]
      AudioDeviceModuleName=AudioMixerAudioUnit


    Setting Up iOS via the IOSEngine.ini file:

    1. In your engine folder, you will want to edit the IOSEngine.ini file located here:
      \Engine\Config\IOS\IOSEngine.ini
      Or your project folder, here:
      \Config\IOS\IOSEngine.ini
      (If you don’t have one, you can create one)
    2. Enter the following:
      Code:
      [Audio]
      AudioDeviceModuleName=AudioMixerAudioUnit


    Setting Up Android via the AndroidEngine.ini file:

    1. In your engine folder, you will want to edit the AndroidEngine.ini file located here:
      \Engine\Config\Android\AndroidEngine.ini
      Or your project folder, here:
      \Config\Android\AndroidEngine.ini
      (If you don’t have one, you can create one)
    2. Enter the following:
      Code:
      [Audio]
      AudioDeviceModuleName=AudioMixerAndroid


    Launching the Editor with the New Audio Engine on via Command Line:

    1. Open the project using command line flag: -audiomixer


    Setting up your Editor for audio work:


    1. Allowing Background Audio – This will ensure that you can still hear your project when your Editor loses focus:
      1. Open the Editor Preferences Window via Edit > Editor Preferences
      2. Under Level Editor > Miscellaneous > Sound, set the following:
        1. Allow Background Audio to ON
        2. Optional: Enable Editor Sounds to OFF (I do this so I don’t hear the play stop PIE woosh sounds)




    1. Avoiding low frame rate while editor is out of focus – this will ensure that your audio logic is still processing when the editor loses focus:
      1. Open the Editor Preferences Window via Edit > Editor Preferences
      2. Under General > Performance, set the following:
        1. Use Less CPU when in Background to OFF





    Activating new feature plugins:

    Many of our cool new features are put into plugins as part of a more modular directive we’re taking. One of the cool features of the new Audio Engine is its extensibility and we’re really excited by what this means for 3rd Party Plugin Developers as well as more diverse or project level implementations for audio systems for users and internally. With that in mind, we’ve placed some of the cool new features (like our Synthesizers) into plugins to be activated as needed on a project-by-project basis.

    1. Activate the Sound Utilities Plugin:
      1. Open the Plugins Window via Edit > Plugins
      2. Under Audio locate the Sound Utilities plugin, set the following:
        1. Enabled to ON

      3. If this is the only plugin you’re enabling, Restart when prompted


    2. Activate the Synthesis Plugin:
      1. Open the Plugins Window via Edit > Plugins
      2. Under Audio locate the Synthesis plugin, set the following:
        1. Enabled to ON

      3. If this is the only plugin you’re enabling, Restart when prompted

    Attached Files
    Last edited by dan.reynolds; 08-14-2017, 03:18 PM.
    Dan Reynolds
    Technical Sound Designer || Unreal Audio Engine Dev Team

    #2
    Getting Started with the Modular Subtractive Synthesizer

    As a showcase of the traditional synthesis and DSP library that Aaron has developed, he created a Modular Subtractive Synthesizer.

    Subtractive Synthesis is a type of synthesis where you start with a harmonically rich sound source (usually an oscillator or noise generator) and then carve away (like a sculpter) with filters and amplifier modulation.

    In the Modular Synthesizer Aaron has designed, there are two oscillators/noise generators which sum into a filter and then an amplifier stage (then into an effects stage including a stereo delay and a chorus effect). A polyphonic voice manager allows multiple voices (effectively multiplying the two oscillators) to allow simultaneous voices at different pitches. There are modulators such as LFOs and a modulation envelope which allow you to shape the tone of your sound. As such, the synth provides a powerful showcase of the new and growing DSP library in the new Audio Engine and a wonderful example of how the more adventurous audio programmers out there might design their own Unreal Engine based synthesizer.

    For practical purposes, this is designed as a component which can be added to an Actor and derives from the SoundBase object to allow all the game functional parameters we enjoy with SoundWave and SoundCue objects (such as spatialization and attenuation, sound classification, and our new effects processing section).


    Adding a Modular Synth to an Actor

    The Modular Synthesizer is a component which can be added to an existing actor or a custom Blueprint Actor.
    The fastest way to get started is to do the following:
    1. Type “Modular Synth” in the Add Componet Dropdown menu search prompt to locate the Modular Synth component.
    2. While selected, in the Details panel, edit your Sound Base properties as needed.




    Dynamically Setting Modular Synth Values in Blueprints

    Subtractive Synthesizers are parametrically complex—but this complexity allows for an incredible diversity in modulation and sound shaping. You can drive changes to the synth properties via Blueprints as dozens of Set Functions have been implemented to safely pass values to the synthesizer. You can locate them in the Blueprint Function category Synth > Components > Audio





    Playing the Modular Synth in Blueprints

    The Modular Synth was created with an nod toward traditional design and as such utilizes familiar MIDI-like Note On and Note Off functions.

    1. Once you’ve initialized your synth with the preset values you want, you can activate the synth with the Note On function.
      1. Target your modular synth component
      2. Note is the MIDI note value expressed as a float value for inbetweens
      3. Velocity is an implementation of a MIDI style volume scalar expressed as an integer from 0 to 127 (max)
      4. Duration is an optional value. When less than 0, it will sustain indefinitely (or until another function stops it), when greater than 0, the note will play for that many seconds.


    2. If you wish to use a Note Off event to dynamically control the timing of the note off, you may do so.
      1. Target your modular synth component
      2. Note is the MIDI note value you wish to turn off—this must be IDENTICAL to the note you turned on for the voice manager to correctly identify which note to turn off.
      3. All Notes Off will turn all notes off regardless of which note was specified
      4. Kill All Notes is like a MIDI Panic button, where it kills all voices rather than letting them release as normal.




    Managing Modular Synth Presets in Blueprints

    Managing individual parameters on a synth can be a bit finicky, so for establishing initial settings or for allowing a more streamlined approach to editing the synthesizer sounds, there is a Modular Synth Preset data structure encapsulating all of the relevant set data.
    As a data structure, you can set all of your relevant synth parameters in a single Set Synth Preset function (and a single data struct input node).
    From here you can Make or Break ModularSynthPreset data structures. You can create Blueprint variables, serialize them as a public variable, or procedurally set values in one go. It also allows you to store and pass these values in a single data type.





    Creating a Modular Synth Preset Bank

    Early on, it seemed apparent that storing and recalling Modular Synth Presets would be valuable, so Aaron designed a Modular Synth Preset Bank Asset Type that can be created in the content browser.

    1. Right-click in the Content Browser and locate the Sounds submenu, then click on the Modular Synth Preset Bank
    2. Give your newly created Modular Synth Preset Bank a name
    3. Double-click on the new Modular Synth Preset Bank asset.
    4. Add a Preset Entry Element
    5. Give your preset a name by filling in the Preset Name text field
    6. Edit your preset by expanding the > Preset data member and editing the values directly



    A Modular Synth Preset Bank can have multiple presets and because each preset is accompanied by a name value, you can access Bank elements by index (like any other array) or by name comparison (via for loop).


    Using a Modular Synth Preset Bank in Blueprints

    Modular Synth Preset Banks are Assets that are essentially an array of Modular Synth Preset Bank Entries.

    In order to access your asset from your content browser in your game, you will first need to establish a reference to your asset. The easiest way to do this is to create a Blueprint Variable that is a Modular Synth Preset Bank Reference and then access its data members via Blueprint functions.

    1. Add a Blueprint Variable of the type: Modular Synth Preset Bank Reference
    2. Compile your Blueprint to expose default values
    3. Add your Modular Synth Preset Bank as the Default Value (this can also be set in Blueprint Code)
    4. Add a reference to your new variable to your Blueprint
    5. Drag a node from the variable and Get Presets
    6. Drag a node from the Presets output array and Get (A Ref)
    7. Enter the index number for your desired Preset Entry
    8. Drag a node from the Get function into a Break ModularSynthPresetBankEntry
    9. Here you can grab the Preset data structure or you can compare names






    At this stage, you can pass the Preset output into a Set Synth Preset function or you can pass it to another Blueprint for use in another part of your game, or you can break the structure out and query specific preset values.


    Advanced Modular Patch Assignments - ADVANCED USERS ONLY -

    One of the more advanced setting values is the Modular Patch system which allows you to set up arbitrary pairings between Modulation Sources and Modulation Destinations. Patches are a data structure, so they can be procedurally generated, you can make and break them in Blueprints, store them, pass them, etc.

    Dan Reynolds
    Technical Sound Designer || Unreal Audio Engine Dev Team

    Comment


      #3
      Getting Started with Granular Synthesis

      A Granular Synthesizer is a special type of synth that allows for the creative playback of wavetable (or in our case a SoundWave file). It does this by playing (usually) small pieces of the file (called grains) and in many ways is analogous to an audio particle effect. Just like a visual particle effect, you can play grains forward, backward, control pitch, duration, shape, etc. Each grain can have its own settings, so in this way, it’s possible to play back dozens or even hundreds of audio grains from a single file all with different parameters.


      Adding a Granular Synth to an Actor

      The Granular Synth is a Component which can be added to an existing Actor or a custom Blueprint Actor.

      The fastest way to get started is to do the following:
      1. Type “Granular Synth” in the Add Componet Dropdown menu search prompt to locate the Granular Synth Component.

      2. While selected, in the Details panel, expand the Synth > Preset submenu to expose the default Sound Wave value (if you wish, give it a default Sound Wave)
        SoundWave references are now made using the Set SoundWave Blueprint Function
        .
      3. While selected, in the Details panel, edit your Sound Base properties as needed.




      Dynamically Setting Granular Synth Values in Blueprints

      The Granular Synth does not have as many parameters to control as the Subtractive Synth, but similarly, you can locate Set Functions in the Synth > Components > Audio blueprint categories—it is recommended to set an initial value for these functions before playing the synth.









      Playing the Granular Synth in Blueprints

      Similar to the Modular Subtractive Synth, the Granular Synth utilizes MIDI-like playback functions such as Note On and Note Off. Start and Stop are necessary for full stop and start of the Granular Synth playback functionality.

      Last edited by dan.reynolds; 09-22-2017, 06:31 PM.
      Dan Reynolds
      Technical Sound Designer || Unreal Audio Engine Dev Team

      Comment


        #4
        Getting Started with Source Effects

        Source Effects are processors that affect the audio at the sound source, pre-distance attenuation and pre-spatialization. (Think of them like a pre-fader insert) This means that if you add a Source Effect dynamics processor, its thresholds will be acting on the Unity levels of your Source Sound (which may be a SoundWave, a SoundCue, a Synth, etc.) instead of the levels after distance attenuation/spatialization.

        An Effect Chain is an array of Effects processors which are executed incrementally. So if you have a Source Effect Chain with 3 Source Effects in it, the processing will occur first at 0, then 1, then 2—essentially processing the source sound in an ordered chain. (Much like an insert chain on a channel strip).


        Create a Source Effect Preset Chain Asset

        A Source Effect Chain is an Asset, this empowers you to add the same Source Effect Chain to multiple sound sources in your project and to then edit, bypass, or modulate them all at once.

        1. Right-click in the Content Browser and locate the Sounds submenu
        2. Select the Source Effect Preset Chain
        3. Name your newly created Source Effect Preset Chain





        Create a Source Effect Preset Asset

        A Source Effect is a superclass for our Source based processors. Currently there are about a dozen and we’re eager to both create more ourselves and also hear what the community will create.

        1. Right-click in the Content Browser and locate the Sounds submenu
        2. Select the Source Effect Preset
        3. From the list of possible processors, select the one you desire

        4. Name your newly created Source Effect Preset
        5. Double-click on your Source Effect Preset to edit initial values

          (Each effect has different parameters)


        Preset values can be edited in run-time to allow you to audition effect chains during gameplay.


        Add a Source Effect Preset to a Source Effect Chain Preset

        As mentioned before, Source Effects are processed in order as listed by your chain, so take care in how you wish to process the audio.

        1. Double-click your Source Effect Preset Chain Asset
        2. Add an array element to your Chain
        3. Add your Source Effect Preset to the Preset data member in your Chain element



          * Play Effect Chain Tails allows the sound to continue playing out using an envelope follower, use responsibly.


        You can toggle Bypass on or off in runtime to allow auditioning Effect Chains during gameplay.


        Designating a Default Source Effect Chain on your Sound Source

        1. Access the Details of your SoundBase object
          1. On SoundWaves, this is done by double-clicking the asset in the browser and opening into the details panel
          2. On SoundCues, this is done by opening the SoundCue editor and not selecting any specific node
          3. On Components, this is done by selecting the component and accessing the details panel

        2. Locate and expand the Effects sub-menu
        3. Locate the Source Effect Chain entry
        4. Add your Source Effect Chain to that default entry





        Dynamically Bypassing Source Effects within a Source Effect Chain in Blueprints

        You can bypass source effects during gameplay, this can be useful for creating effects that only occur based on gameplay events (like radio/comm effects when the player is in another room or some distance away from a character).

        However, in order to access the specific Source Effect Preset Entry you will need to know the Entry Index number.

        1. Get a reference to your Source Effect Chain Preset
        2. Place a Set Bypass Source Effect Chain Entry function
        3. Connect your reference to the Preset Chain input, or select your Preset Chain from the drop down
        4. Indicate the desired Entry Index value
        5. Set the Bypassed boolean variable



        There are other useful functions for dynamically adding or removing entries to the chain.


        Dynamically Setting Source Effect Values in Blueprints

        You can modulate or drive Source Effect properties during gameplay. This can be a powerful way to create an intimate relationship between gameplay events and sound and music processing.

        In order to do this, you will need to get a reference to the Preset you wish to modulate.
        1. Get a reference to your Source Effect Preset (you will want to specify which specific type of Source Effect Preset Reference if creating a Blueprint Variable)
        2. Place a Set Settings function
        3. There will be an In Settings data struct pin
        4. Drag a pin off the In Settings pin and Make SourceEffect______________Settings where the blank would be filled in by your specific type of Source Effect Preset




        Setting Up an Envelope Follower Listener Delegate

        One of the more interesting Source Effects introduced is the Envelope Follower. An Envelope Follower allows the designer to analyze the amplitude data and create a dynamic, custom curve (envelope) of values that they can use to modulate some other parameter. However, in the case of UE4 through the power of Blueprints, this means you can have the amplitude data from a Source Sound drive the parameters of a game object!


        1. Create a new Source Effect Envelope Follower Preset



        2. Add your new Source Effect Preset to your Source Effect Chain of choice. (Keep in mind that you will want to add it in the order where you wish to analyze the amplitude data)

        3. Add your Source Effect Chain to the Sound Source you want to drive parameter data.



          Once you've set up the Envelope Follower, then you need to set up the Envelope Follower Listener.

        4. Add an Envelope Follower Listener Component to the Actor you want to use the envelope data.
        5. Then add a reference to your Source Effect Envelope Follower Preset.

        6. Place a Register Envelope Follower Listener Function to your Blueprint Graph
        7. Set your Target Input to the Envelope Follower Source Effect Reference
        8. Attach a reference to your Envelope Follower Listener Component to the Envelope Follower Listener Input Pin

          Once Registered (you'll note you can Un-Register dynamically with the Unregister function), you can add your delegate event:

        9. Add to your graph, an On Envelope Follower Update Event that is Assigned to your Envelope Follower Listener Component


        Attached Files
        Last edited by dan.reynolds; 05-05-2017, 02:12 PM.
        Dan Reynolds
        Technical Sound Designer || Unreal Audio Engine Dev Team

        Comment


          #5
          Getting Started with Submixes

          Submixes are analogous to Summing Busses or Auxiliary Busses. Submixes are multichannel surround busses that allow processing to occur after distance attenuation and spatialization. In the new Audio Engine, all sound is currently passed through a Master Submix which has an EQ and a Master Reverb Send/Return. This allows us to support the legacy approach of just having one EQ and one Reverb while at the same time allowing users the ability to expand their post-attenuation/post-spatialization processing chain.

          In the future we may make exceptions for hardware processed sounds or special hardware accelerated spatialization techniques—please be aware that the final architecture is still being worked out.

          The following cannot be over emphasized: Submixes are for post-attenuation/post-spatialization signal processing, it is recommended for performance sake to avoid overly elaborate Submix Graphs. Currently, Sound Classes (which utilize logical volume modification) is still how you want to manage volume—Submixes are for effects processing.


          Adding a Submix and Editing in the Submix Graph

          Similar to Sound Classes, Submixes are managed on a Graph. All Submixes ultimately pass into the Master Submix, whether they are connected or not on the graph.

          1. Right-click in the Content Browser
          2. Locate the Sounds submenu
          3. Select Sound Submix
          4. Name your newly created Sound Submix
          5. Double-click the Sound Submix
            1. The Submix Graph Editor will open displaying (if any) children Submixes or parent Submixes connected to this particular Sound Submix
            2. With a Sound Submix selected, you can see an array of children Submixes
            3. Also in the Details panel, you will see the Submix Effect Chain—similar to the Source Effect Chain
              1. Here you can add new entries for Sound Submix Effects




          Adding a Submix Effect Preset

          Similar to Source Effect Presets, we have Submix Effect Presets. The main differences being that Submix Effects are multichannel (7.1 surround) processors intended for post-attenuation/post-spatialization signal processing. Currently there are three available classic submix effects:

          • Dynamics Processor
            • Compressor
            • Limiter
            • Expander
            • Gate


          • Reverb
            • New algorithmic Plate Reverb (the same as the new Master Reverb)


          • Multiband EQ
            • Arbitrary array of EQ Bands (as many as you need--try not to go crazy)




          Adding a new Submix Effect Preset is easy:

          1. Right-click in the Content Browser and locate the Sounds submenu
          2. Select Submix Effect Preset
          3. From the subsequent menu, select the sub-class of Submix Effect (dynamics, reverb, eq)

          4. Name your newly created Submix Effect Preset
          5. Double-click on your Submix Effect Preset
          6. Edit the desired values (these can be edited during gameplay for effective auditioning of values)



          Adding and Removing a Master Dynamics Processor to the Master Submix in Blueprints

          With the implementation of a Master Submix, it was only practical to include a way to add dynamics to your master output. By default there is already a Master Reverb (separate Send/Return system) and Master (4-band) EQ—as a way to keep backward compatibility for people transitioning to the new engine—but you can add additional Master Submix Effects via Blueprints.

          To add an additional Submix Effect to the Master Submix:

          1. In your execution path, place an Add Master Submix Effect function
          2. Select your desired Submix Effect Preset and add it to the Submix Effect Preset value (or use a pin reference)


          To remove a Submix Effect from the Master Submix:

          1. In your execution path, place a Remove Master Submix Effect function
          2. Select your desired Submix Effect Preset and add it to the Submix Effect Preset value (or use a pin reference)


          To remove ALL Master Submix Effects:

          1. In your execution path, place a Clear Master Submix Effects function




          Setting up a Submix Destination on your Sound Source

          Unless otherwise set or specified, all Sound Sources output to the Master Submix (not visible on graph) by default. However, it will sometimes be desirable to have your sound source output into a different Submix.

          1. Access the details panel for your sound source
          2. Locate the Effects submenu
          3. Locate the entry called Sound Submix
            1. If this says “None,” then the sound defaults output to the Master Submix
            2. Here you can enter an alternate Submix
            3. Note the separate Default Master Reverb Send amount if you wish to simply send the source to the Master Reverb




          Setting up a Submix Send on your Sound Source

          One of the powerful aspects to having a Submix graph is being able to send portions of your source sound to multiple busses for further post-attenuation/post-spatialization processing. Currently, the most practical use for this is a second or third reverb effect so you can have two simultaneous reverbs (or parallel reverbs depending on the source sound)—but obviously, the Submix could include any Submix chain—for example an EQ then a Reverb so that you can control the spectral content of your sound before reverb processing without affecting the direct sound.

          1. Access the details panel for your sound source
          2. Locate the Effects submenu
          3. Locate the entry called Sound Submix Sends
          4. Add an Array Element
          5. Set the Sound Submix data member in that array to your desired Sound Submix
          6. Set the desired send amount





          Dynamically Managing Submix Send Values in Blueprints

          You can dynamically set the Submix Send Values on your Sound Source via Blueprints. This allows you to establish Sound Submix Sends in advance and then via gameplay values, drive the send amount.

          1. Get a reference to your sound source
            1. For non-synths, you will need to get a subsequent Audio Component reference

          2. Place a Set Submix Send function
          3. Connect your reference to the Target input
          4. Locate the desired Submix you wish to alter send amount for and enter it via dropdown or via pin reference in the Submix input
          5. Enter the desired send level in the Send Level input

          Attached Files
          Last edited by dan.reynolds; 05-04-2017, 09:33 PM.
          Dan Reynolds
          Technical Sound Designer || Unreal Audio Engine Dev Team

          Comment


            #6
            Nice job Dan!
            Last edited by Minus_Kelvin; 05-04-2017, 08:31 PM.

            Comment


              #7
              Amazing writeup, great to see such a nice thorough guide on the new features. Looking forward to try these out.
              ARTSTATION: https://www.artstation.com/artist/noisestorm

              Comment


                #8
                Looking very informative Dan, quick question though. Is there any videos showing these setups in action ?

                Will be diging into the setups once I get the chance to see for myself, many thanks for your time and effort !
                VR/AR Development [Portfolio | YouTube | LinkedIn]

                Comment


                  #9
                  Originally posted by Shin_ji View Post
                  Is there any videos showing these setups in action ?
                  I did this today, it has several presets(in-game buttons for changing presets coming soon). The blueprint is very rough/elaborate and sorely needs more elegant solutions: https://youtu.be/aumCMQFEFoQ



                  PS Nice guide! Appreciate it. Many many thanks!
                  Last edited by ArthurBarthur; 05-05-2017, 11:32 AM.

                  Comment


                    #10
                    Originally posted by kjekkbart View Post
                    I did this today, it has several presets(in-game buttons for changing presets coming soon). The blueprint is very rough/elaborate and sorely needs more elegant solutions: https://youtu.be/aumCMQFEFoQ



                    PS Nice guide! Appreciate it. Many many thanks!
                    This is awesome... I love the idea of physical systems creating music. In this case a literal physical keyboard being played by rotating physics objects. Very interesting.
                    https://twitter.com/minuskelvin/stat...41018956902400

                    Comment


                      #11
                      Hey folks, I just edited the Sound Source Effect post with steps on how to set up an Envelope Follower Listener.

                      https://forums.unrealengine.com/show...l=1#post704435
                      Dan Reynolds
                      Technical Sound Designer || Unreal Audio Engine Dev Team

                      Comment


                        #12
                        For macOS different setup . Ive added to MacEngine.ini (Engine or Project ../Config/Mac/):

                        [Audio]
                        AudioDeviceModuleName=AudioMixerCoreAudio

                        And im not sure about :
                        1. Open the project using command line flag: -audiomixer
                        It need or not? Bcoz audio engine works well w/o dat flag

                        Comment


                          #13
                          Now this is an intro documentation
                          | Finite State Machine | Auto-Save Plugin | USQLite Plugin | Object-Pool Plugin | Sound-Occlusion Plugin | Anti-Cheat Plugin |

                          Comment


                            #14
                            Originally posted by PirateTony View Post
                            For macOS different setup . Ive added to MacEngine.ini (Engine or Project ../Config/Mac/):

                            [Audio]
                            AudioDeviceModuleName=AudioMixerCoreAudio

                            And im not sure about :
                            It need or not? Bcoz audio engine works well w/o dat flag
                            If you've already edited the ini file, you don't need the flag--but the flag offers people an easy way to A/B the difference between the new and old Audio Engines on existing projects.

                            As far as CoreAudio, keep us posted on how it goes! We haven't had a chance to really test out mac!
                            Dan Reynolds
                            Technical Sound Designer || Unreal Audio Engine Dev Team

                            Comment


                              #15
                              Originally posted by BrUnO XaVIeR View Post
                              Now this is an intro documentation
                              Woot!
                              Attached Files
                              Dan Reynolds
                              Technical Sound Designer || Unreal Audio Engine Dev Team

                              Comment

                              Working...
                              X