Version 6.1.0

This release includes a number of features and fixes which we've accumulated while supporting people during the last couple of months.

The biggest change is that Dissonance can now be placed anywhere in your project without any extra work! When you place Dissonance into a project it will automatically check where it has been installed and then rewrites a single line of code to include the path to itself.

There is an issue with Unity preventing Android plugins for the x86 platform from properly compiling when using Unity 2017.2 or greater. This is due to an issue which has been reported to Unity (Android plugin CPU architecture cannot be set to x86, it always defaults back to ARMv7). Compiling for the vast majority of Android devices is unaffected! Due to this the Android/x86 binaries have been removed from the release package.

Integrations

SALSA Lip Sync
Upgrade Available!
Realtime automatic lip synchronisation for Dissonance speaking using SALSA.
Playmaker
Upgrade Available!
Adds support for controlling channels (who is speaking to whom) using Playmaker.
Forge Remastered
Use the Forge Remastered Networking system to host a Dissonance voice chat session.
Forge
Use the Forge Networking (Classic) system to host a Dissonance voice chat session.
Photon Unity Networking
Use the Photon Unity Networking system to host a Dissonance voice chat session.
UNet (HLAPI)
Use the Unity (UNet) High Level API Networking system to host a Dissonance voice chat session.
UNet (LLAPI)
Use the Unity (UNet) Low Level API Networking system. This hosts it's own LLAPI session and could potentially be used in conjunction with most other networking systems.
Photon Bolt
Use the Photon Bolt Networking system to host a Dissonance voice chat session.
Steamworks.NET P2P
Use Steamworks.NET to host a peer to peer voice chat session.

New Features

  • New installer process automatically locates Dissonance, allowing it to be installed anywhere in the project (#75)
  • Showing an error message in the VoiceReceiptTrigger and VoiceBroadcastTrigger inspectors when no room is selected
  • Decoding channel data as soon as the first voice packet is received. This means that `GetSpeakingChannels` will return useful information when `PlayerStartedSpeaking` is called.
  • Additional sanity checks to ensure that the networking packet writer never writes out of bounds

Bug Fixes

  • Prevented IsNetworkInitialized from throwing if checked before `Start` is called (#76)
  • Relocated the MacOS binaries to fix the MacOS build process for 2017.3 and higher (#79)
  • Always using network order (Big endian) for network packet headers
  • Prevented inspector throwing exception if inspecting a playback prefab when play mode is active
  • Fixed DissonanceComms inspector from refusing to accept custom playback prefabs

Known Issues

  • Changing the microphone device does not work with Unity 2017.2 and higher. This is a Unity regression. (#74)