LogoLogo
⚠️ Outdated documentationGo to LatestHomeAPI
SDK 1.2
SDK 1.2
  • Welcome
  • Overview
    • How does coherence work?
    • Rooms, Worlds and Lobbies
    • Features and Roadmap
  • Learn
    • Beginner's guide to networking
    • Package samples
    • First Steps tutorial
      • 1. Basic syncing
        • 1.2. Animation parameters
        • 1.3. Sending commands
      • 2. Physics / Authority transfer
      • 3. Areas of interest
      • 4. Parenting entities
      • 5. Complex hierarchies
      • 6. Persistence
    • Campfire project
      • Game mechanics
      • Leveraging object pooling
      • Remote interactions: Chairs
      • Remote interactions: Trees
      • A unique object with complex state
      • Custom instantiation and destruction
      • Running a server-side NPC
      • Playing audio and particles
      • A simple text chat
    • How to network [genre]…
      • Racing
      • Turn-based
      • First-Person Shooter
      • MMO
      • Fighting
    • Video tutorials
  • Get started
    • Install coherence
    • Scene Setup
      • Sample UIs
    • Prefab setup: CoherenceSync
    • Local Development
      • Local Testing via Player Builds
      • Local Testing via Unity's Multiplayer Play Mode (MPPM)
      • Local Testing via ParrelSync
    • coherence Cloud
      • Create a free account
      • Deploy a Replication Server
      • Share builds
  • coherence SDK for Unity
    • Upgrade Guide
      • Upgrade 1.1 -> 1.2
      • Upgrade 1.0 -> 1.1
      • Upgrade 0.10 -> 1.0
      • Upgrade 0.9 -> 0.10
    • Components
      • CoherenceSync
      • CoherenceBridge
      • CoherenceLiveQuery
      • CoherenceTagQuery
      • Order of execution
    • Asset Management
      • Using CoherenceSyncConfig to instantiate GameObjects locally
    • Networking State Changes
      • Supported types
      • Messaging with Commands
      • Syncing child GameObjects
      • Parenting network entities
        • Direct child CoherenceSyncs
        • Deeply-nested CoherenceSyncs
        • Nesting Prefabs at Edit time
      • Animation
      • CoherenceSync references
      • [Sync] and [Command] Attributes
      • [OnValueSynced] Attribute
      • Creating your own syncable member
      • Custom Component Actions
    • Baking (code generation)
    • Scene Management
    • Authority
      • Authority transfer
      • Server-authoritative setup
    • Lifetime
      • Persistence
      • Uniqueness
      • Example – a global counter
    • Optimization
      • Simulation Frequency
      • Areas of Interest
      • Level of Detail (LOD)
    • Profiling
    • Interpolation
    • Rigid Bodies
    • Settings
    • Simulation Frame
    • Replication Server
    • Simulators
      • Scripting: Client vs Simulator
      • Local Development
      • World Simulators
      • Room Simulators
      • Simulator Slugs
      • Multi-Room Simulators
      • Build and Publish
      • Command-line arguments
      • Load Balancing
    • Client-Hosting
    • Client Connections
    • Rollback Networking Support
    • World Origin Shifting
    • Offline gameplay
    • CLI
    • Code Stripping
    • Version Control Integration
  • Hosting & Cloud
  • coherence Cloud
    • Developer Portal
    • Dashboard
    • Worlds
    • Rooms
    • Lobbies
    • Game Services
      • Account
      • Key-Value Store
    • Using coherence Cloud in Unity
      • Worlds
      • Rooms
      • Lobbies
      • Game Services
        • Authentication Service (Player Accounts)
        • Key-value store
  • Schema explained
    • Overview
    • Specification
    • Field settings
    • Archetypes
  • coherence API reference
  • Additional resources
    • Community
    • Continuous Integration
    • Unreal Engine Support
    • WebGL Support
    • Peer-to-Peer Support (P2P)
    • Glossary
  • Credit cost & pricing
  • Known Issues and Troubleshooting
  • Release Notes
Powered by GitBook
On this page
  • What is coherence?
  • Network engine
  • Authority models
  • Persistence
  • Engine support

Was this helpful?

Export as PDF

Overview

Was this helpful?

What is coherence?

coherence is a network engine, platform and a series of tools to help anyone create a multiplayer game.

  • Fast network engine with cloud scaling, state replication, persistence and auto load balancing.

  • Easy to develop, iterate and operate connected games and experiences.

  • SDK allows developers to make multiplayer games using Windows, Linux or Mac, targeting desktop, console, mobile, VR or the web.

  • Game engine plugins and visual tools will help even non-coders create and quickly iterate on a connected game idea.

  • Scalable from small games to large virtual worlds running on hundreds of servers.

  • Game-service features like and .

Network engine

At the core of coherence lies a fast network engine based on bitstreams and a data-oriented architecture, with numerous optimization techniques like delta compression, quantization and ("Level of Detail") to minimize bandwidth and maximize performance.

Authority models

The network engine supports multiple authority models:

  • Client authority

  • Server authority

  • Server authority with client prediction

  • Authority handover (request, steal)

  • Distributed authority (multiple simulators with seamless transition)

  • Deterministic client prediction with rollback ("") - experimental

Persistence

coherence supports persistence out of the box.

This means that the state of the world is preserved no matter if clients or simulators are connected to it or not. This way, you can create shared worlds where visitors have a lasting impact.

Engine support

Sounds interesting? Check out the full article on .

Here's more info on how coherence handles .

The coherence SDK only supports Unity at the moment. Unreal Engine support is planned. For more specific details and announcements, please check the page. For custom engine integration,.

user account
key-value stores
network LOD-ing
GGPO
Authority
Persistence
Unreal Engine Support
please contact our developer relations team