Commit Graph

  • ae9f07f549 feat(Blenvy:Blender): started upgrading code relevant to save/load, dynamic entities etc * using some of the newer components api to determine if an object/its collection is dynamic or not kaosat.dev 2024-08-03 01:27:17 +0200
  • 2c7d991b3c
    React to feedback Jan Hohenheim 2024-08-02 19:57:57 +0200
  • 02c844844e
    Write quickstart Jan Hohenheim 2024-08-02 15:41:56 +0200
  • 3a528e447a feat(Blenvy:Blender): finally ! added a clean way of dealing with failed gltf exports * no more re-raised errors * no more remaining "___temp_scenes" or object renames aka no more breaking user's blend files * also added boilerplate for displaying more accurate traceback & used it to still display the export errors correctly kaosat.dev 2024-08-01 11:07:40 +0200
  • ee873b06f1 feat(Blenvy): big overhaul, cleanup & fixed to the assets system * now the blender side exports .meta.ron files in addition to the gltf files * these ron files contain the list of assets that are then preloaded on the Bevy side * removed the double loading of gltf files on the Bevy side, replaced with use of the new metadata/asset files * added bevy_common_assets/ ron as dependency for the file loading * big cleanup & partial restructure of the spawning steps * fixed premature removal of the BlueprintAssetsLoadState component that was leading to missing material gltf files in setups withouth hot reload * added OriginalVisibility component & logic to correctly reset the visibility of entities to what they where before the blueprint spawning * fixed a few not so visible issues with some components staying around after the blueprint instance has become "ready" * moved a number of component insertions to the new "get the assets list from the meta file" * also, loading speed feels faster ! (thanks to now loading the gltf files only once) * minor various tweaks & cleanups kaosat.dev 2024-07-29 22:32:23 +0200
  • 0b038de584
    feat(components): warn instead of crash when components aren't reflectable (#207) Chris Biscardi 2024-07-29 01:17:36 -0700
  • dc110b4557 is processed even if not inserted Christopher Biscardi 2024-07-28 17:00:09 -0700
  • 75fd64cd7a warn instead of crash when components arent reflectable Christopher Biscardi 2024-07-28 16:42:34 -0700
  • aff11cca4c
    fix(Blenvy:Bevy): Fix Blenvy not respecting visibility hierarchies (#203) Jan Hohenheim 2024-07-29 00:01:02 +0200
  • 79038f5397
    Fix Blenvy not respecting visibility hierarchies Jan Hohenheim 2024-07-28 23:15:15 +0200
  • 17b31daa30
    feat(Blenvy:Bevy): Disable ExportRegistryPlugin on WASM (#201) Beni Bachmann 2024-07-27 22:07:48 +0200
  • 94fe3f6d3c feat(Blenvy:Blender): numerous minor tweaks & fixes (mostly materials related) * now correctly handling multi material meshes that have more materials in their slots as there are actual materials applied * per-blueprint materials are now correctly inserted/updated even when there are no material changes (ie cases where the ordering of slots etc is changed on a mesh) * conditions for trigerring exports of levels & materials are more coherent and exports are now trigerred on export setting changes (as they should have been !) * minor cleanups kaosat.dev 2024-07-27 21:59:57 +0200
  • ab7a0cab65 feat(Blenvy:Blender): fixed issue with duplicate objects when using parenting in blender kaosat.dev 2024-07-27 18:57:47 +0200
  • 55a4deac1c feat(Blenvy:Bevy): changed panic! in component string parsing to be a simple warning (might make further changes to this down the line) kaosat.dev 2024-07-27 17:02:34 +0200
  • ce17f723b1 feat(Blenvy):changed materials system to generate one gltf file per material * modified materials detection & export accordingly * modified material paths & co accordingly (all much simpler !) * modified assets_scan helpers to also include material assets * modified & massively cleaned up BlueprintAsset injection * further cleanups & fixes for materials handling * also removed a lot of obsolete code dealing with assets * ever more cleanups ! kaosat.dev 2024-07-27 16:59:57 +0200
  • 4865d432d9 feat(Blenvy): added basics of correct multi-material meshes support * relying on the fact that the mesh-per-material generated by the gltf exporter is deterministic: ie always uses the ordering of materials in an object * added new component MaterialInfos (plural) with a vec of MaterialInfo's * modified how materials per object are gathered on the Blender side * and modified the processing on the Bevy side to also use the ordered approach * seems to work well so far ! kaosat.dev 2024-07-27 12:48:47 +0200
  • e534917dca feat(Blenvy:Blender): * updated & improved & fixed filtering out of custom properties for export that are not components * now also for the temporary scenes * no more spurious "xxx is not registered" in Bevy for the Blender only custom properties * cleanups kaosat.dev 2024-07-25 10:34:20 +0200
  • b3c87085de feat(Blenvy:Blender): fixed the most obvious issues with current implementation of materials handling * changed blenvy.component_add operator to be useable in scripts * experimented with using the above to add MaterialInfos as normal components * cleaned up & changed info output from auto_export steps * minor tweaks kaosat.dev 2024-07-25 00:06:20 +0200
  • faf172d9eb
    Disable ExportRegistryPlugin on WASM Beni Bachmann 2024-07-24 21:04:36 +0200
  • b92081d06e
    fix(Blenvy:Bevy): Fix direct file access for gltf preload on Wasm (#199) Jan Hohenheim 2024-07-23 23:42:25 +0200
  • 5621b66cb3 chore(): updated registry for testing setup kaosat.dev 2024-07-23 23:38:39 +0200
  • 4586273e37 fix(Blenvy:Blender): fixes & tweaks to materials export * fixed missing internals * fixed/changed logic of finding existing material files * minor related fixes * likely last set of fixes with current materials system before switching to one material file per material kaosat.dev 2024-07-23 23:35:30 +0200
  • cb40340867
    Fix access Jan Hohenheim 2024-07-23 15:45:04 +0200
  • 3ddce3ac18
    Fix access Jan Hohenheim 2024-07-23 15:38:55 +0200
  • 18cbfd4ef9
    Minor refactoring Jan Hohenheim 2024-07-23 15:06:40 +0200
  • c978d7840d
    Remove debug messages Jan Hohenheim 2024-07-23 02:04:34 +0200
  • 321c6fe849
    Fix dropped handles Jan Hohenheim 2024-07-23 01:31:20 +0200
  • 233cd5f4d8
    Fix direct file access Jan Hohenheim 2024-07-23 01:12:34 +0200
  • 4a72ed68bf fix(Blenvy:Blender): * disabled manifest for 4.2 for now * fixed missing variable for materials kaosat.dev 2024-07-22 00:50:49 +0200
  • 16a28ab760 feat(Blenvy:Blender): * added a fix for BlueprintInfo path issues on non posix platform by replacing specific os.path.join calls with posixpath.join ones (blueprint info paths, export_path, material_path etc) should hopefully solve spawning issues on Windows * restructured & improved materials export: now uses same logic as blueprints, with seperate determining of what materials changed & the export itself * minor tweaks kaosat.dev 2024-07-22 00:29:41 +0200
  • a951d82330 chore(examples): cleanup kaosat.dev 2024-07-22 00:29:17 +0200
  • 382759d71f feat(Blenvy:Bevy): * removed file_watcher feature, should be user settable * added root blueprintInfo path to the list of assets to watch for hot reload * removed settable aabb calculation: they will now always be done * added "export_registry" setting to be able to disable registry export for wasm & co (automate later) * minor tweaks * cleanups kaosat.dev 2024-07-22 00:26:02 +0200
  • 80cb7d46e6 Update ronstring_to_reflect_component.rs MoeThun 2024-07-21 21:39:36 +0800
  • e54d41ca5c feat(Blenvy:Bevy): added back & updated animation docs kaosat.dev 2024-07-21 02:08:04 +0200
  • 09d1218942 feat(Blenvy): cleanups, docs & tweaks * fixed & improved the Blenvy crate README * make a few things conditional on whether hot reload is enabled or not * cleaned up very verbose debug messages * a few renames & coherency pass * cleanups cleanups, cleanups ! kaosat.dev 2024-07-21 01:44:05 +0200
  • 1e262cb724 feat(Blenvy): * more documentation work * moved examples to the root of examples * minor tweaks kaosat.dev 2024-07-20 12:36:59 +0200
  • 2067ed4ec6 docs(Blenvy:Blender): a lot of docs work: * added basic overview of settings * added specific files/sections for components, export, blueprints & levels * added relevant images where applicable (wip) kaosat.dev 2024-07-20 02:23:25 +0200
  • ee14ec69bd docs(Blenvy:Blender): continued work on docs kaosat.dev 2024-07-19 14:57:40 +0200
  • 4fcf842405 feat(Blenvy:Blender): minor UI tweaks kaosat.dev 2024-07-19 14:20:01 +0200
  • 5aa666ef00 feat(Blenvy:Blender): settings/configuration is now also tabbed for less scrolling & confusion kaosat.dev 2024-07-19 14:13:48 +0200
  • 4519fb94a5 refactor(): removed legacy crates kaosat.dev 2024-07-19 12:44:46 +0200
  • f4e3c948cb Merge branch 'main' into blenvy kaosat.dev 2024-07-19 12:27:40 +0200
  • 9f000ad5b5 chore(Blenvy:Bevy): first release will be alpha kaosat.dev 2024-07-19 12:08:25 +0200
  • 1a4e70a7e5 chore(): added contributor kaosat.dev 2024-07-19 12:08:04 +0200
  • eac93ce68f feat(Blenvy:Blender): * coherence pass : "main" scenes & co renamed to "level" scenes & co * auto export now toggled ON by default, but bailing out early if there are no main & lib scenes added * UI improvement for adding level/lib scenes * minor cleanups kaosat.dev 2024-07-19 12:06:44 +0200
  • 9b50d77790
    chore(v0.14): upgraded all current crates, examples, testing setup etc to Bevy 0.14 (#195) blenvy_v0.1.0_pre_alpha bevy_components_v0.4.2 Mark Moissette 2024-07-19 01:24:24 +0200
  • 6bc0ec0782 feat(Blenvy:Blender): added blender_manifest.toml to be compatible with Blender 4.2 extensions kaosat.dev 2024-07-19 01:11:31 +0200
  • be0f4f1377 fix(Blenvy:Bevy): added safeguard against files withouth scene level metadata * normally this should NOT happen if the blueprints to spawn are correctly generated (by the Blender add-on) gltf files, but better safe (no unwrap!) than sorry kaosat.dev 2024-07-19 01:09:43 +0200
  • 93ef2a7808 feat(Blender tools): some minor fixed for Bevy 0.14 & version bump bevy-0.14 kaosat.dev 2024-07-19 00:31:08 +0200
  • f4dd0e59a5 chore(): a bit of cargo fmt kaosat.dev 2024-07-18 23:34:10 +0200
  • b5170c0236 chore(clippy): a few tweaks & changes kaosat.dev 2024-07-18 22:51:50 +0200
  • a058659211 chore(v0.14): upgraded all current crates, examples, testing setup etc to Bevy 0.14 kaosat.dev 2024-07-18 18:20:40 +0200
  • a618e0035e chore(crates): updated code from main to v0.14 compatibility for all old crates kaosat.dev 2024-07-18 13:42:29 +0200
  • 3a8844b7a1 chore(tests): minor tweaks kaosat.dev 2024-07-18 11:46:08 +0200
  • 5f955c1a53 feat(Blenvy:Bevy): overhauled & added back blueprint animation markers & co handling * still messy, but way better * also worked on adding back the same feature for scene/instance animations kaosat.dev 2024-07-18 00:22:18 +0200
  • ec7dc2cb48 chore(Blenvy): tweaks, adjustements, moved examples etc kaosat.dev 2024-07-17 23:15:36 +0200
  • b756819088 chore(Blenvy): more general cleanups & doc updates * also more work done on example upgrades kaosat.dev 2024-07-16 23:51:49 +0200
  • 30b052d4d2 feat(Blenvy:Bevy): * lots of doc updates * removed obsolete code * some cleanups * started adding & upgrading pieces of save_load into blenvy kaosat.dev 2024-07-16 23:39:09 +0200
  • 0938a1d10c refactor(Blenvy:Bevy): more examples restructure & cleanup kaosat.dev 2024-07-16 11:17:05 +0200
  • 7acb1f3a57 refactor(examples): started simplifying & restructuring examples kaosat.dev 2024-07-16 11:11:25 +0200
  • b25fc56ea6 refactor(Blenvy:Bevy): * removed "Library" component & co * "InBlueprint" components are now always inserted: removed "NoInblueprint" component kaosat.dev 2024-07-16 11:06:55 +0200
  • c1e2bb6ecf fix(Blenvy:Blender): fixed issues with delete operator for "custom property" style components kaosat.dev 2024-07-16 11:03:11 +0200
  • e394edade2 chore(Blenvy:Bevy): clippy fixes kaosat.dev 2024-07-16 08:26:08 +0200
  • 3380f4c71d chore(): updated docs, moved examples around etc * started docs for Blender Blenvy add-on * started migration guide * got rid of a few examples * moved (for now, wip) all remaining examples under the Blenvy umbrella * updated main README * fixed issue with undeleted bin file when setting gltf export options for gltf/bin mode * updated release tools (internal_generate_release_zips) * moved main TODO to root of repo * a lot of related prep work & cleanup kaosat.dev 2024-07-16 01:14:41 +0200
  • 9d30d18416 feat(Blenvy:Blender): fixed a number of remaining issues with project serialization & attempted to fix scene rename detection * moved out collections serialization from scenes loop * fixed issue with materials hashing * fixed issue with custom properties hashing * fixed issue with scene properties hashing * minor related tweaks * still pulling my hair out over weirdness with scene rename detection and handling kaosat.dev 2024-07-15 01:37:13 +0200
  • 1059858363 feat(Blenvy:Blender): overhauled & upgraded project serialization & diffing * now also outputing seperate collections hash & materials hash from serialize_project * changed project_diff to do diffing of materials & collections * hooked up output data to export logic * related tweaks & improvements kaosat.dev 2024-07-11 14:41:15 +0200
  • 270202d24f feat(Blenvy:Blender): fixes & enhancements to auto export, particularly assets * injected BlueprintAssets are now reusing existing asset scan boilerplate (wip) * added back per blueprint assets * experimenting with how to export all vs local only assets * renamed (finally) export main scenes * found issue with scene serialization (hellooo collections !), working on fix kaosat.dev 2024-07-11 01:06:27 +0200
  • 33cddda7a5 feat(Blenvy:Bevy): big improvements to hot reload: * does not try to respawn parents & their children at the same time anymore * does not try to respawn already spawning blueprint instances anymore * "batches" respawning per set of simultaneous changes to assets to avoid chaotic respawning * minor other tweaks & improvements kaosat.dev 2024-07-11 01:03:43 +0200
  • f0cca65128 feat(Blenvy:Bevy): fixed & upgraded hot reloading * added mapping of assets to blueprint instance ids so we know which blueprint instances need to be de/respawned when a given asset changes * simplified & streamlined internals of hot reloading using the above * related cleanups & minor improvements kaosat.dev 2024-07-10 14:15:34 +0200
  • 8602383445 feat(Blenvy:Bevy): * fixed huge logical error in component processing (require Name components) that was breaking scene level extras/components * added a convience from_path function to BlueprintInfos to generate name from path * minor tweaks kaosat.dev 2024-07-10 09:01:45 +0200
  • a947d3b7d1 feat(Blenvy:Bevy): added built in support for Scene/Level Animations * VERY clunky code so far, needs a massive cleanup, but works ! * modified relevant code * modified testing/example * related minor tweaks & changes * small changes to blend project to test instance vs blueprint level animation controls kaosat.dev 2024-07-08 21:43:27 +0200
  • f8a1482aaa chore(Blenvy): minor cleanups kaosat.dev 2024-07-08 13:57:01 +0200
  • 2b8c239fe8 chore(Blenvy:Bevy): more cleanups kaosat.dev 2024-07-08 13:39:57 +0200
  • 70931ee163 chore(Blenvy:Bevy): more cleanups kaosat.dev 2024-07-08 13:30:46 +0200
  • 459bb868e0 chore(Blenvy:Bevy): cargo fmt kaosat.dev 2024-07-08 13:18:21 +0200
  • c326a11243 feat(Blenvy:Bevy): added back basics of animation support * updated logic to account for bevy 0.14 changes (animation graph, transitions component etc) * added back & updated per blueprint animation example to the testing project * updated matching blend file with new style components * spawnHere => spawnBlueprint * added back tagging of Blueprint contents with "InBlueprint" / noInBlueprint * overall cleanup pass (wip) kaosat.dev 2024-07-08 12:55:25 +0200
  • 3099f98532 feat(Blenvy:Bevy): cleaning up * removed clutter * moved hot reload to seperate module * added back "assets loaded" event, removed useless events * registered HideUntilReady component for users * minor tweaks & cleanups kaosat.dev 2024-07-08 09:49:47 +0200
  • bef709a0ed feat(Blenvy:Bevy): * bumped up Bevy version to v0.14 ! * fixed (albeit in a clunky way) issues with sub blueprint detection * improved error message for missing material library * added HideUntilReady component & logic, to hide 'in-spawning' blueprint instances until they are ready * "add-to-world" is now only trigerred for blueprint instances that have no parents (avoid footgun) * minor cleanups & tweaks * added test component with Vec3 to double check for issues * updated test blend file to include the component above + added a light to the test spawnable blueprint to check for "light flashes" (aka indirectly testing "HideUntilReady") animation-fixes-and-improvements kaosat.dev 2024-07-07 22:17:44 +0200
  • 478be88a55 feat(Blenvy:Blender): * fixed issue with parenting due to Blender's very weird matrix_parent_inverse ... solves all issues with children of empties blueprint instances within blueprint instances etc having the wrong transforms in some cases * fixed bad gltf format propagation: semi ok solution, but a cleaner one would be better * added additional custom properties to the blacklist , level/blueprint exports are now using the one in the constants instead of a local copy * minor tweaks & cleanups kaosat.dev 2024-07-07 22:06:16 +0200
  • fbcd025dc1 feat(Blenvy): continued restructuring & upgrade of blueprint spawning logic * updated simple test to include deep nested blueprint instance within blueprint instance case * restructured materials handling to use the new logic, removed clutter * experimenting with solutions to the deeply nested blueprint instances problem * moved out all obsolete code to "old" folder, keeeping around until all problems are solved * added hack-ish solution to the "aabb system as post process" implementation * various minor boilerprate changes kaosat.dev 2024-07-05 12:56:51 +0200
  • 6dde9823ed feat(Blenvy:Bevy): almost complete rework of blueprint spawning workflow (wip) * added logic to track spawning of sub blueprints * added ability to determine when a blueprint instance is truly ready (aka all its assets have been loaded, blueprint scene & sub scenes spawned & processed etc) * reworked spawning steps for more determinism & reliability * no more "seperate" spawning post process * lots of related changes * still messy but functional kaosat.dev 2024-07-02 14:32:39 +0200
  • 07d58467c4 feat(Blenvy): * Blender: some additional component filtering for upgrade ui * Bevy: * experimenting with overhauled blueprint spawning logic, sub-blueprint instance tracking etc * added a more simple blend file to test things out with kaosat.dev 2024-07-01 23:35:59 +0200
  • 6cbb144746 feat(Blenvy:Bevy): * cleaned up hot reload code a bit * renamed a few things for clarity * experimented with hiding entity while spawning & showing it again after spawn to try and remove "flashes" happening when spawning blueprints with lights * for testing example, fixed dynamic spawner test kaosat.dev 2024-06-29 01:51:49 +0200
  • fb54b0c913 feat(Blenvy:Blender): upgreadable components: disable ui for external items kaosat.dev 2024-06-29 00:56:07 +0200
  • 547315aadc feat(Blenvy:Blender): fixed selection issues ! kaosat.dev 2024-06-29 00:45:26 +0200
  • c2e73b7e8b feat(Blenvy:blender): * fixed issues with selections * discovered more issues with selection button in "upgrade/rename" screen, partially fixed * improved visualization of selections for objects, collections, meshes & materials, including auto-switching to the correct properties tab for clarity * fixed ui issues in the upgrade components screen * made distinction between local & remote ones clearer * minor tweaks & improvements kaosat.dev 2024-06-28 00:14:30 +0200
  • 49e797fea7 feat(testing): updated the two main testing blend files * added additional test "upgreadeable components" * added test "buggy" hierarchies: blueprint instances as children of empties and blueprint instances as children of other blueprint instance * more materials * testing cases for various levels of nesting/ targets for components * reorganized objects in 3d scene for more clarity * changed camera view for more clarity * added background color & filmic kaosat.dev 2024-06-28 00:12:15 +0200
  • 3961e0b22c feat(Blenvy:blender): made it impossible to add or update components that are not in the registry * minor tweaks & cleanups kaosat.dev 2024-06-27 09:40:06 +0200
  • 75d7f940ae chore(): minor tweaks & experiments kaosat.dev 2024-06-26 14:35:47 +0200
  • f25829f8cd feat(Blenvy:blender): * fixed handling of colors according to changes in v0.14 * fixed issues with hashmaps having enums as values kaosat.dev 2024-06-26 14:34:44 +0200
  • 959951bca4 feat(Blenvy:Bevy): experimentation with hot reload: it works !! * but it is VERY VERY messy right now * BlenvyAssets => BlueprintAssets * lots of tweaks & experiments & related changes kaosat.dev 2024-06-25 18:34:26 +0200
  • 31f6a0f122 feat(blenvy:blender): a ton of cleanups, fixes & improvements * fixed bad hashing causing hashed project across two different blender sessions to appear different aka, no more systematic re-export of everything when reloading a project in blender ! * fixed issues with modifier & material hashing that was also causing overly eager change detection * previous_xxx_settings are now only saved AFTER a sucessfull export, for coherence * added more fine grained setting change detection (aka some setting changes do not require a re-export of all levels & blueprints !) * fixed handling of level & library scene names as part of the settings * fixed numerous issues with core, auto_export & component settings * cleaned up a ton of very verbose debug message * BlenvyAssets => BlueprintAssets * a lot of minor cleanups kaosat.dev 2024-06-25 18:27:52 +0200
  • ee5c74aa9e refactor(Blenvy): deprecated BlueprintName (& BluprintPath), and replaced them with BlueprintInfo * contains both name & path * also experimented with merging the asset load tracking into BlenvyAssets by adding the fields from the asset loading tracker & ignoring them/ defaulting them for deserialization kaosat.dev 2024-06-25 00:45:39 +0200
  • 253d33f1bb feat(asset preloading): experimented with using the underlying gltf crate to get the list of assets & preload them * a tiny bit clunky but works and is somewhat cleaner than the previous "staggered loading" approach * enables having level load state (could be used for progress information & co) * modified blueprints spawning to used the new system * various cleanups & related tweaks * fixed issues on the Blender side when with the formating of the ron data for assets kaosat.dev 2024-06-24 23:47:36 +0200
  • e232fedc4b chore(Blenvy): minor tweaks kaosat.dev 2024-06-24 10:21:51 +0200
  • 4b1268f0a3 feat(Blenvy): * fixed handling of scene gltf_extras * fixed handling of colors for BlenderBackgroundShader * added scene tonemapping & scene colorgrading and handling on the Bevy side. * experimented with exporting ron asset files, updated & overhauled asset file generation, adapted for blueprints * various cleanups kaosat.dev 2024-06-23 19:14:00 +0200
  • ed5dfeb3cd feat(Blenvy): removed local assets, as they are useless, renamed AllAssets to BlenvyAssets kaosat.dev 2024-06-22 13:58:05 +0200
  • 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 kaosat.dev 2024-06-21 12:15:41 +0200
  • dafd408bd1 feat(examples): started examples reorg * moved multiple blendfiles example to be the main "demo" kaosat.dev 2024-06-20 00:08:22 +0200
  • 56763879b1 feat(Blenvy): added an "all-in-one" (almost) Blenvy crate * includes components, registry export & blueprints * overhauled settings / config to match the new structure * keeping the different sub plugins for now * cleaned up some of the internals of the blueprints code * related tweaks & cleanups * added events to blueprints : for when assets have been loaded & when a blueprint has been spawned (wip) * various experiments with blueprints * updated testing to make use of new crate & logic kaosat.dev 2024-06-20 00:05:02 +0200