techhub.social is one of the many independent Mastodon servers you can use to participate in the fediverse.
A hub primarily for passionate technologists, but everyone is welcome

Administered by:

Server stats:

5.3K
active users

#bevy

13 posts11 participants1 post today

🎮 Bevy Enhanced Input 0.9.0 is out!

It's an input manager for Bevy, inspired by Unreal Engine Enhanced Input.

This release contains many changes, most notably the component-based API for contexts.
We've also reworked the documentation, now including a quick-start guide that walks you through the API.
@alice_i_cecile and I would appreciate your feedback 🙂

📜 github.com/projectharmonia/bev
📦 crates.io/crates/bevy_enhanced

Input manager for Bevy. Contribute to projectharmonia/bevy_enhanced_input development by creating an account on GitHub.
GitHubbevy_enhanced_input/CHANGELOG.md at master · projectharmonia/bevy_enhanced_inputInput manager for Bevy. Contribute to projectharmonia/bevy_enhanced_input development by creating an account on GitHub.

#bevy #avian3d #rustlang #cargame
Trying to query an avian3d rigidbody so I can find out the speed at the car tires' positions.
But turns out this line
```
rb : RigidBodyQueryItem
```
Inside the parameter of a function running on "update" Throws a very unhelpfull error message
"
error[E0277]: `fn(Res<'a, Time>, Query<'b, 'c, &mut Transform, With<Player>>, ..., ..., ..., ..., ...) {bil}` does not describe a valid system configuration
--> src/main.rs:9:26
.add_systems(Update, bil)
...
"

I'm adding kerning groups to the glyph info widget in Bezy.

Because Bezy is built on a game engine(#bevy), we get optical kerning with game controllers out of the box.

But most of the tools for editing kerning info have been offloaded to a separate Rust CLI app where it's easier to automate font production with both procedural scripting and AI automation.

Most font editors are not designed for programmers, Bezy is. Font production can be MUCH more automated when you don't use prosumer tools.

#bevy #avian3d #rustlang
Apperently there is like no actual documentation on how to add a force at runtime with avian3d. They just spawn the rigidbody with a ExternalForce::default() component.
In some obscure blog post they did just this, but fetched this force component with
" mut force : Query <&mut ExternalForce> "
Then they just add forces like normal with that force variable.
Thought that you needed to create a force with ExternalForce::default() and then apply it somehow. Silly me :P

Continued thread

#bevy #nixos #rustlang #kate
Here's the bevy rust nixos devshell that worked for me, if you're interested d:

```shell.nix
// stuff before buildinputs
buildInputs = [
cargo rustc rustfmt pre-commit rustPackages.clippy
udev alsa-lib vulkan-loader libudev-zero pkg-config
xorg.libX11 xorg.libXcursor xorg.libXi xorg.libXrandr # To use the x11 feature
libxkbcommon wayland # To use the wayland feature
];
//stuff after buildinputs
```

Continued thread

#kate #rustlang #bevy
Just wanna expand a bit on this post.
Yes for some reason running cargo run (and waiting for it to run) and then running it again (without changing anything) throws the error again. But instead of just launching what's already compliled, it goes ahead to build it all again. :P

#kate #rustlang #bevy
Keep getting warning "[23:35:27  LSP Server Warning] rust@/home/gobbe/dev/RUST/bilen
Failed to run build scripts of some packages."
Don't really know what it means, but I can tell that when building my bevy app all bevy crates are rebuilt (despite already having been built before). So rn I have miserable milti-minute long build times :(

Unsure if they are in any way related but I have a feeling it might be why cargo rebuilds all crates.

Ima update if I find out why :P

As a beginner I'm looking at #Bevy 2D text examples. I wonder whether it is possible (for me) to get the size of rendered text, so that I can arrange other elements based on it.

The most simple example would be the string "hello world" in a given font and I would light to know width and height, so that I can draw a rectangle around it.

My general idea is a kind of diagram editor, but with special layout rules I would like to implement myself.

I would like to understand how feasible it is.

🎆 Bevy Hanabi v0.15.0 is out!

Following the usual release pattern, v0.15.0 is a major release with amazing new features:

➡️ New "hierarchical" effect feature allowing with GPU spawn event, to allow an effect to trigger particle spawning into another effect
➡️ A rewrite of the ribbons/trails implementation with explicit particle sorting. This replaces the confusing "group" API.

github.com/djeedai/bevy_hanabi

📦crates.io/crates/bevy_hanabi/0
🦀github.com/djeedai/bevy_hanabi

🎆 Hanabi — a GPU particle system plugin for the Bevy game engine. - djeedai/bevy_hanabi
GitHubbevy_hanabi/CHANGELOG.md at v0.15.0 · djeedai/bevy_hanabi🎆 Hanabi — a GPU particle system plugin for the Bevy game engine. - djeedai/bevy_hanabi

Okay, so - a solution that works well for us in #bevy with Orthographic cameras, since we generally design for 1080p and scale + letter/pillarbox as required: pastebin.com/S51zTP3C

Basically force `scaling_mode` to `Fixed {width: 1920, height: 1080}` and `scale` to `1.0`

above solution is incomplete, will not play nice on ratios wider than 16:9 or resolutions smaller than 1080p, but works okay on various systems/displays my coworkers and I tested on.

...left as an exercise for the reader 🙃

Pastebina way to scale a bevy ortho cam - Pastebin.comPastebin.com is the number one paste tool since 2002. Pastebin is a website where you can store text online for a set period of time.

I'm really confused by how Viewports & Windows are supposed to work in #bevy especially on #macOS (or at least on my Macbook Air.)

I request a 1920x1080 "physical size" window - I receive a 3840x2160. Okay, double scale factor, makes sense..

But the actual resolution of the full screen is 2940x1912. So I won't actually get a window that size.

It does update after a frame or two, but then bevy's Window reports a physical size of 2940x1840.

Yuck. How do I get real numbers out of this?