Commit Graph

27 Commits

Author SHA1 Message Date
kaosat.dev
ed5dfeb3cd feat(Blenvy): removed local assets, as they are useless, renamed AllAssets to BlenvyAssets 2024-06-22 13:58:43 +02:00
kaosat.dev
c162c33575 feat(Blenvy): added support for Bevy components to meshes & materials
* added a much improved "get current selection in outliner" helper function
 * added MESH and MATERIAL variants to the type enums
 * added metadata to both Mesh & Material types
 * various related tweaks & improvements
2024-06-21 12:21:32 +02:00
kaosat.dev
8b4bb473dc feat(Blenvy): overhauled pieces of export to make use of Bevy 0.14 upgrade
* aka we have scene_gltf_extras, no more need for cumbersome xxx_components objects !
 * still wip
2024-06-18 22:32:17 +02:00
kaosat.dev
2abdb7f64e feat(Blenvy): fixed & overhauled components processing & hashing
* 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
2024-06-17 11:44:08 +02:00
kaosat.dev
e86920168a feat(blenvy): significant breaking changes in the way components are handled
* 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
2024-06-14 23:15:51 +02:00
kaosat.dev
c282dab585 feat(Blenvy): another big cleanup, fixing & improvement pass for Components
* 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
2024-06-13 16:11:06 +02:00
kaosat.dev
7d4b0a4bae feat(Blenvy): more improvements to repair/upgrade components UI 2024-06-12 22:28:36 +02:00
kaosat.dev
ba4e2c03e6 feat(Blenvy): fixed/ updated rename/fixing tools
* now works correctly for both single, bulk, on objects & collections
 * related fixes , tweaks & UI improvements
2024-06-12 21:34:23 +02:00
kaosat.dev
b424a73a46 feat(Blenvy): renaming/coherency & component workflow pass
* 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
2024-06-12 12:41:50 +02:00
kaosat.dev
9cb0c6262e feat(Blenvy): huge improvements to components UI:
* 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
2024-06-11 18:12:10 +02:00
kaosat.dev
ed0c85b66e feat(Blenvy): more work done on materials handling overhaul (wip)
* 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
2024-06-10 00:31:23 +02:00
kaosat.dev
1fdb45bab6 feat(Blenvy): basic working loading of levels & assets
* 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
2024-06-09 23:14:49 +02:00
kaosat.dev
2a74dedcb8 feat(Blenvy & crates):
* added injection of assets lists to blueprints at export time
 * assets & co related tweaks & experiments
 * tweaks on the bevy side
 * all wip !
2024-06-09 10:54:10 +02:00
kaosat.dev
ba25c3cb20 feat(Blenvy): experimenting with injection of assets data into exported scenes/gltf files
* 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
2024-06-08 11:54:40 +02:00
kaosat.dev
6f6b813474 feat(Blenvy): total overhaul of main/library scene handling
* 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
2024-06-07 14:08:28 +02:00
kaosat.dev
29c8eba49c feat(Blenvy): ui tweaks 2024-06-06 20:16:32 +02:00
kaosat.dev
ec95ab5541 feat(Blenvy): a ton of minor & bigger improvements
* 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
2024-06-05 17:09:03 +02:00
kaosat.dev
2b6e17a6b7 feat(Blenvy): improvements to change detection & co
* 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
2024-06-04 14:37:29 +02:00
kaosat.dev
0b5cdcc4a5 feat(Blenvy): unified & cleaned up node trees handling for materials/geonodes
* 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
2024-06-02 00:14:24 +02:00
kaosat.dev
91f38255dd feat(blenvy): further upgrade & cleanup work for serialize_scene
* 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
2024-05-31 15:28:58 +02:00
kaosat.dev
c557334b75 feat(Blenvy): modifier deep scan is done & huge cleanups
* 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
2024-05-30 16:19:10 +02:00
kaosat.dev
cdab4c50f7 feat(blenvy):
* restructured & cleaned up auto export code
 * added very very basic serialization of modifiers (wip)
2024-05-29 23:34:47 +02:00
kaosat.dev
a0b1959a43 feat(Blenvy): fixed all broken/ missing auto export elements
* 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
2024-05-28 16:56:28 +02:00
kaosat.dev
2187fee4c8 feat(Blenvy):
* 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
2024-05-27 06:47:23 +02:00
kaosat.dev
2470736f81 feat(blenvy): fixes & improvements to the settings handling 2024-05-26 20:09:15 +02:00
kaosat.dev
b957f0573b feat(Blenvy): settings coherency pass
* 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
2024-05-26 18:33:06 +02:00
kaosat.dev
ea982d330f refactor(Blenvy): moved components & auto export into a sub folder for clarity 2024-05-25 13:26:30 +02:00