This project structure is a proposition. You can use it, modify it or get inspired by it.
All the data is in
Assets/Game. We do not use
Assets as root folder because all external modules are installed in it. This isolates the content of your application.
Application directory is dedicated to developers. It contains scripts, main shaders, main materials and functional prefabs.
- FSM: 1 folder per StateMachine
- GameEntity: states, aspects and their icons are in
MyProject_MyIcon.png; type Editor GUI and read/write enabled)
- GameManagement: all managers with dedicated directory if there are many files
- Inputs: if you want to create your own input system using Wonderland Inputs module; Action, Bridge folder, Hardware folder and PlayerInput
- Materials: special materials never edited by integrators
- Shaders: special shaders never edited by integrators
- ShaMats: in place of Materials/Shaders, if you need a both folder.
- Misc: misc behaviours
- And others...: inventory system, database... Whatever you want
All other directories are used by integrators. The goal is to simplify the project structure to non developers. They can re-organize the content how they want without any impact on the game core.
- Audio: Game sounds and musics
- Data: All configuration files (mainly instantiated ScriptableObjects)
- Effects: FX elements
- Entities: models, materials and textures ordered by object. Note that you do as you like, you can replace this folder by Textures, Materials, Prefabs... It is mainly the artist's and integrators choice.
- Interfaces: Textures, animations, prefabs..
- Physic: physic materials
- Scenes: project scenes
Tools/Wonderland/Editor Tools/Init structure, select a tar file to create automatically the project structure.
Wonderland standard structure