C# worker SDK
The C# worker SDK is one way to develop SpatialOS games with the worker SDK. It is for writing workers using C#.
The SDK provides functionality to write a worker that:
- connects to a SpatialOS simulated world (see Connecting to SpatialOS)
- can subscribe to information for a part of the world (see Handling data received from SpatialOS)
- can send and receive component updates (see Sending data to SpatialOS)
The SDK also includes methods to load and save snapshots of the entire simulation from and to a file. (See Manipulating snapshots.)
A typical C# worker uses both the core API defined in
the Improbable.Worker
namespace, and C# generated code
based on the user-specified simulated world schema.
Using the C# worker SDK
The C# worker API closely mirrors the C++ worker API.
The most important units of functionality in the C# worker API are:
- The
Improbable.Worker.Locator
, which is responsible for querying for and connecting to remote cloud deployments. - The
Improbable.Worker.Connection
, which represents a worker’s connection to a SpatialOS simulated world. - The
Improbable.Worker.Dispatcher
, which is responsible for invoking user-provided callbacks based on data received from SpatialOS via theConnection
. - The
Improbable.Worker.Entity
, which is a container for the component data associated with a single entity.
For more, see either the C# API reference documentation, or the pages under “Using the C# SDK” in this section.
C# blank project
You can use the C# blank project as a starting point for a project using the C# SDK, or to add a C# worker to an existing SpatialOS project.
Game engine integrations
The APIs are lower-level than the a game engine integration like the Unity3D integration.
If you’re using a game engine we don’t have an integration with, you can use this SDK to integrate that game engine with SpatialOS. See Integrating an engine for details.