
New CollisionComponent
I wrote a new CollisionComponent to track aircraft collisions with obstacles. It handles detection, processes the impact, calculates the hit normal and force at the contact point, and passes all of that to JSBSim. From there, JSBSim takes over the physics calculations and produces a much more realistic aircraft response.
New CrashController
I also added a new CrashController alongside our first crash condition. I know the condition might sound a bit odd right now, but for an initial testing iteration, it works perfectly.
After a collision, I read the aircraft’s angular velocity from JSBSim, and if it exceeds 20 rad/s, it counts as a fatal crash.
What does that mean in practice?
If the pilot’s seat is located about 6 meters from the center of mass, the centrifugal G-force can be estimated as:
- a = ω² · r
- a = 20² · 6 = 2400 m/s²
Converting to Gs:
- 2400 / 9.81 ≈ 244.6 G
That’s an absolutely enormous value.
For reference:
- A pilot typically loses consciousness around ~5–9 G (without a G-suit).
- Aircraft structures usually fail and tear apart well before ~15–20 G.
In testing, this 20 rad/s threshold roughly matches the point where the VTOL stabilization system can no longer recover the aircraft. At lower values, the system can still stabilize the aircraft, as long as there aren’t repeated collisions.
Feedback is very welcome here!
Engine Vector Angles
Based on your feedback, I increased the thrust vectoring angles on all axes up to 45 degrees. Give it a try.
Gameplay Camera
I also tweaked the camera settings again for both fixed and orbit modes. I think it feels much better now, but I’d really like to hear what you guys think.
