Recent Updates
-
Updated on: Nov 07, 2023
Mixer
Manual SoundMaker Manual -
Updated on: Nov 07, 2023
Inspector
Manual SoundMaker Manual -
Updated on: Nov 07, 2023
Audio Settings
Manual SoundMaker Manual -
Updated on: Nov 07, 2023
Runtime Parameters
Manual SoundMaker Manual -
Updated on: Nov 07, 2023
Modulators
Manual SoundMaker Manual -
Updated on: Nov 07, 2023
Project Hierarchy
Manual SoundMaker Manual -
Updated on: Nov 06, 2023
Exporting an FPK
Manual SoundMaker Manual -
Updated on: Nov 03, 2023
Glossary
Manual SoundMaker Manual -
Updated on: Feb 22, 2023
AudioMixer Manager
Manual Fabric Manual -
Updated on: Feb 22, 2023
Examples API
using UnityEngine; using System.Collections; using System.Collections.Generic; public class ExamplesAPI : MonoBehaviour { public int eventID; // Use this for initialization void Start () {} // Update is called once per frame void Update () { // Example 1: Posting an event if(Input.GetKeyDown(KeyCode.Alpha1)) { ///////////////////////////////////////////////////////////// // This event by default will send the PlaySound EventAction. // The gameObject used is the one that has the FabricManager Fabric.EventManager.Instance.PostEvent("Simple"); } // Example 2: Posting an event with a gameObject else if(Input.GetKeyDown(KeyCode.Alpha2)) { ///////////////////////////////////////////////////////////// // This event by default will send the PlaySound EventAction. // The gameObject passed is used to track position and associated with an instance if max instances property is set Fabric.EventManager.Instance.PostEvent("Simple", gameObject); } // Example 3: Posting an event with a PlaySound action and a gameObject else if(Input.GetKeyDown(KeyCode.Alpha3)) { Fabric.EventManager.Instance.PostEvent("Simple", Fabric.EventAction.PlaySound, null, gameObject); } // Example 4: Posting a stop sound event action else if(Input.GetKeyDown(KeyCode.Alpha4)) { Fabric.EventManager.Instance.PostEvent("Simple", Fabric.EventAction.StopSound, null, gameObject); } // Example 5: Posting a timeline SetParameter value else if(Input.GetKeyDown(KeyCode.Alpha5)) { Fabric.EventManager.Instance.SetParameter("Timeline", "Parameter", 0.5f, gameObject); } // Example 6: Posting a SetDSPParameter value else if(Input.GetKeyDown(KeyCode.Alpha6)) { Fabric.EventManager.Instance.SetDSPParameter("Event", Fabric.DSPType.LowPass, "CutoffFrequency", 5000, 5, 0.5f, gameObject); } // Example 7: Adding dynamic mixer preset else if(Input.GetKeyDown(KeyCode.Alpha7)) { // The event name must be "DynamicMixer" Fabric.EventManager.Instance.PostEvent ( "DynamicMixer", Fabric.EventAction.AddPreset, "MuteAll", null ) ; Fabric.EventManager.Instance.PostEvent ( "DynamicMixer", Fabric.EventAction.AddPreset, "MuteAll", null ) ; } // Example 8: Removing dynamic mixer preset else if(Input.GetKeyDown(KeyCode.Alpha8)) { // The event name must be "DynamicMixer" Fabric.EventManager.Instance.PostEvent ( "DynamicMixer", Fabric.EventAction.RemovePreset, "MuteAll", null ) ; } // Example 9: Get component by name, setting volume, querying if component is playing and if not play it else if(Input.GetKeyDown(KeyCode.Alpha9)) { Fabric.Component component = Fabric.FabricManager.Instance.GetComponentByName("Audio_Fabric_SFX_Test"); if(component != null) { component.Volume = 0.5f; if(component.IsPlaying() == false) { component.Play(gameObject); } } } // Loading prefab that has Fabric components into the Fabric hiearchy with a target path else if(Input.GetKeyDown(KeyCode.A)) { Fabric.FabricManager.Instance.LoadAsset("NameOfPrefab","Audio_SFX"); } // Unloading component from the Fabric hiearchy else if(Input.GetKeyDown(KeyCode.B)) { Fabric.FabricManager.Instance.UnloadAsset("Audio_SFX"); } // Initialise default component parameters (ideal for setting parameters in animation systems) else if(Input.GetKeyDown(KeyCode.C)) { Fabric.InitialiseParameters parameters = new Fabric.InitialiseParameters(); parameters._pitch.Value = 2.0f; Fabric.EventManager.Instance.PostEvent("Simple",Fabric.EventAction.PlaySound, null, gameObject, parameters); } // Check if an event is playing else if (Input.GetKeyDown(KeyCode.D)) { if (Fabric.EventManager.Instance.IsEventActive("Simple", gameObject)) { Debug.Log("Event Simple is Active"); } else { Debug.Log("Event Simple is Inactive"); } } else if(Input.GetKeyDown(KeyCode.E)) { Fabric.Component[] components = Fabric.FabricManager.Instance.GetComponentsByName("Audio_Simple", gameObject); if(components != null && components.Length> 0) { components[0].Volume = 0.5f; if(components[0].IsPlaying() == true) { Debug.Log("Component is playing"); } } } if (Input.GetKeyDown(KeyCode.F)) { eventID = Fabric.EventManager.GetIDFromEventName("Simple"); Fabric.EventManager.Instance.PostEvent(eventID, gameObject); } } }
Manual Fabric Manual