Sites

Menu

Feature Modules Overview

The SpatialOS GDK for Unity consists of a set of modules: the core packages and Feature Modules.

Core packages

The core packages provide the base implementation for:

  • generating code from schema
  • synchronizing your worker instance’s local state with the SpatialOS Runtime
  • exposing SpatialOS data in both the ECS and MonoBehaviour workflows
  • providing in-Editor tooling for local development

The core packages are delivered as UPM packages. You can add them to your project by opening the Packages/manifest.json file and add the following:

{
  "dependencies": {
    "io.improbable.gdk.core": "0.2.10",
  },
  "scopedRegistries": [
    {
      "name": "Improbable",
      "url": "https://npm.improbable.io/gdk-for-unity/",
      "scopes": [
        "io.improbable"
      ]
    }
  ]
}

Feature Modules

Feature Modules provide optional features such as player lifecycle management or transform synchronization. Feature Modules are intended to both:

  • give you a head-start in the development of your game
  • act as reference material for best practices

Feature Modules are also delivered as UPM packages. Please see the feature module specific documentation for installation instructions.

Build System

This feature module provides tooling for building your GDK for Unity workers inside the Unity Editor.

See the Build System documentation for details on installation and usage.

Deployment Launcher

This feature module contains Unity Editor tooling for uploading assemblies, and managing SpatialOS deployments.

See the Deployment Launcher documentation for details on installation and usage.

GameObject Creation

This feature module contains a default implementation of spawning GameObjects for your SpatialOS entities and offers the ability to customize that process.

See the GameObject Creation documentation for details on installation and usage.

Mobile

This feature module offers support to connect mobile client-workers to SpatialOS.

See the Mobile documentation for details on installation and usage.

Player Lifecycle

This feature module provides player creation functionality and a simple player lifecycle management implementation.

See the Player Lifecycle documentation for details on installation and usage.

Query-based Interest Helper

This feature module contains methods that enable you to easily define the Interest component used by Query-based interest.

See the Query-based Interest Helper documentation for details on installation and usage.

Transform Synchronization

This feature module contains functionality that will automatically synchronize your entities’ transform.

See the Transform Synchronization documentation for details on installation and usage.

Search results

Was this page helpful?

Thanks for letting us know!

Thanks for your feedback

Need more help? Ask on the forums