lucasw
@lucasw0.bsky.social
24 followers 87 following 74 posts
https://github.com/lucasw Interested in rust programming & robotics
Posts Media Videos Starter Packs
Pinned
lucasw0.bsky.social
Rust wrapped Jolt Physics visualized in Bevy- each ray-cast simulated lidar point is an individually translated sphere
youtu.be/I2yfPAyACps?...
Rust Bevy JoltPhysics vehicle simulation
YouTube video by Lucas Walter
youtu.be
lucasw0.bsky.social
Rust wrapped Jolt Physics visualized in Bevy- each ray-cast simulated lidar point is an individually translated sphere
youtu.be/I2yfPAyACps?...
Rust Bevy JoltPhysics vehicle simulation
YouTube video by Lucas Walter
youtu.be
Reposted by lucasw
jonhoo.eu
About a month ago, I gave a talk at the Rust Amsterdam meetup about Sguaba (the type-safe spatial math Rust crate), and the recording of that is now online for anyone who wants their head to hurt with frames of reference and coordinate transforms 😅
youtu.be/kESBAiTYMoQ
Sguaba: Type-safe spatial math in Rust
YouTube video by Jon Gjengset
youtu.be
lucasw0.bsky.social
The 'Rust for Robotics' video is now on youtube: youtu.be/1zLLuWbnuN8?...
Reposted by lucasw
rustconf.com
It's been a month since #rustconf 2025, but the buzz is still strong! 🦀

Revisit the magic via these videos on the @rustfoundation.org YouTube channel, incl. sessions, keynotes, & this highlight reel: www.youtube.com/watch?v=Hw_I...

+Don’t miss these event pics 📸 www.flickr.com/photos/rustf...
lucasw0.bsky.social
A nice feature with rerun with the buffering of recent data in rerun is that I can build, run a simulation of so many steps faster than real time, replay some then make changes and recompile, but continue to watch the sim in rerun and scrub around in time while waiting (and maybe make more changes).
lucasw0.bsky.social
@rerun.io for visualization again, though the movement over the terrain is not obvious- directional lighting and shadows would help (rviz doesn't have shadows but does have camera aligned lighting). I could bake some shading into the mesh triangle colors, or other rerun features could help?
lucasw0.bsky.social
The Jolt Physics 'VehicleConstraintsTest C++ wrapped in rust using cxx- it's working as well as I need it to though I'm not sure if wheel friction is right (are wheels spinning faster than vehicle speed over the ground?). The build process isn't ideal but is workable.
github.com/lucasw/jolt_...
lucasw0.bsky.social
```
cxx_build::bridge...
.define("JPH_DEBUG_RENDERER", Some("1"))
.define("JPH_PROFILE_ENABLED", Some("1"))
```

Now can run the hello world through cxx, can resume with the vehicle example next
lucasw0.bsky.social
Need to match these:
```
Version mismatch, make sure you compile the client code with the same Jolt version and compiler definitions!
Mismatching define JPH_PROFILE_ENABLED.
Mismatching define JPH_DEBUG_RENDERER.
```
lucasw0.bsky.social
First question is can I use header files that are pulled in by a dependency (joltc-sys) in my `build.rs`? It looks like it automatically knows about target/release/build/joltc-...hash.../out/lib/libJolt.a, I can link that, but how to include 'joltc-sys-.../out/include/' in cxx_build?
lucasw0.bsky.social
Starting over with getting a Jolt physics vehicle simulation into rust- going to try to put a big chunk of it into C++, then use cxx to manage that through a high level interface to supply inputs, step the sim, and get new state after the step update.
lucasw0.bsky.social
The next thing needed is a HeightField to drive over, but that isn't in the jolt-rust JoltC currently- github.com/amerkoleci/j... which is a different jolt c wrapper does have it, but making a rust wrapper for that is daunting. Should I just do nearly everything in C++, wrap in rust at high level?
GitHub - amerkoleci/joltc: JoltPhysics C interface
JoltPhysics C interface. Contribute to amerkoleci/joltc development by creating an account on GitHub.
github.com
lucasw0.bsky.social
Have a sim vehicle in jolt-rust working with stacked hinges for wheel rotation and steering on two of four wheels, no suspension, visualized in @rerun.io:
lucasw0.bsky.social
But now I'm seeing the SixDOFConstraintSettings is missing the MotorSettings... maybe I should just make slider constraints and add separate steering and rolling hinges?
lucasw0.bsky.social
What about GroupFilterTable? I see JPC_GroupFilter but no table- what does the table do?
lucasw0.bsky.social
But VehicleSixDOFTest.cpp only needs SixDOFConstraintSettings which is already in JoltC, so that's the example to follow for now
lucasw0.bsky.social
Now looking at VehicleConstraintTest.cpp there are several things that don't exist in JoltC: VehicleConstraintSettings & WheelSettingsWV (which extends WheelSettings) - the first looks to be easy to add, there are many other *ConstraintSettings in JoltC to follow the example of.
lucasw0.bsky.social
Rustconf main room
lucasw0.bsky.social
Have to cargo clean if I add a new function to the Jolt bindings? Or is there a specific file or directory in target I could have deleted for less rebuilding time?

Anyhow added SetGravity()

github.com/lucasw/jolt-...
add physics system set_gravity · lucasw/jolt-rust@ed21aad
github.com