Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Fabric v2.0 - Audio Toolset

Discussion in 'Assets and Asset Store' started by Tazman, Apr 5, 2012.

  1. Tazman

    Tazman

    Joined:
    Sep 27, 2011
    Posts:
    94
    The latest version of Fabric comes with new music features that allows the creation of interactive music driven by gameplay events.

    In this version it is possible to:
    • Define global Music Time settings that all components can be synced with (Beat/Bar)
    • Create custom transitions (on Beat/Bar/Exit Cue) between elements with the new Music Component.
    • Override music time settings anywhere in the hierarchy.
    • Define Exit Cue marker on audio components.
    • Sync game elements with music timing.

    Fabric Beat Machine demonstrates transitions on a Beat between different types of components.


    $Music Time Settings.png


    $Music Component.png


    $Music Component Override.png


    To request an evaluation copy email us at: sales@tazman-audio.co.uk
     
  2. bitbutter

    bitbutter

    Joined:
    Jul 19, 2012
    Posts:
    60
    Trying to figure out how to use the modular synth, getting the following error in the modular synth scene in fabric 2.1.8

    NullReferenceException: Object reference not set to an instance of an object
    Fabric.GraphViewer.DrawComponents ()
    Fabric.GraphViewer.OnGUI ()
    System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/monoAndRuntimeClassLibs/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:222)
     
  3. Tazman

    Tazman

    Joined:
    Sep 27, 2011
    Posts:
    94
    From the callstack you provided the error is inside the GraphView window which has nothing to do with the modular synth... trying to reproduce it in here but not luck ... which version of Unity are you using and have you made any changes to the scene?

    Cheers,
    Taz
     
  4. bitbutter

    bitbutter

    Joined:
    Jul 19, 2012
    Posts:
    60
    I can't reproduce the previous error either. Now when I reopen the scene (not edited), i get no sound when moving around, and if i open the modularsynth window i get the following error:

    NullReferenceException: Object reference not set to an instance of an object
    Fabric.ModularSynth.Editor.GUIModule..ctor (Fabric.ModularSynth.Module module, Fabric.ModularSynth.ModuleInfo info, Int32 id)
    Fabric.ModularSynth.Editor.ModularSynthViewer.UpdateGraph (Fabric.ModularSynth.DSPUnit dspUnit)
    Fabric.ModularSynth.Editor.ModularSynthViewer.UpdateWindow ()
    Fabric.ModularSynth.Editor.ModularSynthViewer.init ()

    All connections seem to have gone missing too. Here's a screenshot:
    http://i.imgur.com/7RCEHTf.png

    I'm using Unity 4.3.2f1.
     
  5. Tazman

    Tazman

    Joined:
    Sep 27, 2011
    Posts:
    94
    Thanks, I have managed to reproduce this issue in here as well... I will take a look at it and will have it fixed on the next update.

    For now can you try and create a new graph (Fabric/Extensions/Modular Synth/Graph) and set the Graph property in the Modular Synth Unity inspector to use the new empty one. This will allow you to add and link modules together from scratch.... you will need an Input and an output module in order to apply filters to incoming audio or just the output if you plan to generate the audio using the oscillator, sample player etc..
     
  6. sebas77

    sebas77

    Joined:
    Nov 4, 2011
    Posts:
    1,641
    can you please give me some advices about how to improve the performance as much as possible with Fabric? Some tricks ;)
     
  7. Tazman

    Tazman

    Joined:
    Sep 27, 2011
    Posts:
    94
    Which version of Fabric are you using and on which platforms?

    There are a number of things to consider when looking to improve Fabric's performance.

    • Check the depth and complexity of your hierarchy or the number of max instances used. All Fabric components have a CPU indicator in their inspector view (Node Info) so you can identify which nodes have a relative high CPU usage. Also its worth looking at Unity's profiler to check Fabric's update method as well as the audio tab which shows the audio thread CPU usage, number of active audio sources etc.... They all provide clues that can help you identify performance issues.

    • Do you have a lot of timeline components active with complex layers/parameters/curves etc... If you do then consider replacing some of them with other Fabric components (sequence, switch etc), you can use the runtime parameter support if you need to control their properties from the game.

    • DSP components can also add to the audio performance especially if they are used on a node that has a lot of audio components underneath because each audio source will have its own effect instance.

    • VolumeMeter and SideChain combination used for ducking can cost on CPU... Consider setting the SideChain to check if the volume meter component (or any other component) is active instead or if possible use the dynamic mixer.

    I am more than happy to take a closer look at your Fabric hierarchy... just send email at support@tazman-audio.co.uk and I will share a dropbox folder with you.

    Cheers,
    Taz
     
  8. Tazman

    Tazman

    Joined:
    Sep 27, 2011
    Posts:
    94
  9. Tazman

    Tazman

    Joined:
    Sep 27, 2011
    Posts:
    94
    Version 2.1.9 brings:

    • Added dynamic music system with tempo syncing support
    • Added Music Component
    • Added EventList Component
    • Added Audio Clip Report window
    • Added music support to audio, sequence and switch components
    • Added post exit cue support to audio component
    • Added Loop support to random component
    • Added post event by ID support for better performance
    • Added dynamic Audio Clip Loading support
    • Added Async support to Dynamic AudioClip Loading
    • Added component virtualization support
    • Added support to automatically create event listeners and Random components when doing drag and drop of audio clips
    • Added X, Y sliders in RTP parameters
    • Added copy/paste support in RTP and timeline parameters
    • Added option in Music Component to ignore the transition segment
    • Added editor persistent data support
    • Added LoadAudio/UnloadAudio event actions (preload dynamic AudioClips)
    • Added support to load events from text files in the EventManager
    • Added EventAction filters to event log view
    • Added "Force Axis" vector (can lock audio component position to a specific axis)
    • Added default language option
    • Added transition offset support to IntroLoopOutro component
    • Added reset to default value option to timeline and RTP parameters
    • Added transition offset to IntroLoopOutro component
    • Added Support for Bypass Effects properties
    • Added "Reset On Play" option to RTP and Timeline parameters.
    • Added file location options to WwwAudioComponent (DataPath, PersistentPath, StreamingAssetsPath)
    • Added ScheduleEnd parameter to StopInternal
    • Added ScheduledToStop state and support to audio component
    • Added support to copy/paste Fabric component properties
    • Added drag and drop support to sampler manager
    • Added loop region support to sample player component

    To download the latest evaluation version of Fabric visit our website

    Note: For indie games Fabric is free to license
     
  10. Tazman

    Tazman

    Joined:
    Sep 27, 2011
    Posts:
    94
    The latest version of Fabric is now available to download from here

    This version introduces a new compact mixer view

    $Compact Mixer.png

    Check the release notes or visit the website for more details.
     
  11. Tazman

    Tazman

    Joined:
    Sep 27, 2011
    Posts:
    94
    Version 2.2.0 of Fabric is now available to download.

    This version introduces a number of new and exciting audio features such as:

    • Ability to read loop markers from wavfiles.
    • Choose to loop infinitely or set the number of loops before stopping.
    • Display audio clip waveform in the audio component inspector UI.
    • Preview audio clip directly in audio components.
    • Randomize Pan and 3D position.
    • Runtime parameters and timeline markers with keyoff support.
    • Built-in game parameter types:
      • GameObject to Listener angle,
      • Listener to GameObject angle,
      • GameObject and Listener velocity,
      • Modulator,
      • Volume Meter RMS output
    • Runtime parameter modulator, sine, square, sawtooth, triangle.
    • New RandomAudioClip component reduces the game object usage.
    • New event monitor showing all active events with useful info.
    • New Stereo Spreader DSP effect, add width to mono audio files.
    • Fabric manager spring board, loads the manager into a scene automatically.
    • Group components can be placed anywhere in the project hierarchy.
    • And many more fixes and improvements....

    For more details visit the our website and register to get access to the latest version.
     
  12. 0x73DB07

    0x73DB07

    Joined:
    Aug 2, 2014
    Posts:
    2
    Thank you for offering this free for indies! This looks amazing. However, when I load the ModularSynth tutorial, almost all of the script components say:

    The referenced script on this Behaviour is missing!
    UnityEngine.Object:Instantiate(Object, Vector3, Quaternion)
    Fabric.Component:Initialise(Component, Boolean)
    Fabric.FabricManager:RefreshComponents()
    Fabric.FabricManager:Awake()
     
  13. Tazman

    Tazman

    Joined:
    Sep 27, 2011
    Posts:
    94
    Hi,

    Which version of Fabric are you using?... Looks like the tutorial scripts have lost some of their references for some reason, I will have them fixed for the next release.

    Taz
     
  14. 0x73DB07

    0x73DB07

    Joined:
    Aug 2, 2014
    Posts:
    2
    Hi Taz, it's version 2.2.0, downloaded from your site.
     
  15. Tazman

    Tazman

    Joined:
    Sep 27, 2011
    Posts:
    94
    Beta version 2.2.1 of Fabric is now available to download. This version brings:

    - OSC Support, set properties from external apps (i.e. TouchOSC)
    - Live in-game tweaking, set properties on devices from the editor.
    - Editor playmode persistence.
    - Full Unity 5.0 support.
    - Event Editor window.
    - Silent Component.
    - PostEventNotify functions.
    - And many more fixes and improvements....

    For more details visit the our website and register to get access to the latest versions.
     
  16. tompark

    tompark

    Joined:
    Dec 10, 2014
    Posts:
    2
    Can you please give a code example for how to fade out looping music?
     
  17. Tazman

    Tazman

    Joined:
    Sep 27, 2011
    Posts:
    94
    Hi... First you need to set the FadeOutTime (duration of the fade) FadeOutCurve (type of the fade, 0.5=linear, log < 0.5 > exp) properties in the inspector UI.

    To stop and fade out the music component in code:

    Fabric.EventManager.Instance.PostEvent("Music", EventAction.StopSound, gameObject);

    To fade out without stopping the music component:

    Fabric.EventManager.Instance.PostEvent("Music", EventAction.FadeOut, gameObject);


    If you want to apply a fade out ignoring the component properties:

    Fabric.FabricManager.Instance.FadeOutComponent("Audio_Music_Menu", 1.5, 0.5)

    Note: "Audio_Music_Menu" is the path of the component in the hierarchy
     
  18. tompark

    tompark

    Joined:
    Dec 10, 2014
    Posts:
    2
    Thanks for the help!!
     
  19. Tazman

    Tazman

    Joined:
    Sep 27, 2011
    Posts:
    94
    Happy to announce that the Fabric manual is now available online http://fabric-manual.com

    Also in the next official release (v2.2.1) all inspector views and windows will link to their corresponding section in the online manual.
     
  20. Shizola

    Shizola

    Joined:
    Jun 29, 2014
    Posts:
    470
    Hi, I'm getting a problem using Fabric 2.2.0 with Unity 4.6.3. When I start the game I get this error about 5 times:

    "Serialization depth limit exceeded at 'Fabric::SampleFile'. There may be an object composition cycle in one or more of your serialized classes.

    Was working fine before using 4.6.1. Any ideas?

    Cheers!
     
  21. Tazman

    Tazman

    Joined:
    Sep 27, 2011
    Posts:
    94
    Hi Shizola,

    The latest beta version of Fabric is now available to download from the website.... This should fix the error.

    Let me know if it doesn't.

    Cheers,
    Taz
     
  22. Shizola

    Shizola

    Joined:
    Jun 29, 2014
    Posts:
    470
    Thanks for the quick reply. Yes the error is indeed fixed, many thanks.

    Also thanks for the new manual, looks great.
     
  23. JeffForKing

    JeffForKing

    Joined:
    Apr 8, 2014
    Posts:
    25
    Is there any change you can document how to successfully get the modular synth running? The modular synth tutorial files for me have lost their references. I've googled a lot, checked the manual and have yet to come up with anything. Any help would be greatly appreciated. Thanks so much.
     
  24. Tazman

    Tazman

    Joined:
    Sep 27, 2011
    Posts:
    94
    Fabric v2.2.1 is now available

    The latest official version of Fabric is now available. This version introduces a number of new and exciting audio features as well as improvements and fixes such as:

    • New components added (MicComponent, SilenceComponent)
    • New Event notification support from code (OnMarker, OnEnd, OnAdvance etc)
    • New event editor and monitor windows
    • New component menu bar with links to online docs, create child/parent
    • Export/Import components to/from XML files
    • MusicComponent syncs to wavfile OnMarker notifications
    • Volume threshold support
    • Referencing RTP parameters from other components
    • OSC Support, set properties from external apps (i.e. TouchOSC)
    • Live in-game tweaking, set properties on devices from the editor.
    • Editor play mode persistence.
    • Full support for Unity 5.0, WebGL, WP8, Consoles.
    • And many more fixes and improvements....

    Visit the Downloads section on our website to get access to the latest version as well as Demos,Online Manual, Forum, Twitter and Facebook pages.

    Thank you,
    Tazman-Audio
     
  25. Sebioff

    Sebioff

    Joined:
    Dec 22, 2013
    Posts:
    218
    Hi!
    I was wondering if it's possible somehow to have Event picker dropdowns on my own components, just like the EventTrigger/EventListener use them? I think that'd be more comfortable than copying strings around (e.g. when renaming events).
    I assume it might be done using a Serializable class with a custom property drawer, but was unable to find anything like that.
     
    chrismarch likes this.
  26. chrismarch

    chrismarch

    Joined:
    Jul 24, 2013
    Posts:
    470
    My team is looking for a way to do this as well.
     
  27. Tazman

    Tazman

    Joined:
    Sep 27, 2011
    Posts:
    94
    Hi,

    You can call the following function anywhere in your editor sceipt

    Fabric.EventManager.Instance.DropDownEventNames

    This will display a drop down menu with all of the events in the event manager and event list components that are present in the scene.

    Cheers,
    Taz
     
    chrismarch likes this.
  28. Sebioff

    Sebioff

    Joined:
    Dec 22, 2013
    Posts:
    218
    Hey Taz,
    thanks, that should work! However, this method doesn't seem to exist in Fabric 2.2.1.
     
  29. Tazman

    Tazman

    Joined:
    Sep 27, 2011
    Posts:
    94
    Are you on a beta version of 2.2.1? ... best download the latest official release from the website (http://www.tazman-audio.co.uk/#!downloads/c16et)

    Taz
     
  30. Sebioff

    Sebioff

    Joined:
    Dec 22, 2013
    Posts:
    218
    I'm not entirely sure...I downloaded Fabric_v2.2.1_5.0.0f4.unitypackage from the "Stable versions" list, from the link you provided, but in the Readme it says "Fabric v2.2.1.Beta", and DropDownEventNames is missing. Just completely removed Fabric, downloaded again and reimported to make sure - no change.
     
  31. Tazman

    Tazman

    Joined:
    Sep 27, 2011
    Posts:
    94
    My bad this not the correct way to call this function, it should be:

    Fabric.EventManagerEditor.DropDownEventNames

    Taz
     
  32. Sebioff

    Sebioff

    Joined:
    Dec 22, 2013
    Posts:
    218
    Thanks! I ended up creating the Serializable class with custom property drawer, so it's not necessary to create custom editors for every component that should have the dropdown. Couldn't use DropDownEventNames in the end as Unity didn't like calling it from within a property drawer for some reason, so it only includes the events from the event manager.
    Here's the code in case anyone else has a use for this:

    Serializable class:
    Code (CSharp):
    1. [System.Serializable]
    2. public class FabricEvent {
    3.     public string name;
    4.  
    5.     public int id {
    6.         get {
    7.             if (__id < 0) {
    8.                 __id = Fabric.EventManager.GetIDFromEventName(name);
    9.             }
    10.  
    11.             return __id;
    12.         }
    13.     }
    14.  
    15.     private int __id = -1;
    16. }
    Property drawer:
    Code (CSharp):
    1. [CustomPropertyDrawer(typeof(FabricEvent))]
    2. public class FabricEventPropertyDrawer : PropertyDrawer {
    3.     public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) {
    4.         EditorGUI.BeginProperty(position, label, property);
    5.         position = EditorGUI.PrefixLabel(position, label);
    6.         int indent = EditorGUI.indentLevel;
    7.         EditorGUI.indentLevel = 0;
    8.  
    9.         if (Fabric.EventManager.Instance != null) {
    10.             SerializedProperty eventNameProperty = property.FindPropertyRelative("name");
    11.             EditorGUI.BeginChangeCheck();
    12.             int eventIndex = Fabric.EventManager.Instance._eventList.FindIndex(eventName => eventName == eventNameProperty.stringValue);
    13.             if (eventIndex < 0) {
    14.                 eventIndex = 0;
    15.             }
    16.             eventIndex = EditorGUI.Popup(position, eventIndex, Fabric.EventManager.Instance._eventList.ToArray());
    17.             if (EditorGUI.EndChangeCheck()) {
    18.                 eventNameProperty.stringValue = Fabric.EventManager.Instance._eventList[eventIndex];
    19.             }
    20.         }
    21.         else {
    22.             EditorGUI.LabelField(position, "No Fabric EventManager found!");
    23.         }
    24.  
    25.         EditorGUI.indentLevel = indent;
    26.         EditorGUI.EndProperty();
    27.     }
    28. }
    29.  
    Usage:
    Code (CSharp):
    1. public class TestComponent : MonoBehaviour {
    2.     public FabricEvent testSoundEvent;
    3.  
    4.     void Update() {
    5.         Fabric.EventManager.Instance.PostEvent(testSoundEvent.id);
    6.     }
    7. }
    Result:
    Bildschirmfoto 2015-04-28 um 13.37.32.png

    Renaming existing events doesn't keep the connection though, it'll set it back to "_UnSet_".
     
  33. Tazman

    Tazman

    Joined:
    Sep 27, 2011
    Posts:
    94
    Version 2.2.1 Beta of Fabric is now available to download. This version brings:

    - New Event Sequencer
    - New Global parameters
    - New component virtualization features
    - New Event Actions and API functions
    - Improved Audio Source Pool
    - And many fixes and performance/UI improvements.

    Visit the download section on our website to get access to this version or the "Whats New" section in the online manual to get a more detailed info of the new features, improvements and fixes.

    Thank you,
    Tazman-Audio
     
  34. mrwogs

    mrwogs

    Joined:
    Aug 20, 2014
    Posts:
    36
    I started digging into Fabric this past week, and I'm really enjoying its feature set.

    I have a question for Taz or the other forum members...

    I am triggering the playback of a VO file when the player enters a trigger region. What I'd like to do is have the rest of the sound mix (music, sound effects) that are contained within other Fabric components, turn down in volume by 50%. When the VO file is finished playing, I'd like those elements to come back up in volume to 100%.

    I am able to setup a trigger event on the VO trigger object itself, which passes a volume reduction onto the elements I want to bring down in volume. I did this with a simple Trigger On: Trigger Enter, Action: Set Volume.

    The trick now is getting the audio component itself (the VO file) to let the system know when it is done playing so I can bring the volume levels back up to 100% again.

    Any thoughts on how to achieve this? Thanks.
     
    Last edited: Aug 27, 2015
  35. Tazman

    Tazman

    Joined:
    Sep 27, 2011
    Posts:
    94
    Hi,

    Happy to hear you enjoying Fabric :) .... here are some ways to achieve what you want:

    First of all make sure you have group components above the VO, music and sfx components....

    Method 1: In the music and sfx group components insert a side chain, set the "Use Component" option and drag and drop the VO component in their object field. This will cause the group components to duck in volume for as long as the VO group component is active. Very simple and low cpu usage solution.

    If you want to use the rms value then you can add a VolumeMeter component in the VO group and unset the "Use Component" option in the side chains. However, the volume meter can cost CPU usage if you have a lot of VO audio sources playing at the same time.

    Method 2: Use the dynamic mixer and create a preset that reduces the music and sfx group components for the duration of the event.

    Method 3: If you are on Unity 5 then you can use their new audio mixer ducking feature .... you can link Fabric components with the audio mixer by setting the "AudioMixer Group" property on the group components component (all children will inherit that property).

    So many ways :)

    Cheers,
    Taz
     
  36. mrwogs

    mrwogs

    Joined:
    Aug 20, 2014
    Posts:
    36
    Thanks very much for the quick reply! I'll try one of these methods out.
     
  37. mrwogs

    mrwogs

    Joined:
    Aug 20, 2014
    Posts:
    36
    I believe I am about 90% of the way to the solution. The Dynamic Mixer worked out really well. I created a preset that ducks the ambience, SFX, and music groups when the player enters the VO trigger. The preset activates on trigger entry, and the sound group volumes go down to -96db.

    The problem I am facing now is that the duck preset does not reset (deactivate) back to the normal sound mix when the VO is done playing - it stays switched on. I'm not sure how to do that. I read in the documentation that the preset should swicth off when the associated audio component/group is done playing (deactivated) but that doesn't seem to be the case.

    Is there a way to let the Dynamic Mixer know that the VO has stopped playing, without writing custom code?

    Thanks again for your help!
     
    Last edited: Aug 29, 2015
  38. mrwogs

    mrwogs

    Joined:
    Aug 20, 2014
    Posts:
    36
    The FadeOutTime on Switch Components seems to be not functioning properly.

    I have a music group component, and underneath that, a switch component that switches between a variety of sequence components with music tracks.

    I would like for these music sequences to fade in and out on event trigger (player entering a trigger volume). As it stands, the sequences, on switch, are properly fading in. I've set the FadeInTime on the switch component to 5 seconds and this works fine.

    The problem I am having is that the FadeOutTime value is not being respected. I've entered in 5 seconds in the FadeOutTime on the switch component, but it is not being read. The fade out does not happen, it just cuts right into the next music sequence with a 0 fade value.

    I also tried to set the FadeOutTime on all of the components down the chain (sequence components and audio components) but that also did not help.

    I installed the 2.2.2 beta (Unity 4.6.4) to test this out, as it appeared as though this was fixed with the following note, but I'm not getting the desired results:

    "Added support so group components will wait for fade outs before they get unloaded"

    Thanks!
     
    Last edited: Aug 29, 2015
  39. Tazman

    Tazman

    Joined:
    Sep 27, 2011
    Posts:
    94
    Thanks for reporting this issue... I can reproduce it as well so I will take a look at it and have it fixed for the next release.

    Cheers,
    Taz
     
  40. mrwogs

    mrwogs

    Joined:
    Aug 20, 2014
    Posts:
    36
    My pleasure, and thanks very much.
     
  41. s_guy

    s_guy

    Joined:
    Feb 27, 2013
    Posts:
    102
    Hi @Tazman

    I'm experimenting with Fabric v2.2.1 and reviewing its feature set.

    In trying to use side chains, as you described to mrwogs a few messages up, I get no change in volume to group 1 using the side chain when group 2 (referenced in the side chain) becomes active. The reported gain in the side chain component also does not change while the referenced group 2 is playing. If I uncheck the "use component" option in the side chain on group 1, give the referenced group 2 a volume component, and re-assign it to the side chain, I do see the gain meter change when group 2 plays, but there is still no volume change from group 1.

    Also, in the Fabric tutorial scene for side chains, the volume for the music doesn't seem to change relative to the ambience audio referenced in the Music/Random side chain component. I even replaced the example music with a constant tone to make it easier for me to hear volume changes, but I couldn't tell that the side chain was doing anything.

    Any ideas what might be the issue? Thanks.
     
  42. Tazman

    Tazman

    Joined:
    Sep 27, 2011
    Posts:
    94
    Hi s_guy,

    Can you download the latest beta version form the website and let me know if you are still experiencing the same issue? ... If you do is it be possible to send a simple test project at support@tazman-audio.co.uk and I will take a look.

    Thanks,
    Taz
     
  43. Tazman

    Tazman

    Joined:
    Sep 27, 2011
    Posts:
    94
    Fabric v2.2.2 is now available

    The latest official release of Fabric is now available to download. This version brings:

    - New Audio Bus with voice limitting
    - New Audio Asset Importer
    - New "Edit In Reaper" option
    - New Event Sequencer
    - New Global parameters
    - New component virtualization features
    - New Event Actions and API functions
    - Improved Audio Source Pool
    - And many fixes and performance/UI improvements.

    Visit the download section on our website to get access to this version or the "Whats New" section in the online manual to get a more detailed info of the new features, improvements and fixes.

    Please do not hesitate to contact us if you have any questions or issues.

    Thank you,
    Tazman-Audio
     
  44. Sebioff

    Sebioff

    Joined:
    Dec 22, 2013
    Posts:
    218
    Hi @Tazman!
    We've been using Fabric on our project for a while now, and it's going pretty good :)
    I've got two issues that I'd like to report though. We're currently using v2.2.2 on Unity 5.2.1p4.

    1) EventManager.Instance.SetParameter(string eventName, string parameterName, float value, GameObject parentGameObject = null) allocates 140 bytes of garbage per call

    We're calling that method on a dozen objects every frame, so it quickly adds up to a couple MB per minute.

    2) StopSound doesn't always stop sound.
    I can reliably reproduce this when posting a PlaySound and StopSound event on the same frame, but I think it can also happen with a couple frames in between.

    Let me know if you need repro cases.
     
  45. Tazman

    Tazman

    Joined:
    Sep 27, 2011
    Posts:
    94
    Hi Sebioff,

    We will take a look at the SetParameter allocation and have it fixed on the next release.

    Can you download the latest patch from the website and see if that fixes the StopSound issue?.... if you are still experiencing problems then it will be extremely helpful if you can provide a repo project.

    Thanks,
    Taz
     
  46. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    Quick note: your screens don't show on the first page here.
     
  47. Sebioff

    Sebioff

    Joined:
    Dec 22, 2013
    Posts:
    218
    I've sent you a repro project for StopSound by mail using Fabric 2.2.2p4.
     
  48. Tazman

    Tazman

    Joined:
    Sep 27, 2011
    Posts:
    94
    Thanks Sebioff, we got the repro project and looking at it now.

    hippocoder, thanks for the note we will update the images and description.
     
  49. Voronoi

    Voronoi

    Joined:
    Jul 2, 2012
    Posts:
    584
    Hi,

    I am trying out Fabric and cannot figure out if this behavior is a bug with 5.3 or there is some interface/menu that I am not aware of. Here is what I did:

    Import Fabric_v2.2.2_5.1.1f1 package
    Import the Examples

    The Example scenes play fine, but when I unfold the Audio hierarchy in the Inspector, and if the child is named 'Audio', the entire hierarchy disappears.

    For example, in the Mixing scene, unfolding Audio>Ambience>Audio and selecting 'Audio' will cause everything to disappear. However, unfolding Audio>Music>Random>Audio1 acts normally, I can see the audio component.

    This is latest Unity 5.3
     
  50. Tazman

    Tazman

    Joined:
    Sep 27, 2011
    Posts:
    94
    Hi Voronoi,

    Thanks for reporting this issue... there will be a patch released very soon with a fix, you will be able to download it from our website.

    Cheers,
    Taz