Skip to content

Conversation

@guyguy2001
Copy link

@guyguy2001 guyguy2001 commented Apr 14, 2025

Hey,

I wanted to use tnua for my 0.16 project, and for some reason I ended up porting tnua instead of downgrading my project.
This branch works, at least for this demo:

bevy run --bin shooter_like --features avian3d

Does this PR look useful to you? I probably won't have the time to actually support it further, but I wanted to push it as a PR instead of having it just sit locally on my PC.

Given that rapier isn't supported, and that avian needs bevy 0.16 rc2 to work, I doubt this can be merged soon.

(God do I really hope I didn't just miss an existing 0.16 branch)

Random Notes

  • For the same reason as Compilation issues with bevy 16 rc rust-adventure/skein#27, I ended up needing to be very explicit with the bevy dependencies - hopefully that won't be necessary soon.
  • The TOML formatting changes were automatically made by vscode - do you have a fomatter I can use to revert them? If not, most of the cargo changes are temporary patches either way, so most stuff will be removed either way.
  • Some stuff, such as ChildOf {parent: foo} -> ChildOf(foo) will have to be changed when bumping bevy from rc3 to rc4.
  • I think you can find the reason for all of my non-Cargo changes by ctrl-f ing them in the migration guide (https://bevyengine.org/learn/migration-guides/0-15-to-0-16/).
    I never touched tnua before - so I may have missed important context when making changes.

Thank you for the awesome library! It was so surprising to see that it supports both rapier and avian

@tapmondev
Copy link

Just a drive-by comment. Avian will support no-std environments avianphysics/avian#703 . Will tnua be able to support this as well?

@idanarye
Copy link
Owner

Tnua relies on Box (for the basis' and actions' polymorphism) so it can't support no-std.

(I'm thinking about removing this dynicism for unrelated reasons, but even then I'm not sure it's worth the effort)

@guyguy2001
Copy link
Author

guyguy2001 commented Apr 18, 2025

Updated to rc5.

The only 2 issues I have when running the demo are output lag (which is cased by my PC being cursed, happens to me on all projects), and that the camera moves weirdly fast (which is probably my DPI).
The lag doesn't happen to me on main - I still think this is weirdness with my PC, but I'd appreciate if you could test for it on your end.

Should I undo the automatic formatting changes on the toml files? Or should I keep them in?

And will there be a way to merge this before avian releases a version? Currently it is pinned to their newest commit on master (and I'm not sure what's the state with rapier and 0.16)

@idanarye
Copy link
Owner

I'm not going to merge anything that targets Bevy RCs, and definitely not anything that target specific commits on Rapier/Avian. Once Bevy 0.16 is out, and once either Rapier or Avian make a release that supports it, only then am I going to upgrade the dependencies and make a Tnua release.

I understand why big crates like Avian need to prepare in advance, but Tnua is still small enough that these upgrades are quick, and I think this kind of preparation is more trouble than its worth.

@janhohenheim
Copy link
Contributor

janhohenheim commented Apr 28, 2025

@guyguy2001 Thanks for making this draft! Now I can already upgrade some stuff :)

@vini84200
Copy link

Avian just had a release with Bevy 0.16 support: https://github.com/Jondolf/avian/releases/tag/v0.3.0

@idanarye
Copy link
Owner

idanarye commented May 9, 2025

Yea. I'm working on the upgrade now.

@idanarye idanarye closed this Sep 16, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants