hi @Nawar - The WebXRController was initially written with physics in mind, so I was able to walk up stairs and fall down edges. The first commit was a proof of concept - the “physics” was just a lerp - it wasn’t integrated with the physics engine (and didn’t use an impostor, gravity (velocity, direction) or even collisions). I just used a ray pointing down and moved the camera accordingly as a simple way.
The current WebXRController takes advantage of the collisions and functionality of the base camera.
In my test playground I was moving up stairs and falling off edges.
Here is a diff on the original PR and the merged one:
Comparing a0492ca0060ad3bbb2e6d59f83c420f7bb1c8a03…a9c4435cadf2d06390f6c55b646a74fbfaae69cf · brianzinn/Babylon.js (github.com)
Maybe that gives you some ideas? Cheers.
edit: I think you can hook to xr frame observable to mimic some basic physics functionality in this manner. suspect you can hook up yourself as well manually as an impostor.