Commit Graph

113 Commits

Author SHA1 Message Date
kaosat.dev 6514ceff63 docs(bevy_gltf_components): added barebones info about lights & shadows handling 2024-03-04 21:57:10 +01:00
kaosat.dev 43267b7aa6 chore(tools):
* updated tests & data for bevy_components, fixed minor issues in conversions & shuffler
 * bumped version numbers
2024-03-04 21:38:39 +01:00
Jan Hohenheim 906318b51e
Clean common physics code up (#159) 2024-03-04 19:54:57 +01:00
kaosat.dev 5ad5b64dc9 chore(tools): minor tweaks 2024-03-04 19:54:20 +01:00
kaosat.dev e4c1a8dc24 chore(): cargo fmt 2024-03-04 17:36:17 +01:00
kaosat.dev 5c43d2ead7 chore(examples): tweaks to common code to make clippy happy 2024-03-04 17:26:55 +01:00
kaosat.dev 25883597ec chore(examples): more file updates 2024-03-04 17:06:55 +01:00
kaosat.dev d00ac48642 chore(examples): cargo fmt & co 2024-03-04 15:17:46 +01:00
kaosat.dev 68bb7ed4cc feat(lighting): added components, exporter support & testing for blender-configurable shadows
* added BlenderLightShadows component to bevy_gltf_components
 * added writing shadow information to gltf_auto_export
 * updated tests
2024-03-04 15:16:11 +01:00
kaosat.dev 851dfa5a31 chore(examples): re-generated files 2024-03-04 14:16:28 +01:00
kaosat.dev c95eead100 feat(tools): (re) generating gltf files for examples by script works !
* hack-ish, reuses our pytest boilerplate, but good enough for now
2024-03-04 14:15:30 +01:00
kaosat.dev d0f49c851a feat(tools): more work on internal tools 2024-03-04 13:27:53 +01:00
kaosat.dev 6664e11ff0 chore(testing): added example of "empty" nested inside a collection to the testing blend file 2024-03-04 13:13:56 +01:00
kaosat.dev 3c4bc26830 chore(tools): more work on auto gltf generation for examples 2024-03-04 13:13:32 +01:00
kaosat.dev 6c8593f82d feat(tools): added boilerplate for internal tools
* clean zip file generator for blender add-on releases
 * wip for example gltf file generator
2024-03-04 13:00:36 +01:00
kaosat.dev 641f84e1bf chore(examples): updated example glbs 2024-03-04 13:00:09 +01:00
kaosat.dev 92e02ee5f9 chore(testing): updated expected screenshot 2024-03-04 11:22:39 +01:00
kaosat.dev 6378aa9706 Merge branch 'janhohenheim-light-processing' into bevy_main 2024-03-04 11:13:25 +01:00
kaosat.dev 5c60e45839 Merge branch 'light-processing' of github.com:janhohenheim/Blender_bevy_components_workflow into janhohenheim-light-processing 2024-03-04 11:12:43 +01:00
kaosat.dev a80bb1e9a1 chore(examples): fixed camera ordering issue when used with bevy_editor_pls 2024-03-04 10:45:58 +01:00
kaosat.dev b73ecbabed chore(gltf_components): fixed bad merge 2024-03-04 09:21:40 +01:00
kaosat.dev d00caaf414 Merge branch 'main' of github.com:kaosat-dev/Blender_bevy_components_worklflow into bevy_main 2024-03-04 09:09:13 +01:00
Mark Moissette 9cb9dda5d3
fix(bevy components): fix handling of unit/empty structs (#151)
* closes #133 
* fix(gltf_auto_export): corrected ron value for "spawnHere" components
* fix(bevy_components): fixed handling of empty/ unit structs
   * updated to/from prop_groups
   * updated tests/ expected files
   * bumped version
   * removed verbose "watching schema file for changes"
* fix(bevy_gltf_components): fixed issue of incorect handling of empty component values in non legacy mode:
   * aka: replacing empty component values (ron strings) with '()' should ONLY happen in legacy mode
   * even more aka: ron strings for component values should not be altered when not in legacy mode (provided ron
  strings should be valid)
* tests():
   * changed bevy_component tests to use testing/bevy_example as source for registry data
   * removed testing/bevy_registry_export, as it is redudant
   * related tweaks & cleanups
* chore(crates): bumped up versions because of breaking change
* chore(examples): updated registry export example to use up-to-date / fixed components data
* chore(bevy_gltf_components): added back warning about legacy mode, in a less spammy way
* docs(bevy_components): added notes about v0.3 breaking changes
2024-03-04 08:20:00 +01:00
Jan Hohenheim 64b26b2a70
Remove dead code 2024-03-03 23:33:21 +01:00
Jan Hohenheim 8a174c6c8b
Remove dead code 2024-03-03 23:27:02 +01:00
Jan Hohenheim f9cc374ce8
Process lights coming from Blender 2024-03-03 23:22:08 +01:00
kaosat.dev e68b230fc9 chore(cargo fmt): linting 2024-02-29 23:40:46 +01:00
kaosat.dev 7f824c47fe feat(bevy_registry_export): added boilerplate to make registry path relative to assets folder
* for bevy_gltf_components: registered GltfProcessed component (supresses a few warnings etc)
 * for the rest: cargo fmt
2024-02-29 23:38:55 +01:00
Mark Moissette b40ab4983f
chore(gltf_auto_export): bumped version for release (#150) 2024-02-29 15:32:19 +01:00
Mark Moissette 7ffcd55f5d
fix(gltf_auto_export): fix animation export (#148)
* fix(gltf_auto_export): added  fix for correct "deep-copying" of objects & hierarchy so that animated
 meshes & nested hierarchies get exported correctly
* test(gltf_auto_export):
   * added visual testing to check for overall regression :
       * added screenshoting in bevy app
       * added visual compare with reference screenshot on python side
    * added testing of correct export of animated models 
    * added testing of correct export of empties
    * added testing of correct export of nested hierarchies
    * added testing of correct export of blueprints, with & without components etc 
* fixes #147
2024-02-29 15:27:02 +01:00
kaosat.dev a705a238fd chore(inspector): added inspector & co 2024-02-27 08:14:49 +01:00
kaosat.dev ca25669774 feat(bevy_gltf_components): added GltfProcessed flag component to improve performance of
iteration over added<gltfExtras>
2024-02-27 00:37:24 +01:00
Mark Moissette dfc2be8c50
feat(gltf_auto_export): component filtering for exports, bug-fixes and tests(#143)
* added filtering out of invalid components/ custom properties:
  * includes filtering out of invalid / disabled components as defined in bevy_components, components_meta etc
 * completely changed handling of "unique" (non blueprint) objects by copying them instead of moving/renaming them & manipulating their custom properties : much cleaner, much simpler !
 * disabled default gltf export of optimised animations
 * added tests !
 * closes #139 
 * closes #141 
 * closes #142 
 * closes #146
2024-02-27 00:12:14 +01:00
Jan Hohenheim e83ef32b9f
chore(cargo): Remove nonexistent manifest key (#138)
* Remove nonexistent manifest key
2024-02-23 00:03:15 +01:00
kaosat.dev 453b0b5d55 feat(examples):
* updated & cleaned up examples some more
 * added features/feature flags to 'common' example boilerplate
 * moved xpbd physics to common, behind a flag too
 * updated xpbd example
 * updated code for bevy_asset_loader changed api
 * more cleanups
2024-02-21 13:15:46 +01:00
kaosat.dev dec0818222 chore(examples): updated basic_xpbd example to use v0.13 2024-02-20 21:25:36 +01:00
kaosat.dev a28505fc39 chore(ci): updated for new release 2024-02-20 14:56:19 +01:00
kaosat.dev 3bc1a87d1e chore(examples): updated examples for bevy 0.13
* updated dependencies
 * updated code where relevant
 * temporary removed editor
 * attempting to tweak lighting/camera proxies to match Bevy's new defaults
 * updated assets where relevant
 * still wip, as bevy_xpbd is not yet updated for 0.13
 * all work except the above & save/load
2024-02-20 14:52:00 +01:00
kaosat.dev cc2718ffd2 chore(crates): updated crates to Bevy 0.13
* updated deps
 * updated / changed code where relevant
 * updated README files
 * bumped version numbers for upcoming release
 * updated rust-toolchain
2024-02-20 14:50:27 +01:00
Mark Moissette 1ceb5050f2
feat(bevy_gltf_components): testing a different approach using only gltf extras (#134)
* not using / tracking gltf files anymore (should avoid issues with scenes vs gltf files)
 * restructured accordingly
 * closes #102
 * closes #111
2024-02-19 22:43:27 +01:00
Jan Hohenheim e0e3a620f7
fix(): Fix invalid lints entry (#135) 2024-02-19 20:46:27 +01:00
Mark Moissette 20b6fa6077
feat(bevy_components): set of fixes & improvements (#128)
* fixed issue with "reload registry" not clearing previous data
 * added watcher/ poll system to automatically updated the registry & components list when the registry file has been changed
* BREAKING CHANGE ! changed internal representation of components, incompatible with v0.1, breaks UI values.
* added buttons to regenerate UI to account for/fix the above and to offer the ability to regenerate UI values from custom property values
* lots of cleanups
* added tests 
* closes #127 
* closes #124 
* closes #121 
* closes #130
2024-02-18 17:14:31 +01:00
Mark Moissette 0083295a4d
fix(gltf_auto_export): fixed nested collections export (#126) 2024-02-07 14:22:53 +01:00
Mark Moissette 0d708b800e
chore(): cleanup & simplification pass (#122)
* closes #118 
* closes #110 
* closes #99
2024-02-07 14:07:17 +01:00
Mark Moissette 537f08b959
chore(tools/gltf_auto_export): fixed missing version bump & minor cleanup (#120) 2024-02-06 09:46:55 +01:00
Mark Moissette cfbda24da7
feat(tools/bevy_blueprints): bevy plugin + blender addon for components UI to more easily create components (#70)
* adds a new crate: ```bevy_registry_export``` to be able to create a json import of the registered component/type definitions
* adds a new Blender addon: ```bevy_components``` that takes that json data to generate custom UIs for components , to be to add & edit components easily in Blender 
   * also adds component metadata per object for more advanced features
   * etc
* updates to bevy_gltf_components & bevy_gltf_blueprints to add legacy_mode to support the "old"/current style component definitions
* same with gltf_auto_export Blender add_on
* closes #60
2024-02-05 23:01:19 +01:00
Mark Moissette 5c8f41b4a6
fix(gltf_auto_export): bumped version (#117) 2024-02-05 10:23:53 +01:00
Mark Moissette 2ae8351e0f
feat(gltf_auto_export): rewrite for more cleaner code & a lot of bug fixes (#109)
* fundamental rewrite of a lot of aspects of the exporter, for cleaner code & to solve a number of issues
* set export_separate_dynamic_and_static_objects default to FALSE, as it is an edge use case
* added central tracker class, to track the post save & depsgraph changes
* auto_export is now more operator centric, with functional undo
* now storing add-on configuration at the blend file level  (bpy.data.texts)
* found source of export issues ! mismatch between context.scene & context.window.scene (the last we can set, the other not)
* overhauled & cleaned up materials handling to avoid context issues & reliance on bpy.ops
* huge restructure of how temporary scenes are created & cleaned up
* added support for exports in edit_mode
* updated examples
* a lot more
* fixes #103 
* fixes #112 
* fixes #113 
* fixes #114 
* fixes #115 
* fixes #116
2024-02-05 09:49:19 +01:00
Mark Moissette 7699e87aac
feat(bevy_gltf_components): will not panic anymore if a gltf handle cannot be found (#108)
* added some minor extra debug information
* removed a useless clone() call on the gltf handle
* should resolve at least a part of #102
2024-01-31 12:30:36 +01:00
Mark Moissette b105f628df
chore(donations): added donation button in README (#106) 2024-01-23 22:09:59 +01:00