Directory Hierarchy Standard defines the logic behind the organization of file structure both in the project and the Core itself. As long as the Core and the game that uses it are separate projects, the highest level of the directory hierarchy is as follows:

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/1fbff8fc-a5cd-42af-82d9-f0230b5af110/969B7B31-AED1-4334-8E42-9BA0CE0EC731.png

Core Directory Hierarchy

File structure of the Core corresponds to the pages structure of the effective documentation. Template of the hierarchy is as follows:

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/94ee05cb-014c-4dde-a5cc-48e4cf36ead4/A8BE525D-E771-4512-B025-82D24B6C169E.png

Similar to effective documentation, root directory holds the main subdirectories: Fundamentals and Systems. The structure of subfolders in all subdirectories is the same. First goes the folder with the name that corresponds to the Core element (e.g. DirectoryHierarchyStandard), that holds all the files related to it. Standard does not force the user to follow any particular hierarchy below the Core element, but it is recommended to use subfolders Core and Example, which hold mandatory and demonstrational assets accordingly.

Every directory, starting with the highest level and ending with the level of the Core element, should have a reference to the respective page of the effective documentation (e.g. as it is made in the directory of this Standard):

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/fd445fe2-8129-44d4-a4ac-98ae6546a6cd/90C8BD16-71D8-407F-9E49-2094D3106140.png

Game Directory Hierarchy

The logic behind the organization of the project's file structure is to define all game entities and their respective hierarchical subordination. For example, if the game has game entity "Character" that has a few variants of game entity "Costume", then:

  1. Assets related to the game entity "Character" would be contained in Character folder;
  2. Assets related to the game entity "Costume" would be contained in Costume folder;
  3. Costume folder would be contained in Character folder, thus demonstrating the dependence of "Costume" entity on "Character" entity.

If the entity has a few exemplars and there are some shared assets within this entity, it is recommended to enclose shared assets to the Base folder, and to create a separate folder for every exemplar.

In case the lowest level of project's decomposition on entities is reached, it is recommended to compartmentalize files on this level by types (i.e. Meshes, Materials, Textures, Scenes etc.).

Standard does not regulate any particular hierarchy for Game directories, as the projects, which use the Core, may differ. To see the example of hierarchy organization it is possible to examine the gaming templates in the Instarion Core project, as well as the following demonstrational scheme: