Why folder structures matter

Greetings everyone!

We just released a blog post about the importance of folder structures for general game development and when using asset bundles. The general thesis is that the process should be artist-led but involve the whole team.

As games grow, data management will only become a bigger problem; I hope this article serves as a foundation to achieve industry standards and build even better structures for the even larger games the future will bring.

Feel free to discuss it in this forum thread!

The link to the forums is not working in your blog post

Thanks for catching! Should be fixed now!

It’s likely more hassle than it’s worth but some visual examples would have been nice as the text examples are pretty word heavy.

Would this be an example of organization by purpose?

Assets
  - AddressableAssetsData
  - AddressableGroups
  - Scenes
  - Bundles
    - EnemyBundles
      - DefaultEnemy
        - Models
        - Textures
        - Animations
        - Prefabs
        - Audio
      - BossEnemy
        - Models
        - Textures
        - Animations
        - Prefabs
        - Audio
    - UIBundles
      - MainMenu
        - Prefabs
        - Textures
        - Animations
      - HUD
        - Prefabs
        - Textures
        - Animations
    - LevelBundles
      - Level1
        - Prefabs
        - Textures
        - Scripts
      - Level2
        - Prefabs
        - Textures
        - Scripts
      - Level3
        - Prefabs
        - Textures
        - Scripts
    - SharedBundles
      - EnemiesCommon
        - Models
        - Textures
        - Animations
        - Prefabs
        - Audio
      - UICommon
        - Prefabs
        - Textures
        - Animations
      - LevelsCommon
        - Scripts
        - Textures
  - Scripts
    - Game.Player
      - PlayerController.cs
      - PlayerMovement.cs
      - PlayerHealth.cs
    - Game.Enemies
      - EnemyAI.cs
      - EnemyHealth.cs
    - Game.UI
      - UIManager.cs
      - UIController.cs
    - Game.Levels
      - LevelManager.cs
      - LevelGenerator.cs