The shared resource
element_sdk is installed once and used by every product. It is what makes products behave the same
way as each other: the same file layout, the same way of reading configuration, the same console
messages, the same connections to the framework and inventory you already run.
Products do not carry their own copy of it. They use the installed one at runtime, which is why
updating element_sdk reaches every product at once, and why the SDK must be running before any
product starts.
See The Element SDK for what you configure through it.
Product resources
Each product is one directory containing everything it needs: the files you configure, the text players see, its interface, and any models or textures it adds to the world. What is inside is described in What is inside a product resource. Each product states the SDK versions it accepts rather than one exact version, so an SDK update inside that range needs no action from you. See SDK version requirements.What the split means in practice
- You install one SDK and any number of products beside it.
- You update the SDK independently of the products.
- Two products never disagree about how configuration works, because neither of them implements it.
- A product that cannot find a suitable SDK stops at start rather than failing later.