Last updated
Last updated
coherence is a network engine, platform, and a series of tools to help anyone create a multiplayer game.
Our network engine is our foundational tech. It works by sharing game world data via the and passing it to the connected Clients. The Clients, in this context, can be regular game Clients (where a human player is playing the game) or a special version of the game running in the cloud, which we call "Simulator".
While coherence's network engine is meant to be , we offer SDKs to integrate with popular engines (for instance, Unity).
But coherence is not just an SDK.
For more information about how a network topology is structured in coherence, check out this video:
A lean and performant smart relay that keeps the state of the world, and replicates it efficiently between various Simulators and game Clients.
A special version of the Game Client without graphics (a "headless client"), optimized and configured to perform server-side simulation of the game world. When we say something is simulated "server-side", we mean it is simulated on one or several Simulators.
An easy-to-manage platform for hosting and scaling the backend for your multiplayer game. The coherence Cloud can host a Replication Server, but also Simulators.
Our cloud-backed dashboard, where you can control all of the aspects of a project, configure matchmaking, Rooms, Worlds, and keep an eye on how much traffic the project is generating.
The coherence Unity SDK provides a suite of tools and pre-made Unity components, and a designer-friendly interface to easily configure . It also takes care of generating via a process called "Baking". In fact, simple networking can be setup completely without code.
The is a platform that can handle scaling, matchmaking, persistence and load balancing, all automatically. And all using a handy . The coherence Cloud can be used to launch and maintain live games, as well as a way to quickly test a game in development together with remote colleagues.
The Replication Server usually runs in the , but developers can start it locally from the command line or the Unity Editor. It can also be run on-premise, hosted on your servers; or be hosted by one of the Clients, to create a scenario (Client-hosting).
A regular build of the game. To connect to coherence, it uses our.
Clients (and Simulators) can define (Live Queries), levels of detail, varying simulation and replication frequencies and other to control how much bandwidth and CPU is used in different scenarios.
This is the process of specific to the game engine that takes care of network synchronization and other network-specific code. This is also known as "baking", and it's a completely automated process in coherence, triggered by just pressing a button. You can however for very advanced use cases.
In addition, every project can have a showcase page where you can host !
For more coherence terminology, visit the .