The Latest Social Features for Developers: Deep Linking, Destinations, Spatial VoIP and more

Oculus Developer Blog
Posted by Mike Howard
October 2, 2019

Hello, I’m Mike Howard, Product Manager for Platform SDK and Avatar SDK. I have been working to improve social presence and connectivity in VR since the launch of the original Oculus Avatars at OC3. Prior to this, I worked on Facebook’s Events platform, having been involved in the live events space for several years. Today I’m going to discuss the new features we announced last week at OC6. These will help you to build social experiences with improved social presence, and enable users to seamlessly connect into them from our platform and beyond.

Destinations + Deep Linking API

We want to enable people to seamlessly connect into and between social experiences in apps on our platform. We're doing this with Destinations and Deep Linking.

Destinations allow developers to define different places in their app, ranging from a game mode to a specific lobby or level. By displaying contextual rich media and information like the number of people a specific destination can support, we are able to showcase these destinations across our platform.

Destinations are coupled with updates we’ve made to Deep Linking, to provide more structured data as an app is launched. With our new deep link data, developers are able to direct one or more users into a specific experience.

The combination of these features enables us to create many more ways for people to discover and engage with your app, including:

  • Allowing users to schedule events for a specific game mode or place in the app
  • Recommending a destination to a group of users in a Party, based on the capacity of the destination and their interests
  • Highlighting in-app content using new features like Developer Posts, with a deep link that takes users directly to the content, and more

Destinations will also be available off platform. Each destination has a URL that can be shared or embedded. Whether it’s on social media, a forum or website, this link will launch a preview on and give users the ability to remotely launch content on their Oculus Rift or Quest from any web browser. This is a game changer for distribution and engagement that we hope developers will make great use of.

Rich Presence API

Rich Presence is built on top of destinations and deep linking to help users seamlessly connect in VR. With rich presence, users will be able to see the status and specific location of their friends and, with minimal friction, launch the app and join them. Rich Presence will appear both in VR, and out of VR on the Oculus companion apps. The feature is also used to highlight popular destinations, which users can launch directly.

Along with enabling users to share their status to the platform, the Rich Presence API allows you to query for the location and status of friends and party members who are in your app, so that you can show UI that helps people meet and navigate within your app.

With user privacy in mind, we’re updating the Activity privacy settings, so that people can control how their Rich Presence in shared to others on the platform. It will now be possible to disable presence updates for individual apps, giving users even more control over what information is visible to other players.


Until now, leaderboard visibility has been restricted to within specific apps only. Today we announced a number of upcoming updates to Leaderboards that are sure to get users returning for the high score.

Users can now get a notification if their high score has been beaten by a friend, both in VR and on the Oculus mobile app. We’re also showcasing high scores from friends with a brand new set of social stories. These updates will help keep your audience informed and engaged as they look to stay at the top of your game’s leaderboard.

We’ve created a new section for Leaderboards, where users can browse their scores and compare them with friends and the community. Leaderboards are also being integrated with Destinations and Deep Linking, so that users will soon be able to quickly launch to the right level of an app to challenge their friend’s score and reclaim their glory.

Making Avatars SDK more accessible, and more expressive!

Oculus Avatar SDK enables a more authentic avatar experience and is used by a number of apps across Quest, Rift, Go, and even Steam with our cross platform support.

Earlier this year we updated the SDK with new features to make avatars more expressive and believable, including physically modeled eye kinematics, blink characteristics and nuanced facial animations for speech and micro-expressions. Recognizing that developers need different avatars for different experiences, we’re making the Avatar SDK more versatile, allowing developers to use these features for any avatar style.

We are also adding a new API which provides an expanded model for human animation, taking into account tracked head and hand inputs and simulating the position of the spine, shoulders and elbows. The API provides a physics based body pose inference, taking into account whether a pose is likely and coherent with previous poses. This performant and more accurate representation of the user improves social presence by unlocking body language in a way that doesn’t break immersion. And these new APIs will serve as the single access point for the user pose, with a single, unified rig representing body simulation, lipsync, headset, controller and hand tracking.

Spatial VoIP

With all of these updates to behavioral fidelity, we’re also keen to enable developers to deliver scalable, immersive Voice over Internet Protocol (VoIP) which grounds people in their social experience.

High fidelity, spatialized audio is quite resource intensive, and this is multiplied when you have a massive number of users adding to the number of real-time audio channels. We’re addressing this problem with Spatial VoIP.

We originally built this feature to enable hundreds of users to enjoy live concerts, sports events and movie screenings in Oculus Venues. Spatial VoIP provides a way for a developer to send both mic and positional data to a service which performs an ambisonic mixdown, taking into account all of the users and their position in a scene, and generating an ambisonic audio stream. This can then be interpreted based on the user’s orientation in an experience, so that they can hear the words coming from another person’s mouth.

Spatial VoIP will support up to 50 users at an incredibly low performance cost per frame, regardless of how many users are together, unblocking larger scale social experiences.


  • With Rich Presence and Destinations you can now populate the data to help connect people into places within your experience. We’re also adding enhancements to deep linking, which allows users on any device to launch into a specific place in your app on their VR headset.
  • Leaderboards are being updated to make your app more discoverable and engaging.
  • We’re making it easier to deliver great social presence, by making it possible to access improved avatar behavioral simulation (including a new body simulation API) and unlocking immersive audio at scale with the Spatial VoIP API.

For more information about all of these features and tools, feel free to check out my OC6 Presentation:

Keep an eye out on the Oculus Developer Blog for a follow up to this series of announcements, including a set of best practices for integrating these new features, and feel free to post any questions or feedback in the comments below. We look forward to seeing what you create with all of these new tools and features!