Plugin Version 1.0.14 (preview)
Unity
- Added support for audio layers/stems
- Added local disk cache for both audio and meta-data
- Added "offline" mode. NOTE: This requires all data to be loaded into the local disk cache.
- Updated plugin API
- Changed terminology from "song" to "track" throughout the plugin
- Transitions have been expanded to include settings for layers
- The Plugin is now automatically loaded and runs in the background without the need to attach it to your scenes
- The Plugin settings have moved to Assets/PlusMusic/Resources/PlusMusicSettingsSo
- Added a new sample scene to show off an in-game UI that allows for mixing layer audio at runtime
- Too many to list: Bug fixes, performance improvements, improved messaging system, streamlined code, new EventManager and SceneManager
Unreal
- Still in development ...
Plugin Version 0.9.24 (beta)
Unity
- Fixed an issue that could cause the plugin to hang if a soundtrack had multiple version of the same arrangement type
- Improved error messages for missing arrangements and uncompiled soundtracks/game-packs
Unreal
- Still in development ...
Plugin Version 0.9.23 (beta)
Unity
- Fixed issue with PlusMusicSceneManager that prevented the singleton instance of the DJ to stay alive during startup on iOS all devices
- Improved startup logic for PMLoadSong and PMLoadAllSongs to prevent potential race conditions between scripts
- Added PlayScrossScenes setting. By default it is turned off. If turned on, any currently playing audio will carry over into the next Scene and keep playing.
- Fixed several minor issues with our sample scene at Assets/PlusMusic/Scene/PlusMusicSampleScene
- Fixed several logging inconsistencies in the DJ
- Made WindDownMainAudio() and TurnUpMainAudio() public
Unreal
- Still in development ...
Plugin Version 0.9.22 (beta)
Unity
- Added SetAudioMixerGroup() API call
- Added ability to specify a subset of soundtracks to the PMLoadAllSongs script
- Added UseVolume to transitions to make volume changes when playing transitions optional
- Added ReturnToPrevious to transitions to allow for returning to the previous arrangement after playing the current arrangement
- NOTE: The above was previously hardcoded into TimeToLive which is now more generic but can still be combined with ReturnToPrevious
- Added PlusMusicSceneManager class that loads at runtime and manages the PlusMusic plugin across multiple scenes
- Moved the PlusMusicPlugin prefab to the Resource folder so it can be programmatically loaded
- Removed several now redundant settings from the PlusMusicPlugin
- Fixed race condition bug in PMLoadSong
- Fixed race condition bug in PMPlayArrangement
- Fixed possible race condition in PMLoadAllSongs
- Fixed bug the could result into transitions not honoring the volume setting
- Renamed Api Key to Auth Token to align with the website UI
- Renamed the following prefabs: PM_DebugDisplay => PM_UI_DebugDisplay, PM_SettingsPanel => PM_UI_SettingsPanel, PM_TestPanel => PM_UI_TestPanel
- Removed unused transition creation overloads
- Reworked the PlusMusicSampleScene and PlusMusicSettings script
- NOTE: All current in-scene references in your game to the PlusMusicPlugin (formerly known as PlusMusic DJ Source) prefab need to be removed!
- Your Project ID and Auth Token are now only set once per game in Assets/PlusMusic/Resources/PlusMusicPlugin
- You can also specify an AudioMixerGroup here if you want to run the PlusMusic audio through an existing AudioMixer
- Improved logging
Unreal
- Still in development ...
Plugin Version 0.9.20 (beta)
Unity
- Fixed transition bug that could result in random initializing values
- Moved project settings from the main menu to the plugin inspector window
- Added/expanded auto load/play functionality in the inspector window
- Added an optional AudioMixerGroup reference to allow using existing audio mixers for our playback
- Added tooltips to many of the inspector components
- Added Volume to transitions, allowing you to set the target volume
- Added TimeToLive to transitions, allowing you to specify a time limit for playing an arrangement after which the plugin will return to playing the previous arrangement
- Added OnLoadingProjectProgress event
- Added new scripts to support new functionality: PMLoadProject, PMLoadSong, PMPlayArrangement, PMLoadAllSongs
- Added several new prefabs to allow for quicker prototyping: PM_LoadProject, PM_LoadSong, PM_Trigger_LoadSong, PM_Trigger_PlayArrangement, PM_PlayDeath, PM_PlayPressure, PM_TestPanel, PM_LoadAllSongs
- Added new function overload to LoadSoundtrack()
- Improved the song loading logic
- Renamed existing prefabs to be more in line with naming conventions: PlusMusic DJ Source => PlusMusicPlugin, DebugDisplay => PM_DebugDisplay, SettingsPanel => PM_SettingsPanel
- Switched default transition timing to Now instead of NextBeat
- Updated the sample scene at Assets/PlusMusic/Scene/PlusMusicSampleScene
[DEPRECATED]
- SetLowPassFilter() use filters on an AudioMixer instead
- SetMixerSetting() use an AudioMixer instead
- beats/bars in the PMTimings enum, use NextBeat/NextBar instead
- EffectTrigger prefab, no longer needed, see SetMixerSetting
- CurveTriggerSoundtrackSwitch prefab, use PMPlayArrangement instead
- CurveInDownTriggerSoundtrackSwitch prefab, use PM_Trigger_PlayArrangement prefab instead
- CurveTriggerSwitchBlock prefab, use PM_Trigger_PlayArrangement prefab instead
Unreal
- Still in development ...
Plugin Version 0.9.18 (beta)
Unity
- Fixed intermittent memory leak when calling PlayArrangement()
- Fixed bug that could prevent the plugin from loading another song that was previously loaded/cached
- Fixed bug that could cause the plugin to hang if a song was missing arrangements
- Fixed bug that could cause the plugin to hang if PlayArrangement() was called before the song was fully loaded
- Updated the sample scene at Assets/PlusMusic/Scene/PlusMusicSampleScene
- Added several new API functions to support Start/Stop/Pause UI: StartAudio() / StopAudio() / PauseAudio() / UnPauseAudio()
- Added GetVolume() API function
- Added new events to support better UI implementations: OnArrangementChanged / OnAudioStateChanged
Unreal
- Removed PlusMusicCompressor (which wasn't used anyways) to allow our plugin to work on 5.1.x
- Fixed bug that could prevent the plugin from loading another song that was previously loaded/cached
- Fixed bug that could cause the plugin to hang if a song was missing arrangements
- Fixed bug that could cause the plugin to hang if PlayArrangement() was called before the song was fully loaded
- Added several new API functions to support Start/Stop/Pause UI: StartAudio() / StopAudio() / PauseAudio() / UnPauseAudio()
- Added GetVolume() API function
- Added new events to support better UI implementations: OnArrangementChanged / OnAudioStateChanged
Plugin Version 0.9.17 (beta)
Unity
- Songs within a project are now cached after the first time they are downloaded. Once cached, you can switch between songs without delay. The cache is in-memory and only persists for the current game play session.
- LoadSoundtrackByName() has been added
- ChangeSoundtrack() has been deprecated, use LoadSoundtrack() or LoadSoundtrackByName() instead
- Inconsistent use of string and int for numeric values has been fixed, old string version functions are now all deprecated
Unreal
- Songs within a project are now cached after the first time they are downloaded. Once cached, you can switch between songs without delay. The cache is in-memory and only persists for the current game play session.
- LoadSoundtrackByName() has been added
- Inconsistent use of string and int for numeric values has been fixed, old string version functions are now all deprecated
- Fixed an issue where we were decompressing ogg audio every time we played a sound. We now only decompress once, when the sound is first downloaded.
Plugin Version 0.9.16 (beta)
Unity
- Fixed issue with mismatching arrangement types between the plugin and the backend database
- Fixed issue with asynchronous arrangement loading that could result in missing arrangements
- Greatly simplified arrangement loading code
- Updated the plugin sample scene PlusMusic/Scene/PlusMusicSampleScene to work with the above changes
Unreal
- Fixed issue with mismatching arrangement types between the plugin and the backend database
- Greatly simplified arrangement loading code