* now correctly using nested long names + attribute name for structs
* so no more hashing collisions for all test cases !
* restructured internals of property group generation & registration
* dynamically generated property group classes are now unregistered correctly
* lots of minor related tweaks & improvements
* to fix issues with hash collisions because of incomplete & incorect "component paths"
(ie the different nesting levels of the structs within components)
* removed short name nested component path passing
* changed the way the composite paths are created & the hash is generated
* a lot of other related changes
* also changed the registry's default path, to use the blenvy level assets path
* fixed broken registry reload
* fixed incorect handling of the "invalid" flag when reloading the registry should fix that
* fixed unreliable generate_propGroup_name : now uses tiger-hash to generate hashes of nested paths + long names
this ensures that even if there are additions & removals to the registry, it does not break existing components !
* fixed & overhauled list & map components ui handling for objects + collections/blueprints
* merged the various list component ui operators into a single one
* removed obsolete code in registry & components
* improved handling of invalid components in the UI: now they are not displayed ! much cleaner & simpler
* overall cleanup to components
* lots of minor tweaks & co
* all operators, panels etc are now respecting the Blender naming convention
* tweaks & improvements to some of the component operators
* clearer naming for the "advanced" tools for components
* removed obsolete / overly complex pieces of UI
* complete rework of component selections: much nicer, searchable, simpler ui
* main component selector & per "error" component selectors , as well as bulk replace
ones are now all independant
* overhauled a lot of helpers to work with both objects & collections
* reworked ui ordering for upgrade/ rename
* more clearer status display for invalid components
* etc etc
* removed old blender add-ons, there is now only Blenvy !
* updated most of the main docs accordingly
* updated project name in main README
* etc
* related tweaks
* split out materials scan from injection of materialInfo into objects
* added material Asset injection into list of assets at scene level
* related tweaks & cleanups
* continued overhaul on the bevy side
* removed/ obsoleted blueprintsList
* now using AllAssets (meh naming)
* modified example & internals to enable loading levels as Blueprints as well
* internals quite messy for now, needs a big cleanup still
* disabled materials library for now, needs to be overhauled to make use of asset logic as well
* added more mock assets for testing
* related changes to blender & bevy side
* added extraction of local/all (wip) assets into auto export
* added injection of LocalAssets & AllAssets (unsure)
* related tweaks & experiments
* also cleaned up asset ui for external assets
* started updating the bevy integration tests
* main/library/nothing is now an enumProperty on scenes themselves
* main/library scene listing is a dynamic property of the Blenvy core class instead of CollectionProperties
* this means that removing / renaming scenes using the normal blender workflow automatically changes things for Blenvy as well !
* overhauled & simplified main/library scenes ui accordingly
* same for all the code that needed access to the main/library scenes
* added main/library scene NAMES computed property for convenience
* fixes & experiment to auto export
* added support for "always export" functionality for blueprints & levels
* fixed issues with asset management
* fixed issues with tracker
* more ui improvements (display of the number of assets etc)
* a lot more minor tweaks
* added basic logic, ui, level selector operator etc
* fixed issues with asset dialog
* added experimental "always_export" flags for collections & scenes to enable always
exporting on save for select blueprints & levels (no logic yet, just UI)
* various tweaks & minor experiments
* node trees are now using the same logic as other types
* cleaned up & restructured code accordingly
* added more failure handling for project serialization & diffing
* experimenting with ways to deal with scene renaming
* minor tweaks
* manual tests are coherent, and allow for very fine grained changed detection, yeah !!
* overhauled generic_fields_hasher_evolved a bit
* fixed/ resolved issues with parameters handling for materials vs modifiers
* related minor tweaks & fixes
* rewrote & cleaned up material handling, seems to work well !
* attempts at unifying parsing of geometry/shader node parsing seems to lead to geometry node parameter changes not being dected
* wip
* finished & cleaned up modifier deep scan: works well !
* now toggleable via a setting
* same for the deep scan for materials
* rewrote the very messy materials scan, with a much improved generic_fields_hasher
* still need to add back an improved material node tree serializer
* fixed overhauled, cleaned up and improved settings change detection
* serialize_scene now generate a hash per object instead of keeping the details (useless)
* changed handling of gltf settings, so that only the actual non default, changed settings are saved
* a ton of minor changes & cleanups to get export working correctly: it works !
* started adding materials_in_depth_scan (wip) to be able to control more detailed (but costly) materials diffing for change detection
* migrated gltf settings handling to the new "generate_complete_settings_dict" helper
* tweaks/fixed to the internals of that function to get the actual correct data
* minor related tweaks & fixes
* restructured component settings to be used instead of the registry
* removed settings from registry
* fixed data access for the above
* added saving of component parameters
* added component settings pointer in blenvy core
* added loading of both auto_export & component settings in blenvy core's load_settings
* fixed handling of gltf dummy file & settings storage
* experimenting with best approach for settings diffing for auto export
* started (wip) moving out bevy_components settings from registry to indenpendant settings
* minor tweaks
* fixed/ overhauld asset & blueprint scanning
* added polling for blueprints (not 100% sure yet)
* add-on-prefs => settings
* removed the now obsolete auto-export operator & preperences
* a lot of other minor changes
* this is in preparation for future support in bevy & for more coherence & practicality
* overhauled metadata tooling
* overhauled most of the operators
* overhauled most of the UI
* all the basics & more work !
* unrelated: also started preping for auto_export operator removal
* removed a lot of obsolete code
* overhauled settings upsert
* added save & load of blenvy common settings
* removed most of the specific uis (mostly auto export)
* moved change detection logic out of auto export (wip)
* added helper to compare setting dicts
* cleaned up some incoherent naming
* stripped auto_export of a lot of its internals (wip)
* main settings ui overhaul: now components & auto export provide their own settings UI function
* 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
* added correct injection of assets + export path to blueprints
* moved a few common elements to "core" for better reuse
* more tweaks/ experiments with paths handling
* moved & overhauled a few of the blueprint & assets tools
* lots of minor tweaks & changes
* minor tweaks & improvements to assets handling
* renamed a few auto export preferences for more coherence
* "assets" folder is now mandatory again and used by the various sub asset types
* blueprints/levels/materials paths in auto_export are not overwrite their relative values anymore,
but added their "full" variants & changed code using full paths to use those
* added back gltf exporter post export callback, in a cleaner fashion
* changing (wip) the way the various relative folders are auto generated in the folder selection UI
* lots of other minor tweaks & improvements
* improvements to assets ui
* assets ui now specific to per level data, not based on selection anymore
* blueprints ui now presents assets per blueprint
* a lot of tweaks & improvements in the areas above
* changed all various uses of short name to long_name
* same for type_names
* also changed bevy_registry_export to output "long_name" instead of "title" for coherence
* related changes & tweaks
* still WIP
* added handling of additional map flags
* added map handling in conversion from prop group
* added basic (& clunky) UI
* related boilerplate
* added various testing components to try this out & experiment with
* added operator to deal with the root path & sub paths in a smarter way
* various paths are not settable "manually" as pure text anymore
* overhauled ui for paths
* overhauled internal handling of paths
* further refinements to paths handling
* related fixes & tweaks
* UI restructure & split out of change detection
* basic export/assets folder now only available in Ui when blueprints are not in use
* overhauled bevy integration tests, now done in "two passes" as the external library needs to be exported first
* cleanups & improvements to the test above
* started overhauling & massively simplifying the rest of the tests, starting with change_tracking
* operator ui is not a file browser anymore
* restructured/recreated ui to work inside a props_dialog
* added ui_only toggles to control the "pseudo panels" (as panels are not supported in props dialogs)
* regrouped a few toggle in a more logical manner
* change sub type of a few properties to be directories
* some related cleanups
* added "marked" flag to Blueprints structs
* added correct support for combine modes for blueprints & levels
* added correct support for nested blueprints
* added additional helpers for blueprints
* fleshed out tests even more
* fixed some tests
* updated tests data
* updated both get_collections & get_levels to use information about combine modes
* basic implementation, seems to work, needs more tests & logic check
* related changes
* fixed issues with renaming after export (should have always been broken ???)
* fleshed out scene serialisation some more (parents & collections handling) + bubbling
* disabled bulk of tracker
* added notes for get collections & scenes about combine mode
* fixed some issues with main operator
* updated tests for more correctness
* etc
* aka added basics of serialization of scene(s) & brute compare
* added basics for transforms, custom properties, meshes, cameras & lights, & armatures
* should only run on save as I can imagine it could get quite costly, computation wise
* added some boilerplate for determining changed objects
* not hooked up to actual exporter yet
* already way more reliable than the depsgraph:
* ignores selections & related weird issues
* undo /redo proof
* expandable
* forcing depsgraph update when applying changes to gltf export settings
* lots of additional boilerplate for params change detection
* further updates to get information about changed parameters & objects in tracker
* a lot of related tweaks & changes
chore(bevy_components): removed annoying verbose info messages
* continued restructure of auto_export internals
* split out get_levels_to_export
* simplified, cleaned up & made get_collections_to_export more efficient (skipping useless computations based
on settings)
* moved more settings to addon_prefs, created boilerplate to create copies & inject additional params
* modified tracker's use of the above, so that the actual list of future exports is displayed
* a lot of other tweaks & cleanups
* added "hack-ish" tweak to make sure component additions/delections etc
are picked up correctly by the change tracker in auto_export
* cleaned up a few operator names
* very minor tweaks
* cleaned up most of the change detection tracking
* updated/ fleshed out & improved the tests
* improved sidebar ui (wip)
* moved listing of blueprints to export to sidebar
* improved display of changed objects
* currently restructuring rest of the code to be able to display BEFORE saving
what will get exported & what not
* a ton of other cleanups & tweaks
* moved temp scene prefix to new 'constants' file, updated code accordingly
* fixed, updated & refactored handling of auto export & gltf parameters
* added additional tests to changed_parameters
* added display of changes since last save in new side tab
* more investigation & fix attempts for change detection...
* various related tweaks & cleanups
* auto_export now defaults to being disabled (otherwise you will get export attempts etc even if you only
had the add-on installed !
* modified logic accordingly
* various related tweaks
* adjusted tests