Flipside Update #32 - Server-based multiplayer

- by Lux

Please note: This update includes some big changes which we wanted to give everyone time to test out safely and adapt to their projects, so to try it out you'll need to opt into our Beta release channel. Instructions on switching between release channels can be found here.

Server-based multiplayer

When we started Flipside, we quickly realized that latency was a big deal for the actors we were working with. A joke that takes 300 ms to get a reaction often fails to land. That's why we based our multiplayer system around peer-to-peer, so that studios with actors on the same local network could achieve ultra-low latency communication between actors.

However, peer-to-peer networking still presents a number of challenges for users over a distance, particularly around firewalls and restrictive network settings. We wanted to be able to support completely remote teams as well, so this release is the first to introduce a second multiplayer option that uses a server-based back-end, powered by Normcore.

You'll notice a new toggle on the Friends panel that lets you choose which type of multiplayer connection you'd like to use. Choose one then send your invites and everything should just work from there.

This new multiplayer option has two benefits for remote teams:

  1. You shouldn't have to fight with network settings to get a reliable multiplayer connection. It should just work.
  2. The further you are away from each other, the faster going through a server is going to be compared to peer-to-peer. Sessions are automatically created in the closest region to you to minimize latency.

Note: Multiplayer connections are only compatible between stable-to-stable users or beta-to-beta users at this time.

Texture-based faces now support facial expressions and blinking

Texture-based faces now have a new mode which adds facial expressions as well as blinking. To set it up, add a new FacialExpressionReference component to your character underneath the AvatarModelReferences component, assign a mesh in its Meshes list, set the Expression Type to the new Combo Textures option, and add your textures.

Here's how the textures break down:

Head over to the Flipside Creator Tools page to grab the latest version (v0.28).

Improved voice recording quality

We've noticeably improved our audio quality when it comes to capturing actor's voices.

Previously Flipside was limited to VoIP-level audio quality (16 kHz), which is great for networking but not great at capturing the full range of the human voice. This release increases that to 24 kHz, which means we're able to capture 50% more of the upper range of an actor's voice.

Other fixes and improvements

  • Fixed an issue causing mouths to hang open on some characters.
  • Fixed an issue causing set changes not to save to the local cache.
  • Fixed an issue where ToggleElement components weren't remembering their values in saved setups.
  • Fixed handheld camera disappearing on loading or playing takes.
  • Added separate options to the Flipside Creator Tools to generate characters with and without colliders (you can still add them later).
  • Numerous performance optimizations.