3.0 Alpha Release
·
62 commits
to master
since this release
Finally putting together a new package since JSAM 3 is approaching a production-ready state. No documentation just yet, but the new API is well-commented and there are Example scenes you can explore.
I do not recommend upgrading an existing project from JSAM 2 to 3 as a lot of script names have changed and so most of your references will break and Sound/Music File Objects will have to be re-created.
Remember to check out the new Audio File Wizard to help convert all your AudioClips into Sound/Music File Objects!
Below is a (non-exhaustive) list of changes
Changes
- AudioFileMusic/AudioFileObjects are now called MusicFileObject/SoundFileObject respectively
- Added StopSoundIfPlaying and StopSoundIfLooping
- Added many many static methods to AudioManager as shorthands for commonly used API
- ie.
PlaySound
,PlayMusic
- ie.
- Expanded usability of Sound/Music File Objects
- You can pass Sound/Music File Objects into
AudioManager.Play
- Added a
.Play()
shorthand to Sound/Music File Objects - File Objects can be used in most helper components (AudioEvents, SoundPlayer, MusicPlayer etc.)
- You can pass Sound/Music File Objects into
- Added Max Playing Instance property to define the maximum number of a specific sound to be played at once.
- Added support for AudioMixers
- Added new Static Events to AudioManager component
- OnAudioManagerInitialized
- OnSoundPlayed, OnMusicPlayed
- OnMasterVolumeChanged, OnMusicVolumeChanged, OnSoundVolumeChanged
- Audio Libraries are now a ScriptableObject. You can share them between different AudioManager instances or even between projects
- Added AudioFileWizard to allow mass conversion of many AudioClip assets to Sound/Music File Objects.
- Accessible via
Window -> JSAM -> Audio File Wizard
- Accessible via
- Added
VideoPlayerVolume
component.- Add it next to a
VideoPlayer
component to have the VideoPlayer conform with JSAM's volume settings
- Add it next to a
- AudioMusicZones now supports having multiple different zones play the same sound
- Moved AudioManager settings into ProjectSettings
- Changed AudioChannel instantiation to use default AudioSource components and to be created during runtime without supplying a prefab.
- A prefab override for Sound/Music channels can be specified by the user in the ProjectSettings
- Abbreviated main package folder to JSAM
- Removed File Library mode from Sound File Objects, all AudioClips are now stored in a "Files" array
- Removed 3D music as a separate music type. Music can now be spatialized
- Removed
PlaySoundLoop
invocation, looping property is now specified in SoundFileObjects - Moved most properties from AudioPlayer and AudioPlayerMusic to their respective Audio File Objects
- Capitalized the instance in AudioManager.Instance
- Adjusted the font size of Quick Reference Guide text, font size can be adjusted in the Project Settings
- Removed "Category" dropdown from Audio File object inspector
- Removed "Audio File Object" label and name fields from Audio File object inspectors, now use the name of the ScriptableObject
- Added warning beneath Audio Playback Preview window to disable the "mute audio" option in the Game View to preview audio
- Added a lot more useful logging
Fixes
- Fixed Audio Particles making no distinction between playing on Particle emit and death
- Fixed double-clicking an asset to open the audio in the AudioPlayer not re-rendering the audio waveform
- Fixed sounds rarely cutting each off when a Sound marked as Spam priority was being played constantly
- Fixed Audio Music Zone continuing to play after switching scenes