|
Post by DarkTonic Dev on May 11, 2015 0:48:12 GMT
Master Audio API website has been updated to Doxygen! It's much nicer and more full-featured. Link: bit.ly/1bkiRei
|
|
|
Post by DarkTonic Dev on May 17, 2015 2:06:21 GMT
V 3.5.7.9 changelog: - Added MusicMuted and SfxMuted properties to PersistentAudioSettings. Added these to EventSounds for no-code activation from various events.
- Fixed bug where Event Sounds Inspector would log errors in Console when Master Audio prefab not in the Scene.
- Made "Spatial Blend Rule" changes switch all Audio Sources when you select it at edit time too, so you can preview better. Does not do anything on Dynamic SGC's though.
- Added option in Master Audio Manager window to update the installation folder. This setting uses PlayerPrefs so it won't need to be changed again every time you download an update to Master Audio.
- Updated API Website to Doxygen!
- Added code to put Script Execution Order of PlaylistController, MasterAudio and EventSounds scripts in the right order automatically.
- Eliminated CoRoutine from EventSounds. Now Start events all fire correctly no matter what, due to the Script Execution item above.
- Added MasterAudioBusGetProps Playmaker custom action to get voice limit, volume, etc of a bus and store them in variables.
- Added MasterAudioGroupSetPitch Playmaker custom action.
- Fixed bug with TriggerNextPlaylistClip that happened with auto-start in some cases.
|
|
|
Post by DarkTonic Dev on May 30, 2015 5:22:57 GMT
V 3.5.8 changelog: - Moved "Inspector Width" control from under the Group Mixer to Advanced / Visual Settings where it belongs.
- Changed the default of Inspector Width to "narrow" so it's usable by default with a normal width Inspector. Change it to "normal" if you like the old wider setting.
- Fixed Languages section to fit on "narrow" width.
- Added Playmaker custom action "MasterAudioPlaylistControllerGetProps", to get Playlist Controller's volume, current audio clip pitch, current audio clip volume and store them in variables.
- Added Playmaker custom action "MasterAudioVariationGetProps", to get a specific variation's audio source pitch and volume and store them in variables.
- Fixed bug with spamming of Console window when you have no Audio Listener in the Scene.
- Fixed bug: Couldn't click 2 mute buttons up top in the MA Inspector when on narrow mode at runtime.
- Fixed rare bug with Event Sounds not displaying anything.
- Added 3rd Audio Origin type of "File on Internet" for Sound Groups only, not Playlists. Allows you to specify a URL for an audio file. During the Awake event, Master Audio will start downloading the audio for any Variations set up like this. The mixer now has an icon next the yellow voice count showing the ready status of each Group (loading / ready / failed).
- Added method "ReDownloadAllInternetFiles" to unload all Internet audio files from memory, then redownload them in case they have changed since downloading. Good to call every week or so if you want to do holiday sound skins and things like that!
|
|
|
Post by DarkTonic Dev on Jun 10, 2015 5:43:43 GMT
V 3.5.8.1 changelog: - Added a button on Master Audio Manager window to delete all persistent settings and other settings stored in PlayerPrefs.
- Added a Song Id field to each song in a Playlist. This allows you to play songs in different Playlists by a common alias like "Intro", "Battle Music" etc when you use different music for audio skins or levels.
- Removed preview buttons for all audio in Master Audio prefabs viewed in Project viewed because they can't work there anyway.
- Added ability to have Sound Groups to trigger a Custom Events when played.
- Added option in Visual Settings to show buses (bus dropdowns) in narrow mode. Defaults to on.
- Added NodeCanvas integration package.
- Added true no-repeat functionality (by default) to Sound Groups with randomized Variation Sequence.
- Fixed bug: previewing of Internet Files didn't do anything.
- Fixed performance bug: Playlist clip would be scheduled even when current clip is looping (not necessary).
- Fixed compilation errors on Unity 5.1
|
|
|
Post by DarkTonic Dev on Jun 13, 2015 5:48:28 GMT
V 3.5.8.2 changelog: - Fixed compile error when exporting as PC standalone and some other platforms.
- Removed accidental logging code left in no-repeat random refactor from V 3.5.8.1.
|
|
|
Post by DarkTonic Dev on Jun 28, 2015 5:24:24 GMT
V 3.5.8.3 changelog: - Added fix for NGUI OnDrag and other events.
- Added ability for Synchronized Playlists to use auto-advance if Crossfade is set to zero.
- Narrow / Normal mode is now stored in Player Prefs so you don't have to make the change on each Master Audio prefab if you have many.
- Fixed bug: In Narrow Mode on some Inspector widths, can't type in top 3 boxes (Master Playlist Volume etc).
- Added ability to automatically unload Audio Clips marked with "Preload Audio Data" off (default is on) used in Playlists. Saves a ton on memory usage without having to use Resource Files!
- Added ability to automatically unload Audio Clips used in Sound Groups. Saves a ton on memory usage without having to use Resource Files!
- Added property ClipsRemainingInCurrentPlaylist to PlaylistController for reading the number of songs not yet played.
|
|
|
Post by DarkTonic Dev on Aug 10, 2015 3:33:39 GMT
V 3.5.8.4 changelog: - Fixed bug: ButtonClicker script spams Console when no Master Audio game object in Scene.
- Fixed bug: Hitting stop in the Jukebox with Song Ended Custom Event set up on Playlist Controller logs "Duplicate Custom Event fired".
- Fixed bug: Song Ended Custom Event on Playlist Controller fires SongEnded when starting first song.
- Fixed bug: Song Ended Custom Event & Song Changed Custom Event on Playlist Controller both fire even when collapsed & unchecked.
- Fixed bug: When encountering a busy Variation, other available Variations were not used in some cases.
- Now logging a warning to the Console if you're using Resource files that have "preload audio data" unchecked, since that causes audio glitches sometimes. Turning Preload Audio Data off is an alternative to using Resources files, you should never do both on the same file.
- Removed Particle Emission controls from EventSounds. This is an old weird feature that doesn't belong in an audio plugin.
- Deleted "Master Audio Set Variation Pitch" Playmaker Custom Action as it was a duplicate of Master Audio Group Set Pitch.
|
|
|
Post by DarkTonic Dev on Sept 5, 2015 23:20:46 GMT
V 3.5.8.5 changelog: - Upgrade note: Moving our plugins into Plugins folder to help speed up compile times in your projects! Make sure and move the entire Assets/DarkTonic folder into Assets/Plugins before upgrading to this version! Then update the Installation Path to Assets/Plugins/DarkTonic/MasterAudio on the Master Audio Manager screen by clicking "revert". Good to go!
- Now allowing Async loading of Resources to all Unity 5 users, even free version.
- Added MechanimStateSounds script. This can be added with the "Add Behavior" button on a Mechanim state, and can play a Sound Group of your choice during state enter and/or exit.
- Fixed MasterAudio.GetAllPlayingVariationsInBus to return a list of Variation objects, not game objects. That is far more useful.
- 0-1 to Decibels conversion was incorrect! Fixed formulas.
- Made Sound Groups with zero voices playing a different color for the voice count on the Mixer (dark gray) to stand out better.
- Now all Sound Group Variations go back to position 0,0,0 (relative to Master Audio game object) after stopping. So if you see a Gizmo for a Variation at a different location, it is playing something.
- Changed default behavior of Caller Despawned Mode for each Sound Group. Now it defaults to a fade of 0.3 seconds. This will affect only projects that haven't imported Master Audio before.
- Added option "Follow Audio Listener" on Advanced Settings. Defaults to on. This aids previewing, and will move the Master Audio game object to Audio Listener's location every frame, including at edit time. This will enable previewing of sounds from the Master Audio game object at all times. Before it was based on distance from the Audio Listener.
- Sound Group's Inspector now has mute and solo button like its Mixer row.
- Playlist Controller's Inspector now has mute button like its section in the Master Audio game object.
- Now showing indicator of playing / not playing and “time” on Group & Variation Inspectors so you can see which Variations are playing.
|
|
|
Post by DarkTonic Dev on Sept 15, 2015 3:57:28 GMT
V 3.5.8.6 changelog: - Fixed compile problem: Moved editor folder to Plugins/Editor/DarkTonic/MasterAudio
- Fixed bug: Resource files were not unloaded from Playlist Controllers when the game object was destroyed by a Scene changing.
- Fixed bug: Footstep Sounds script logged errors to Console when no Master Audio prefab in Scene.
- Added new API methods for "StopLoopingCurrentSong". This does the same as QueuePlaylistClip, but without having to queue a clip. So it will turn loop off for the current playing song and play the next song in the Playlist when done.
- Added StopLoopingCurrentSong to EventSounds Playlist control so you can do it without writing any code.
- Anywhere a Sound Group dropdown appears, added a button to go to that Sound Group and edit it.
- Gizmos now default to off for EventSounds and only show for actively playing Variations instead of all.
- Added "Filter Out Inactive" checkbox during Runtime on the mixer. Enabling this will hide all Sound Groups with zero voices playing. Good for investigative audio work.
|
|
|
Post by DarkTonic Dev on Oct 26, 2015 2:56:56 GMT
V 3.5.8.7 changelog: - Fixed bug: Localized Resource Files didn't work properly when added in Dynamic Sound Group Creators.
- Fixed bug with "playing / not playing" indicator when using Resource files.
- Fixed bug with "input stealing" in EventSounds.
- Fixed bug where Duck Groups set up in Dynamic SGC's would not show in the Master Audio Inspector at runtime.
- Fixed bug where Custom Events configured in the individual songs in a Playlist would fire even when disabled in the UI.
- Fixed bug where next song would be scheduled even when current song is set to loop, when Gapless Song Transitions is turned on.
- Fixed excessive logging to the Console window when no Master Audio game object exists in the Scene and Dynamic Sound Group Creator or Playlist Controller game objects try to initialize. Now there's a single error logged to the Console.
- AudioUndoHelper moved into the DarkTonic.MasterAudio namespace.
- Added "unduck time" (seconds) to each Duck Group. The default is 1 second. This controls how long it takes the music to completely unduck after unducking begins. Note that it used to always take until the clip finished playing to finish unducking, so you may need to adjust the new setting in Duck Groups if you don't like the default of 1 second.
- Added "volume multiplier" to each Duck Group. The default is .5. This allows you to have a different multiplier for each Sound Group.
- Added OriginalVolume property to Variations. Retains the volume you set in the editor before hitting play.
- Added SoundGroupName property to Variations.
- Added "Force to 2D" checkbox for buses. This is useful because now you can make a "2D / UI bus" for all 2D sounds and leave the Mixer's Spatial Blend Rule at "Force to 3D". So whenever you create new UI sounds, just assign them to your 2D bus!
- Added button to clone a song in a Playlist, including all settings.
|
|
|
Post by DarkTonic Dev on Dec 19, 2015 20:22:00 GMT
V 3.5.8.8 changelog: - Fixed bug where songs added to a Playlist Controller's queue sometimes would not play when Gapless Song Transitions is turned on.
- Fixed compile error with optional Playmaker Custom Actions.
- Added new property OriginalVolume to MasterAudioGroup class.
- Added new property OriginalVolume to GroupBus class.
- Fixed Unity 5.3 warnings.
- Fixed bug with GetVariationLength with Dynamic SGC's
- Fixed Bug when dragging in special language folder located Audio Cips into Playlists. Should not ignore the special folder name when populating Resource filename.
- Added "Group by bus" option to Dynamic SGC.
- Fixed compile errors for Unity 4.7
|
|
|
Post by DarkTonic Dev on Feb 21, 2016 21:21:56 GMT
3.5.8.9 changelog: - Fixed bug where changing bus volume of a delayed sound would not respect the new bus volume.
- Fixed bug where Song Started Custom Event would fire repeatedly in rare edge case.
- Fixed bug in SoundGroupOrganizer where wrong source object's Sound Groups would be displayed sometimes.
- Fixed PlaymodeStateChanged delegate so it doesn't block other plugins from using it.
- Fixed bug where a Chained Loop group with only 1 Variation would loop forever regardless of how many times you told it to loop.
- Fixed bug where ending the looping of a Playlist song would not advance to the next song unless it was queued, when using Gapless.
- Fixed bug where calling RemoveSoundGroup would not unload Resource files.
- Fixed bug where a "typed in" Initial Playlist of a Playlist Controller would be lost when you selected the Master Audio game object.
- Added an option to disable "no-repeat Variations" for a Sound Group whe you have 3 or more Variations.
- Added an API button on each Inspector to take you to the coding API, for the same class where applicable. Same row as the Help icon under the logo.
- Bus settings (just bus name) are now copied to / from SoundGroupOrganizer, so that if you import and export a Sound Group, it will still point to the same bus on the export target when done. In cases where this is a "new bus", one will be created for you. No other settings except the bus name will be copied for the new bus though.
- Moved all Master Audio preferences into a Scriptable Object instead of PlayerPrefs. You can move the Scriptable object to a different Resources folder if you like. Contains settings like Use Db, Use Cents for Pitch, Narrow vs Normal mode, installation path, etc. Note that these settings will be reverted to their default so you will need to change any you were using.
- Changed RemoveSoundGroup method to accept a string (Sound Group Name) instead of Transform. This way it can easily be used by coders.
- Made it so "no-repeat Variations" does not happen when you have 2 or less Variations (because that would make it always the same).
|
|
|
Post by DarkTonic Dev on Mar 28, 2016 19:32:26 GMT
V 3.5.9.0 changelog: - Changed max crossfade time from 10 seconds to 120 seconds.
- Fixed bugs with some music ducking scenarios.
- Fixed bug: "type in" on EventSounds for Sound Groups wasn't letting you type in.
- Fixed bug where "Create" button for Master Audio prefab on Master Audio Manager window didn't work.
- Fixed bug with gapless where re-scheduling an already scheduled song could sometimes result in slight gaps or too early transitions. Now it only reschedules if the track is off its original schedule by more than 1 second, which will never happen unless you change pitch of the song while it's playing or change the position of the song, in which case a warning in logged to the Console to tell you of those possible causes and that gapless might not be so in these cases.
- Changed "Volume Multiplier" on each Duck Group to "Volume Cut (db)" so it will work more uniformly at any music volume. You will lose all Volume Multiplier settings so check all your Duck Groups! Default Volume Cut is -6db.
- Added method MasterAudio.ListOfAudioClipsInGroupsEditTime, which gives you a list of audio clip filenames. Only use from edit mode for any custom code you may have there.
- Added new Playmaker Custom Action MasterAudioGroupIsPlaying.
- Added new Playmaker Custom Action MasterAudioPlaySoundWithEvent.
- Added new PropertyDrawer for CustomEvents. Use it by adding the [MasterCustomEvent] Attribute to a public string variable in your custom scripts.
- Added "MechanimStateCustomEvents" script. You can add this to a state in Mechanim to fire a Custom Event on enter and exit state.
- Added a property that keeps an up to date list of all Audio Source used by Master Audio (MasterAudio.MasterAudioSources).
- Added an event you can listen to that notifies if the list of all Audio Sources changes (MasterAudio.NumberOfAudioSourcesChanged += delegate {})
- Integration with RelationsInspector. New icon on mixer rows and bus rows to show all usages of Sound Group / Bus in Scene in a graph. Finds only references in EventSounds and "MechanimState" scripts in Master Audio.
|
|
|
Post by DarkTonic Dev on May 3, 2016 2:05:19 GMT
V 4.0 changelog: - Added Occlusion settings (for Unity 5 only). Must enable Occlusion in Advanced Settings, then turn on Occlusion per Group you want. Just like auto-prioritization, you choose how often to check for occlusion (raycast), a time interval of .1 - 1 second is possible. The raycast checks if something blocks the AudioSource in a straight line to the AudioListener. If so, a Low Pass filter is applied based on the distance from AudioSource to the blocker (You will not be able to use a Low Pass filter setting of your own when using occlusion because the setting is constantly hijacked by occlusion code). The further from the Audio Listener when blocked, the more frequencies will be filtered out. 2D sounds will not run occlusion code and do not show the option in the Inspector.
- Occlusion settings now have an optional LayerMask for the RayCast, so you can choose which layers to consider a hit, just like the field on a Camera.
- Added Occlusion setting to Sound Group's Inspector, choices are "All Groups" and "Turn on per Group".
- Occlusion setting has runtime display of buckets: # of in-range, out-of-range and occluded Audio Sources. Each of these can be clicked on to select all in that bucket in the Hierarchy.
- Occlusion has "show ray casts" checkbox (default to true), which shows green lines for unblocked and red for occluded lines. Helps when troubleshooting problems with occlusion.
- Occlusion has "RaycastMode", settable to Physics3D (default) or Physics2D. With the former, the raycast can only hit 3D colliders. With the latter, only 2D colliders.
- Occlusion has "Show Diagnostic Buckets" setting (defaults to false since it takes performance) to show the categories of: InRange / Out of Range / Occluded and the counts of each that you can click on to select the objects.
- Auto-prioritization code now looks at Spatial Blend (bus and rule), since 2D stuff always should have highest priority.
- Renamed "Apply Distance Priority" to "Use Distance Priority" to be consistent.
- Added "Select Caller" button at the top of Variation Inspectors at runtime so you can click it to find the object in the Hierarchy that played it.
- Moved "Buses Shown in Narrow" Advanced Setting to be stored in scriptable object MasterAudioSettings, since it's unlikely you would set it different per Master Audio prefab. Your previous setting will be reset to "on" so if you want it off, you must turn it off again.
- Moved "Show Variation Gizmos" Advanced Setting to be stored in scriptable object MasterAudioSettings, since it's unlikely you would set it different per Master Audio prefab. Your previous setting will be reset to "on" so if you want it off, you must turn it off again.
- Moved all Fading settings in Advanced Settings to be stored in scriptable object MasterAudioSettings, since it's unlikely you would set it different per Master Audio prefab. Your previous setting will be reset to "on" so if you want these on, you must turn it on again.
- Moved all Resource file settings in Advanced Settings to be stored in scriptable object MasterAudioSettings, since it's unlikely you would set it different per Master Audio prefab. Your previous setting will be reset, so doublecheck your settings here.
- Fixed bug where sometimes assigning something to a Unity Mixer Group at edit time would log an error in Console.
- Moved icons in Gizmos folder under Gizmos/MasterAudio so it's obvious what they are for.
|
|
|
Post by DarkTonic Dev on May 20, 2016 20:06:38 GMT
V4.0.3 changelog: - Fixed bug where Retrigger Limit using frames caused errors.
- Fixed bug where Occlusion check after loading a Dynamic SGC on a new Scene would log errors.
- Changed Occlusion option "Turn on per group" to "Turn on per bus or group".
- Added "Use Occlusion" option to Buses when "Turn on per bus or group" is on in Occlusion settings.
- Added option "Include Ray Cast Origin Collider" for Occlusion. Only visible and available on Unity 5.2+. This is for 2D ray casts only, and controls whether the collider you start the ray cast from is considered a hit or not.
- Removed Transform and followTransform parameters from MasterAudio.PlaySound3DAndForget, since only "Transform" methods should take those.
|
|