Blender_bevy_components_wor.../tools/blenvy/TODO.md
kaosat.dev 006e3c16f7 feat(blenvy): split up user added assets from generated assets
* added Asset propertygroup & User Assets collections to collections & scenes to store them explicitely
 * overhauled UI to make use of this : also means names & paths are editable after the fact
 * overhauled testing asset hierarchy scan accordingly
 * added expertimental export of bevy_asset_loader compatible asset.ron files per level
 * related tweaks & additions
2024-05-16 14:09:40 +02:00

2.4 KiB

Auto export

  • the original blueprints & levels path are now left as is, and there is an auto injection of xxxpath_full for absolute paths

    • replace all uses of the paths with the correct ones above
      • levels
      • blueprints
      • materials
  • move out the UI for "assets" folder out of "blueprints condition"

  • fix asset path calculations

    • root path => relative to blend file path
    • asset path => relative to root path
    • blueprints/levels/blueprints path => relative to assets path
  • move out some parameters from auto export to a higher level (as they are now used in multiple places)

    • main/ library scene names
    • paths

Data storage: - for scenes (main scenes) - at scene level - for blueprints - at collection level - Note: these should be COPIED to the scene level when exporting, into the temp_scene's properties

> NOTE: UP until we manage to create a PR for Bevy to directly support the scene level gltf_extras, the auto exporter should automatically create (& remove)
    an additional object with scene_<scene_name>_components to copy that data to

Assets: - blueprint assets should be auto_generated & inserted into the list of assets : these assets are NOT removable by the user - should not change the list of manually added assets

  • store assets
    • per main scene for level/world assets
    • per blueprint for blueprint in lib scene
  • UI:
    • we need to display all direct assets (stored in the scene)
    • indirect assets:
      • QUESTION : do we want to include them in the list of assets per level ?
        • this would enable pre-loading ALL the assets, but is not ideal in most other cases
        • so add an option ?
      • the assets of local blueprints

Blueprints: - [x] on save: write IN THE COLLECTION PROPERTIES - list of assets - export path - [ ] blueprint selection for nested blueprints is broken

- [ ] scan & inject on load
- [ ] scan & inject on save

General issues:

  • there is no safeguard for naming collisions for naming across blender files
  • this can cause an issue for assets list "parent"
  • "parents" can only be blueprints
    • they normally need/have unique export paths (otherwise, user error, perhaps show it ?)
    • perhaps a simple hashing of the parent's path would be enought