These are the docs for 13.8, an old version of SpatialOS. The docs for this version are frozen: we do not correct, update or republish them. 14.5 is the newest →

Building a schema descriptor

This page explains how to build a schema descriptor in a SpatialOS project that’s using the flexible project layout (FPL).

Schema descriptor introduction

The schema descriptor is a build artifact of a SpatialOS project assembly. It allows the SpatialOS Runtime to interpret your project’s schema and is necessary for starting a SpatialOS deployment both locally and in the cloud. You can generate a schema descriptor using the schema compiler tool.

Migration advice:

In the structured project layout (SPL), the spatial CLI automatically generates the schema descriptor. For an FPL project, you need to manually generate your schema descriptor.

Schema descriptor build process

  1. Download the schema compiler.
  2. Invoke the schema compiler as follows:
schema_compiler  \
--schema_path=<my-schema-dir>  \
--schema_path=<schema-std-lib-dir>  \
--descriptor_set_out=<generated-output-dir> \
--load_all_schema_on_schema_path \
<my-schema-dir>/*.schema \
  • You need to specify the file path to your schema descriptor in your project configuration file to allow the SpatialOS Runtime to find your schema descriptor.
  • You need to regenerate your schema descriptor whenever you change your project’s schema as you iterate on your game.
  • You may want to add the schema descriptor to your .gitignore file or equivalent to avoid checking it into source control.

You can find an example of how to generate a schema descriptor here.

Search results

Was this page helpful?

Thanks for letting us know!

Thanks for your feedback

Need more help? Ask on the forums