Commit Graph

334 Commits

Author SHA1 Message Date
Mark Moissette
31ee4df6a6
Merge 33f2809682 into 9b50d77790 2024-08-09 10:24:34 +00:00
kaosat.dev
33f2809682 refactor(Blender): changed all imports to be relative, to be up to spec with Blender 4.2 extensions 2024-08-09 12:22:49 +02:00
kaosat.dev
362d6b214b feat(Blender):
* updated version to match Bevy side
 * added back manifest to do a clean 4.2 extension
 * removed tmp scene ids
2024-08-09 11:03:31 +02:00
kaosat.dev
c4d8e02a9d Merge branch 'blenvy' of github.com:kaosat-dev/Blender_bevy_components_worklflow into blenvy 2024-08-07 01:39:24 +02:00
kaosat.dev
e573251707 feat(Blenvy:Bevy): more work done on save & load (heavy wip)
* more coherent logic between save & load
 * added resources & boilerplate for loading side
 * experimenting with save & load logic, filtering of components etc
 * updated assets for more testing
 * added bevy-inspector-egui  to some examples for testing
2024-08-07 01:38:23 +02:00
kaosat.dev
bd830e5ad4 feat(Blenvy:Blender):
* cleanups to dynamic/static object detection
 * filtered out MaterialInfos from "fixable" Components
 * will now attempt to inject actual component for materialInfos
 * if it fails, falls back to previous custom property logic
 * added ability to disable ui for certain components
 * added display of "internal" components
 * internal components such as MaterialInfos are now viewable but disabled (non editable) for more clarity
 * experimenting with auto_reload of registry if missing (wip)
 * minor tweaks
2024-08-07 01:35:06 +02:00
kaosat.dev
0b02a24313 fix(Blenvy:Blender): fixed issue with materials not exported if there was an export parameter change 2024-08-06 10:19:22 +02:00
Jan Hohenheim
25c72b1ed7
Docs(): Fix link (#216) 2024-08-04 20:22:20 +02:00
Jan Hohenheim
d139bcd621
Docs(): Write quickstart and Avian tutorial (#213)
* adds a quickstart and an Avian tutorial
2024-08-04 02:58:16 +02:00
kaosat.dev
d08c235122 feat(examples:Save_load): created much simpler example for save load
* removed old assets & co
 * fresh blend with Blenvy logic
 * generated assets (wip)
 * started updating code (wip)
2024-08-03 01:29:34 +02:00
kaosat.dev
171ec7490a feat(Blenvy:Bevy): slowly adding back save/load (wip)
* moved out old code
 * added very basics of saving (HEAVY WIP)
2024-08-03 01:28:46 +02:00
kaosat.dev
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
2024-08-03 01:27:44 +02:00
kaosat.dev
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
2024-08-01 11:07:40 +02:00
kaosat.dev
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
2024-07-29 22:32:23 +02:00
Chris Biscardi
0b038de584
feat(components): warn instead of crash when components aren't reflectable (#207)
* warn instead of panic when components aren't reflectable
* entities get marked as processed even if components are not inserted
2024-07-29 10:17:36 +02:00
Jan Hohenheim
aff11cca4c
fix(Blenvy:Bevy): Fix Blenvy not respecting visibility hierarchies (#203) 2024-07-29 00:01:02 +02:00
Beni Bachmann
17b31daa30
feat(Blenvy:Bevy): Disable ExportRegistryPlugin on WASM (#201)
Because it tries to write to the assets directory
2024-07-27 22:07:48 +02:00
kaosat.dev
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
2024-07-27 21:59:57 +02:00
kaosat.dev
ab7a0cab65 feat(Blenvy:Blender): fixed issue with duplicate objects when using parenting in blender 2024-07-27 18:57:47 +02:00
kaosat.dev
55a4deac1c feat(Blenvy:Bevy): changed panic! in component string parsing to be a simple warning
(might make further changes to this down the line)
2024-07-27 17:02:34 +02:00
kaosat.dev
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 !
2024-07-27 16:59:57 +02:00
kaosat.dev
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 !
2024-07-27 12:48:47 +02:00
kaosat.dev
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
2024-07-25 10:34:20 +02:00
kaosat.dev
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
2024-07-25 00:06:20 +02:00
Jan Hohenheim
b92081d06e
fix(Blenvy:Bevy): Fix direct file access for gltf preload on Wasm (#199)
* Fix direct file access
* Fix dropped handles
* Remove debug messages
* Minor refactoring
* Fix access
2024-07-23 23:42:25 +02:00
kaosat.dev
5621b66cb3 chore(): updated registry for testing setup 2024-07-23 23:38:39 +02:00
kaosat.dev
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
2024-07-23 23:35:30 +02:00
kaosat.dev
4a72ed68bf fix(Blenvy:Blender):
* disabled manifest for 4.2 for now
* fixed missing variable for materials
2024-07-22 00:50:49 +02:00
kaosat.dev
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
2024-07-22 00:29:41 +02:00
kaosat.dev
a951d82330 chore(examples): cleanup 2024-07-22 00:29:17 +02:00
kaosat.dev
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
2024-07-22 00:26:02 +02:00
kaosat.dev
e54d41ca5c feat(Blenvy:Bevy): added back & updated animation docs 2024-07-21 02:08:04 +02:00
kaosat.dev
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 !
2024-07-21 01:44:05 +02:00
kaosat.dev
1e262cb724 feat(Blenvy):
* more documentation work
 * moved examples to the root of examples
 * minor tweaks
2024-07-20 12:36:59 +02:00
kaosat.dev
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)

feat(Blenvy:Blender): minor ui tweaks
2024-07-20 02:24:42 +02:00
kaosat.dev
ee14ec69bd docs(Blenvy:Blender): continued work on docs 2024-07-19 14:57:40 +02:00
kaosat.dev
4fcf842405 feat(Blenvy:Blender): minor UI tweaks 2024-07-19 14:20:01 +02:00
kaosat.dev
5aa666ef00 feat(Blenvy:Blender): settings/configuration is now also tabbed for less scrolling & confusion 2024-07-19 14:13:48 +02:00
kaosat.dev
4519fb94a5 refactor(): removed legacy crates 2024-07-19 12:44:46 +02:00
kaosat.dev
f4e3c948cb Merge branch 'main' into blenvy 2024-07-19 12:27:40 +02:00
kaosat.dev
9f000ad5b5 chore(Blenvy:Bevy): first release will be alpha 2024-07-19 12:08:25 +02:00
kaosat.dev
1a4e70a7e5 chore(): added contributor 2024-07-19 12:08:04 +02:00
kaosat.dev
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
2024-07-19 12:06:44 +02:00
Mark Moissette
9b50d77790
chore(v0.14): upgraded all current crates, examples, testing setup etc to Bevy 0.14 (#195)
* chore(v0.14): upgraded all current crates, examples, testing setup etc to Bevy 0.14
* chore(Blender tools): some minor fixed for Bevy 0.14 & version bump
2024-07-19 01:24:24 +02:00
kaosat.dev
6bc0ec0782 feat(Blenvy:Blender): added blender_manifest.toml to be compatible with Blender 4.2 extensions 2024-07-19 01:11:31 +02:00
kaosat.dev
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
2024-07-19 01:09:43 +02:00
kaosat.dev
a618e0035e chore(crates): updated code from main to v0.14 compatibility for all old crates 2024-07-18 13:42:29 +02:00
kaosat.dev
3a8844b7a1 chore(tests): minor tweaks 2024-07-18 11:46:38 +02:00
kaosat.dev
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
2024-07-18 00:22:18 +02:00
kaosat.dev
ec7dc2cb48 chore(Blenvy): tweaks, adjustements, moved examples etc 2024-07-17 23:15:36 +02:00