@crobocado@mastodon.social avatar

crobocado

@crobocado@mastodon.social

Gardener of plants and code.
Dad of three.
Making games.
He/him or they/them
Fuck facsists and capitalism ! for LGBTQA & women rights !
BLM, Free Palestine !

This profile is from a federated server and may be incomplete. Browse more on the original instance.

crobocado, to blender
@crobocado@mastodon.social avatar

Just released v0.2 of #bevy_components: the #Blender add-on to add & edit #bevy components in Blender

https://github.com/kaosat-dev/Blender_bevy_components_workflow/releases/tag/bevy_components_v0.2

  • BREAKING CHANGE ! changed internal representation of components, incompatible with v0.1, breaks UI values....but
  • added buttons to regenerate UI to account for/fix the above (so no actual data loss, please see the README file)
  • added watcher/ poll system to automatically update components list when the registry file changes
  • fixed a lot of minor issues
crobocado, to bevy
@crobocado@mastodon.social avatar

So after a lot of blood , sweat & tears (or coffee, debugging, and swearing ?) The first release of the tooling to add & edit #Bevy components in #Blender is OUT !!
You can now make an export of your registry, and have the Blender add-on generate a custom UI for you for all your (and Bevy's built in) components !
On the menu:

1/2
Have fun !

video/mp4

crobocado, to blender
@crobocado@mastodon.social avatar

Getting every closer to releasing my new #blender add-on for adding #bevy components to Blender objects, using an automatically generated Ui based on the #bevyengine (& your own, from your project) component definitions
Turned out to be WAY more work than anticipated, but still 95 % done.

  • now supports nested (any level !) structs within structs within enums, or whatever you use :D
  • even complex objects get "packed" in simple custom properties
  • a TON more
  • list/vec support is meh
    1/3

image/png

crobocado, to blender
@crobocado@mastodon.social avatar

Worked a bit on an experimental #blender add-on to allow some more convenient UI to add #bevy components to objects!

You will be able to use this instead of having to manually add custom properties and do unreliable text field editing.

The UI is auto generated based on an export of the #bevyengine AppTypeRegistry (list of registered components).
Huge shout-out to @killercup for doing much of the work on the Bevy side :)

Release is still way off, but it already feels right & practical !

crobocado, to bevy
@crobocado@mastodon.social avatar

Just released the first version of https://crates.io/crates/bevy_gltf_save_load
for #bevyengine

It is a personal "victory" of sorts:
Finally managed to have a good solution for saving & loading games in #Bevy, and that plays nicely with Blueprints, hierarchies AND keeping static & dynamic data separate etc
been trying to have this working on & off for almost a year 😄

uses #bevy_gltf_blueprints under the hood .
Oh and the #blender tooling got an upgrade for this too :)

1/2

crobocado, to bevy
@crobocado@mastodon.social avatar

Just released the latest version of #bevy_gltf_blueprints (v0.5) for #bevy & #gltf_auto_export (v0.8) with nested blueprints support !

It means you can now nest collection instances (aka blueprint instances), inside blueprints , gaining

  • smaller sized gltf files when reusing blueprints
  • less memory use as a direct result
  • more intuitive workflow in #blender with better re-use of collections/blueprints !

It's Blueprints all the way down !

https://github.com/kaosat-dev/Blender_bevy_components_workflow

#BevyEngine

image/png
image/png

crobocado, to bevy
@crobocado@mastodon.social avatar

On my endless quest to have more & more stuff configurable from within a new release from adds the ability to automatically inject components to control Ambient/background color, Bloom, Shadow-map resolution etc directly from Blender.

Qol improvement, and a few less things to hardcode ;)

https://github.com/kaosat-dev/Blender_bevy_components_workflow
(see the associated example for the Bevy side)

crobocado, to blender
@crobocado@mastodon.social avatar

#bevy_gltf_blueprints and the add-on for #blender
now have support for "material libraries"

  • this allows you to store your materials in a single file, avoiding redundant textures/materials in each blueprint #gltf file
  • it strips materials from exported blueprints on the blender side, adds a component with material info to be used by...
  • the #bevy side takes care of injecting the relevant materials into the correct entities
  • tldr: smaller gltf assets, less memory , more reuse !

image/png
image/png

crobocado, to random
@crobocado@mastodon.social avatar

Very little time & energy, but managed to get more things working in my #BevyEngine particle (& more!) experiments.

  • The toxic cloud particles are entities
  • I added an "ImpactFx" component you can add to your entities that is just the name of a blueprint (using #bevy_gltf_blueprints ) that will get spawned at the point of the impact/collision
  • In this case ImpactFx is a "goo" entity, that is ALSO a particle that has a lifetime & changes scale over time

All this in very little code :)

A game where a robot is spreading a green cloud that makes weird goo appear on objects

crobocado, to random
@crobocado@mastodon.social avatar

Got a lot more things working for my #BevyEngine particle systems: amongst other things:

  • as many emissions (or "bursts") as you want per emitter, with start delays , repeats etc
  • spawning over distance + spawning over time
  • bug fixes
    Next up (might take a long while)
  • particle trails !

Since it uses #bevy_gltf_blueprints tempted to make it an additional crate in the bevy_gltf_workflow repo, or perhaps a separate one ? (Starting to have too many Bevy crates/repos to maintain :D)

video/mp4

crobocado, to bevy
@crobocado@mastodon.social avatar

To debug lasers in #bevy I slowed them down, WAAAY down, actually love how it looks, also bonus you can break your robot on your own lasers, since only the lasers are slowed down : bug or feature ?

Also , a sneak peak at the various Bevy components defined in #Blender (4.0), a bit overkill, but everything is settable easily and is embedded in the #gltf files

In practice, I am loving my workflow and #bevy_gltf_blueprints more and more ! Fast iteration & problem solving.

Blender screen showing components used to define plasma / laser bolts

crobocado, to gamedev
@crobocado@mastodon.social avatar

#gamedev Took a bit of a break updating my experimental/test
#bevy game. Now uses #bevy_gltf_blueprints more extensively

Warning ! flashing lights ! Do not watch this if you have epilepsy !

Robots shooting lasers at each other

crobocado, to blender
@crobocado@mastodon.social avatar

Added a basic "multiple levels"example for #bevy_gltf_blueprints !
Since the #Blender add-on already supports exporting multiple levels trivially, it was time to add a demo for the Bevy side :)

Example is here : https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/examples/bevy_gltf_blueprints/multiple_levels

Less than a 100 loc to add level switching logic, just love #Bevy so much :D
(https://github.com/kaosat-dev/Blender_bevy_components_workflow/blob/main/examples/bevy_gltf_blueprints/multiple_levels/src/game/level_transitions.rs)

Note that it is a barebones demo, so the state of entities is NOT saved between levels, but that would be relatively trivial to add .

A capsule stand in for a player character , entering various levels by stepping on big "Exit" signs on the floor

crobocado, to random
@crobocado@mastodon.social avatar

Upgrading some of my crates/ demos for #BevyEngine 0.12, and doing some improvements in the process: this is my vertex animation demo

  • In the old version (see next post), since the #gltf file is split by colors, you end up with holes between them in the animation (AABB based, one per object, passed to the shader)
  • in the new version I traverse the gltf hierarchy to generate a compound AABB for the whole model, and pass that one to the shader, problem solved)

Still a few things to tweak :)

A video of a stylized 3d fish swimming,

crobocado, to bevy
@crobocado@mastodon.social avatar

Just released a new version of #bevy_gltf_blueprints for #BevyEngine !

(https://crates.io/crates/bevy_gltf_blueprints)

With clearer & cleaner animation support for the spawned entities, a new example , with #bevy 's animated foxes and some of my robots for good measure, showing how animations depending on the player's proximity , in just a few lines of code :)

Real time animated, low poly 3d foxes & robots that change animation based on the player's proximity

crobocado, to blender
@crobocado@mastodon.social avatar

Coming soon, a major upgrade of the #blender side of my blender -> #gltf -> #BevyEngine tooling:
(auto_gltf_export)

  • "smart" export: ie it will automatically (on save) export only the objects or collections that actually changed to individual gltf files! This is a huge speed & efficiency boost
  • support for any number "level" scenes & "library scenes", no more limited to one for each
  • improved UI & UX (ui to pick actual scenes of your blend file instead of text fields) etc
crobocado, to blender
@crobocado@mastodon.social avatar

Finally released the #blender #gltf workflow crates for #BevyEngine !
Now you can create #blueprints for Bevy using gltf files with embedded components and spawn them easily and also have tiny gltf files for your levels, with the blueprints being spawned from separate files automatically !

The Blender add-on also automatically exports your collections !

There is a "tutorial" video too:

https://youtu.be/CgyNtwgYwdM

https://github.com/kaosat-dev/Blender_bevy_components_workflow
https://crates.io/crates/bevy_gltf_blueprints
https://crates.io/crates/bevy_gltf_components

crobocado, to blender
@crobocado@mastodon.social avatar

Fun spawning stuff using my new #gltf based Blueprint/prefab system for #BevyEngine built upon my previous work :)

Close to done with rewriting, documentation, Blender Plugin, crates etc

The #Blender plugin now also allows you to

  • automatically generate tiny "level" gltf files from a scene
  • automatically export all the collections used in that scene to separate Blueprint Gltf files
  • automatically insert components for Bevy to spawn it all !

Release should be in a few days

Abstract shapes in a game engine(cuboids, capsules) spheres etc, with additional capsules (stand ins for health pickups), being spawned while the player character (also a capsule), is moving around

crobocado, to blender
@crobocado@mastodon.social avatar

Was on holiday & then sick for a long time, but I have started work on the next stage of tooling to use #blender as an editor for #Bevy #BevyEngine
(#bevy_gltf_components)

  • For the Blender tooling, a toggle to enable replacing collection instances with empties with special components, and auto-exporting each of the source collections to separate #gltf files
  • Bevy side code to spawn each gltf file with the correct components at the right spot
  • thus more editor like & flexible
  • details below

The same User interface of Blender, a 3D modeling tool, showing a list of objects, but with actual graphics

crobocado, to blender
@crobocado@mastodon.social avatar

new & overhauled #Blender => #Gltf => #Bevy #BevyEngine code & workflow !

  • Useful if you want to use Blender as your Editor
  • define Bevy components as custom properties in Blender , now using RON (much cleaner syntax!) , and better custom properties support (colors, vectors , etc :)
  • a Blender Add-on (optional) to auto export to gltf on save
  • a demo with multiple colliders, collections etc
  • #opensource
  • a video tutorial https://www.youtube.com/watch?v=-lcScjQCA3c

https://github.com/kaosat-dev/Blender_bevy_components_worklflow

Enjoy :)

crobocado, to blender
@crobocado@mastodon.social avatar

I finally published my #Blender => #Gltf => #Bevy #BevyEngine code & workflow

  • Useful if you want to use Blender as your Editor
  • define Bevy components as custom properties in Blender (JSON for now)
  • no plugin or extra tools needed in Blender
  • define components in Blender Collections & override any of them in your collection instances if you want
  • code to auto add additional required components in Bevy (optional)
  • minimal setup & code
  • #opensource
  • have fun:)

https://github.com/kaosat-dev/bevy-fun-examples/blob/main/examples/blender_gltf_components/README.md

crobocado, to gamedev
@crobocado@mastodon.social avatar

had almost no time for #gamedev in #bevy #BevyEngine this week, but FINALLY created some test animations in #blender and experimented with importing them into Bevy.

Doing it a bit differently than in the Bevy examples:

  • I have a spawning system that can spawn from gltf files
  • on spawning, I clone Bevy's gltf "named_animations" data from the gltf into a component that is inserted at the same level as the AnimationPlayer component
  • I can then query for the combo to control the animations

video/mp4

crobocado, to bevy
@crobocado@mastodon.social avatar

Tested out deploying a #bevy #BevyEngine game to the #SteamDeck and I was blown away !It was a breeze !
I at least expected a few issues and things to fix, but it worked out of the box 🙂
Compile in release mode, follow the Steam deck dev docs (which are great, along with the tools!) to deploy and voilà !
Performance is really good as well !
I was curious to see how the "particles as entities" would perform and the answer is "just fine" :)
I love Bevy so much :)

video/mp4

crobocado, to bevy
@crobocado@mastodon.social avatar

Having fun with an experimental "particles as entities " #particle system implementation in #bevy #BevyEngine !
Not going to be anywhere as efficient as Bevy_hanabi (of which I reuse the great gradient implementation), but so much possibilities!

  • mesh particles
  • shadowed particles
  • physics uses Rapier
  • particles can interact with the world etc

implementation is a few hundred LOCs, will see if I can extract it easily because I would love to open source this.

video/mp4
video/mp4
video/mp4

  • All
  • Subscribed
  • Moderated
  • Favorites
  • bokunoheroacademia
  • cubers
  • rosin
  • Durango
  • DreamBathrooms
  • osvaldo12
  • magazineikmin
  • Youngstown
  • slotface
  • InstantRegret
  • mdbf
  • thenastyranch
  • khanakhh
  • kavyap
  • HellsKitchen
  • ethstaker
  • everett
  • tester
  • normalnudes
  • tacticalgear
  • GTA5RPClips
  • cisconetworking
  • modclub
  • Leos
  • lostlight
  • relationshipadvice
  • anitta
  • sketchdaily
  • All magazines