DEV Community

Cover image for What Multi-User Adds to a VR Project: Scope, Skills and Risk
TechHub Nguyen for TechHub Asia

Posted on Edited on

What Multi-User Adds to a VR Project: Scope, Skills and Risk

What changes when a VR project becomes multi-user: authority, latency, identity, voice, permissions and backend, with a scoping checklist.

Making a VR project multi-user adds six areas of work that a single-user app does not have: state synchronization and authority, latency handling, identity and authentication, voice, permissions and session management, and backend operations. Each one adds scope, needs different skills and carries its own risk. The decision with the widest consequences is the authority model, meaning who is allowed to decide the shared state, and it is best settled before estimating anything. This guide walks through each area, the test strategy shared VR needs, the skills to hire for, and a scoping checklist.

It is written for technical leads and product managers planning a shared VR experience. It is not a netcode tutorial. Tool names and statuses change quickly, so check each vendor's current documentation before committing.

Single-user versus shared: what actually changes

In a single-user app there is one simulation and one source of truth. In a shared app, several running instances, each on its own headset, must agree on what is true. Every user's head and hand positions, every object they touch and every change to the environment becomes data that must be agreed, transmitted and reconciled.

Engines handle part of this, but the design decisions stay yours. Unreal Engine uses a client-server architecture in which the server holds the authoritative game state and clients simulate an approximation of it. A useful side note from the same documentation: gameplay written for multiplayer still works in single-player, which is one reason many teams design for networking from the start instead of retrofitting it. The second half is general engineering experience, not a documented rule.

The six areas of added scope

1. State synchronization and authority

The first decision is who is in charge of the shared state. The main options:

  • Server-authoritative (client-server). Unity's Netcode for GameObjects assumes a client-server topology by default, where the server owns networked objects and has ultimate authority. Unreal's documentation says dedicated servers suit games with many players, or those needing a trusted server for security, fairness or reliability.
  • Distributed authority. Netcode for GameObjects also supports a distributed authority topology, where authority is spread across clients. Unity describes the main differences between the two models as cost, security and latency. It also advises evaluating your tolerance for cheating before choosing distributed authority, and notes that one client acts as the session owner, managing global state.
  • Vendor-provided topologies. Photon Fusion for Unity supports shared, client-host and dedicated-server topologies.

The right choice depends on trust, cost and session size. A collaborative design review among colleagues has a different cheating tolerance from a public social space. Pick the model deliberately and record who made the decision, because changing it later touches most of the networked code.

VR adds its own load to synchronization. Each user's head and both hands are tracked continuously, so avatars require a steady stream of pose data. Objects that users hold need a clear ownership rule: who controls a held object, and what happens when it is passed to another user or two users grab it at once. These are design points to settle early. They are not features to bolt on.

2. Latency and prediction

Network latency cannot be removed, only managed. With a client-server topology, latency depends heavily on the location and architecture of the server, so where servers run matters as much as the code.

A principle widely used in practice, which this article treats as analysis: a user's own head and hand movement should be rendered locally without waiting for the network, while remote users' movement is smoothed over the data that arrives. Waiting on the network for your own view would be uncomfortable in a headset. Decide early which actions need immediate local response, which can tolerate delay, and how you will show remote users when updates arrive late.

3. Identity and authentication

Shared VR needs to know who is present. On Quest, Meta provides a verification flow for this. The client generates a nonce, your trusted server validates it through a server-to-server call, and the result confirms the Meta account is valid for the user presenting it. Meta states that this does not replace the entitlement check, and that Platform SDK features require a Data Use Checkup before they work beyond test users. That last point is schedule risk: plan for the review time.

Enterprise projects often also need to connect to the organization's own sign-on and user directory. That is an integration task with its own skills and security review. It is not an engine feature.

4. Voice

Voice is often what makes shared VR useful, and it is a separate subsystem from state sync. Decide whether you need spatial or proximity voice, how users mute and are moderated, and whether anything is recorded or stored. Recording and retention raise privacy and consent questions that belong with legal advice, not with the engine. For tooling, Photon lists a dedicated voice product that covers team, proximity and spatial voice, and other vendors and platform services exist. Confirm each option's current status and its support for your engine and headset before choosing.

5. Permissions and session management

A shared space needs rules. This area is analysis. Define:

  • Roles. Who can present, edit, annotate, or only view?
  • Access. Who can create, join or be invited to a session?
  • Moderation. Who can mute or remove someone?
  • Lifecycle. What happens when someone joins late, drops and reconnects, or the host leaves?

Late join is an easy one to underestimate. A newcomer needs the current state of the world, not only future updates, and that state has to be stored and sent.

6. Backend and operations

Shared VR usually needs infrastructure beyond the headset app: servers or relay services, session and matchmaking services, persistence of shared data, analytics, monitoring and a way to deploy updates. Each brings running costs and an on-call burden. The pillar notes that backend, accounts, analytics and multiplayer expand scope beyond the headset application. This is where that scope shows up.

Tooling categories and current status

These are categories to evaluate, not recommendations. Tool statuses change, so verify each before relying on it.

State synchronization

When building networked spatial experiences, state synchronization is the foundational layer. Examples named in this article include engine-native replication in Unreal, Netcode for GameObjects in Unity, and Photon Fusion.
What to confirm: Engineering teams must confirm supported network topologies, exact engine and version compatibility, and the ongoing maintenance status of the selected solution.

Session and hosting

Managing how users connect requires selecting the appropriate infrastructure, such as vendor-hosted services, dedicated servers, or host-based sessions.
What to confirm: Leadership must evaluate the underlying cost model, available hosting regions, and absolute scaling limits before committing to an architecture.

Identity

User authentication in spatial computing often bridges consumer platforms and enterprise systems, utilizing standard platform account verification or organization sign-on.
What to confirm: Security teams must verify all platform review requirements and mandate strict server-side validation to prevent unauthorized access.

Voice

Real-time communication relies heavily on specialized vendor voice products integrated directly into the spatial environment.
What to confirm: Technical leads must evaluate spatial audio support, available moderation tools, and strict data retention policies.

Backend and analytics

Tracking user behavior and application state requires robust backend infrastructure, typically relying on custom APIs or managed services.
What to confirm: Organizations must prioritize verifying the exact data storage location, passing a comprehensive security review, and projecting the long-term operating cost.

On status: Photon's documentation, as of July 2026, lists Fusion 2 as current for Unity, with Fusion 3 SDKs for Unreal and Godot, and describes PUN 2 as in maintenance mode, with new projects pointed to Fusion or Quantum. If your team inherits a PUN-based codebase, treat the migration as a scoping item.

Test strategy for shared VR

You cannot validate a shared experience with one headset and one editor session. The extra testing effort is real, so budget for it. These are recommended practices, not documented requirements:

  • Multi-device runs. Test with several real headsets in the same session, not only editor instances.
  • Bad networks. Test under added latency, jitter and packet loss, and check that the experience degrades gracefully.
  • Join, leave and reconnect. Test late joiners, abrupt disconnects and reconnecting users.
  • Role and permission checks. Confirm that restricted roles really are restricted.
  • Performance with N users. Each additional avatar adds work. Re-run your profiling on the target headset with the maximum expected number of users.
  • Soak tests. Run long sessions to expose memory growth and state drift.
  • Load tests on the backend, independent of headsets.

Write the acceptance criteria before building. For example: the maximum users per session you will support, the network conditions the experience must tolerate, and the behavior expected on reconnect.

Skills to hire for

Shared VR spreads work across more disciplines than single-user. A common split, which is an editorial suggestion:

  • VR engineer with networking experience: synchronization, authority, local prediction, interaction ownership.
  • Backend engineer: session services, identity integration, persistence, APIs.
  • DevOps or site reliability engineer: deployment, monitoring, scaling, incident response.
  • QA with a multi-device setup: coordinated tests across headsets and network conditions.

One person rarely covers all of this. For a broader view of VR developer skills for multiplayer projects, including how they fit into the wider role definition, see TechHub Asia's overview.

Scoping checklist

Copy this into your project documents. Each row names the decisions to settle and the question to put to a vendor or candidate.

Authority and topology

When engineering networked environments, teams must settle on the core architecture by choosing between client-server, distributed authority, or host-based models, while explicitly defining who owns held objects. Leadership must ask the foundational question, "Which model, and why, for our trust and cost needs?" Failing to address this early carries the severe risk of forcing a late redesign of networked code.

Latency and prediction

To maintain user immersion, developers must finalize decisions regarding locally rendered actions, remote smoothing, and server regions. Leadership should challenge the technical team by asking, "How do you keep a user's own movement local?" Skipping this evaluation results in physical discomfort and a completely unusable experience for the end user.

Identity

Securing access requires settling parameters around platform accounts, organization sign-on, and strict server-side validation. Security stakeholders must ask, "Who validates identity, and where?" Ignoring these constraints leads directly to security gaps and platform review delays.

Voice

Real-time communication demands immediate decisions on whether audio should be spatial or standard, alongside establishing clear moderation and recording policies. Technical leads must ask, "What is stored, and for how long?" Proceeding without these answers creates massive privacy and legal exposure.

Permissions and sessions

Managing active environments involves configuring user roles, invites, late joining mechanics, and session reconnection logic. Engineering teams must proactively ask, "What happens when the host leaves?" Overlooking this architectural detail will consistently result in broken sessions.

Backend and operations

Long-term project viability relies on finalizing plans for hosting, data persistence, active monitoring, and overarching operational costs. Leadership must secure the future of the product by asking, "Who runs it after launch?" Neglecting this handoff directly results in unplanned running costs.

Testing

Validating multiplayer environments requires settling the exact physical devices to be used, simulating diverse network conditions, and proving N-user performance limits. Quality assurance teams must ask, "How will we test with many headsets?" Bypassing this crucial scale testing guarantees that critical failures will be found only in production.

A short, tool-neutral record of the key limits also helps. This template contains placeholders only:’

multi_user_scope:
  max_users_per_session: ?          # drives topology, cost and performance budget
  authority_model: ?                # client-server | distributed | host-based (name an owner)
  target_headsets: ?
  tolerated_network:
    latency_ms: ?
    packet_loss_pct: ?
  voice: ?                          # none | spatial | team; recording yes/no
  identity: ?                       # platform account | organization sign-on
  roles: ?
  late_join_and_reconnect: ?        # required behavior
  backend_owner_after_launch: ?
Enter fullscreen mode Exit fullscreen mode

The takeaway

Treat multi-user as a different project, not a feature. Settle the authority model first, write acceptance criteria for latency, reconnect and user count, budget for backend and multi-device testing, and staff for more than one discipline. If those answers are unclear, the estimate will be too.
Check our full hiring guide

Contact TechHub Asia

Top comments (0)