Let’s look at some of the work that High Fidelity has done to help safe and engaging social interactions in virtual reality.
The People App
The in-world High Fidelity interface is built around the user’s tablet, a virtual object that’s we hope creates a familiar interaction model from the real world in virtual reality.
One of the most important features of the user’s tablet is the People App. The People App provides a set of tools that help users manage their interactions with people that choose to remain anonymous, those that have shared a display name, and those that have shared elements of their user identity.
A Safe Online Buddy List
High Fidelity does not require users to broadcast (e.g. publicly display) or share their username in order to interact with others. Instead, users can present a “display name” or be marked as an anonymous user.
However, persistent social connections between users are based on mutual recognition and, as such, on the choice to share some elements of “real” identity. The People App allows users to engage with others with different levels of sharing.
The sharing of usernames automatically adds users to each other’s list of connections. Users can modulate their connection with others, however, changing another user to a friend or dissolving a mutual connection altogether.
Identifying Nearby Avatars, Connected to You or Not
In addition to your connections list, the People App gives users a list of the people nearby (e.g., in the same domain).
As can be seen in the graphic, known users display their usernames in blue separate from their public display name. All users show a display name, so that everyone present can reliably refer to the same person.
To help users find people and sort out who is who, the avatars of everyone listed are also highlighted with a clickable dot. Selecting someone in the list, selects their avatar (and vice versa) making it easy to connect an avatar to a person in the People App. The clickable avatar dots are visible in the dark and through walls, and are always the same size regardless of distance or the size of their avatar. The changing volume bars in the list, and corresponding brightness of the avatar nodes, help you to identify who is talking.
Taking Preventative Action on Nearby Users
So far, we’ve talked about features that enable communication. Users can also use the People App to “ignore” others on the nearby list. “Ignoring” makes both users invisible and inaudible to each other. If ignored, a user will still appear in the nearby list. This makes it possible to “un-ignore” the user if it is appropriate to do so.
The ignore features makes it possible for users to control who they see and whether they see them. It is also possible to mute users, so that they are visible, but neither party can hear the other.
Automatic Ignore Within Your Personal Space
The People App also offers an automatic ignore feature that effectively creates a protective bubble around the user, creating a safe personal space.
If someone enters a users personal space they get a “shields up” display and both parties are mutually ignored while they are within range of the bubble.
Although this personal-space bubble makes people automatically invisible and silent, it does not push them back: we try not to build in safety tools that could be weaponized or used to abuse others.
Ignore, mute, and the bubble do not require login. They can be used on any other user for the duration of the current session.
Connecting via a Handshake
We have also explored more innovative ways for users to establish relationships, outside of the People App. In High Fidelity, users can establish connections with people by shaking hands with them.
To do so, press the hand controller’s grip button while holding hands near each other. Everyone present sees the visuals, but only the two people shaking hands get the sounds and haptics.
If you both continue for a moment and are both logged in, the system shares usernames exclusively to the two users handshaking. There is no need to type your username or say it, and nothing is revealed to others. Shaking hands with this logged-in user again in the future automatically prompts their username, even if they are using a different avatar.
Behind the scenes, the in-world handshake is triggering a software “handshake”. First the two computers talk to each other and agree that one unique but anonymous session identifier wants to shake hands with another. When they mutually do so for long enough, each machine sends this info securely to a central server which holds the data in escrow for a few seconds until it has two matching requests. Only then are the two parties connected in the database, and the usernames revealed directly to only those two machines.
If you are in a domain that you own, you have an additional ability to ban users, an ability you can share with others. People with ban rights have two extra columns in the list of nearby users.
The silence button for each user merely presses that user’s microphone mute
button for them, which is handy if they’re (perhaps accidentally) disturbing everyone. The user can then un-mute themselves — it is not enforced by the domain server.
Here’s an example of how some of this magic happens.