Note: Typically you want to delegate authority of the transform components to a server-worker. This prevents a client from changing its own position in the game world. This, of course, is subject to your own design constraints.

Add the TransformSynchronization MonoBehaviour to that entity’s prefab

As the Transform Synchronization Feature Module supports GameObjects only, you need to ensure that you have a linked GameObject to your SpatialOS entity.

Open the prefab that you want to be linked to your SpatialOS entity and add the TransformSynchronization MonoBehaviour to that prefab. It should look like the following:

What does Set Kinematic When Not Authoritative Do?

If this option is selected and there is a Rigidbody on the GameObject, the Rigidbody becomes kinematic when the given worker is not authoritative over that SpatialOS entity’s TransformInternal component.

When authority is re-gained the Rigidbody returns to the state it was in before.

The behaviour of the Transform Synchronization Feature Module is dictated by which strategies are attached to the TransformSynchronization MonoBehaviour. Each strategy can be classified as either a “receive strategy” or a “send strategy”. See our complete documentation on the transform strategies to learn what each of them do.

You may need to create instances of these strategies as they are scriptable objects. Select Assets > Create > SpatialOS > Transforms to see the available strategies.

Recommended configuration

An arbritrary number of strategies can be specified, but only one per worker type, for either send or receive should be added. The Worker Type field on the scriptable object corresponds to which worker type it will apply to.