1. sfsim
  2. News

sfsim News

Playtest is live!



Hi everybody!

I have just pushed a playtest build to Steam and the button to join the playtest is visible on the sfsim page now. Before you join, please be aware that sfsim is still very much a work in progress and a lot of things are still missing! Also check the estimated graphics requirements on the sfsim page in case you want to run the game fullscreen.

At the moment you can take off and fly around in the atmosphere and the aerodynamics should be fairly realistic.

Here are the important key bindings for testing:
  • Esc: toggle the menu
  • F: toggle fullscreen
  • P: pause/unpause
  • G: gear down/up
  • B: wheel brakes
  • A, S, D, W: flight stick
  • Q, E: rudder
  • Space: thrust (keep pressed for continuous thrust)
  • numerical keypad: change camera position
  • "," and ".": increase/decrease camera distance
  • H, J, K, L: move the camera around
  • PgUp, PgDn: move forward/backward in pause mode
  • X: set modified position acquired in pause mode


Note that you need to operate the rudder and flight stick in combination to prevent large side slip angles which cause the delta wing to roll.

Let me know if there are any problems.
I tested it on Windows 11 and Debian 12, but I hope it will run on other versions of Windows and GNU/Linux as well.

If you have time, please head over to the sfsim playtest discussion and let me now your thoughts.
Here are a few questions from my side:
  • what graphics card do you have?
  • what is the resolution of your screen?
  • what is the framerate of the game in fullscreen mode?
  • what do you think about the graphics quality?
  • did you enjoy the aerodynamics?
  • what do you miss in the space sim genre?
  • are the keyboard mappings ok or would you prefer them different?
  • do you have any questions not answered in the FAQ?

Landing Gear Physics



I have created landing gear animations with Blender, baked them, and exported the result to glTF. "Inverse kinematics", "Damped track", and "Child of" constraints where used to ensure that torque link, resistance rod, and piston are animated correctly. Animations affecting multiple objects are merged using NLA track names when exporting to glTF. I didn't find a way to create multiple animations affecting the same objects, so I had to sequence steering, suspension, and gear deployment in the same animation. Wheel rotation however was kept separate. The following screen recording shows Blender playing back the sequence of steering, suspension, and gear deployment in parallel with the wheel rotation.

[previewyoutube][/previewyoutube]

The model including the animations are imported using the Assimp bindings of LWJGL. The suspension and wheel rotation then can be driven using the wheeled vehicle constraint of the Jolt Physics engine. The planet surface was simulated by extracting 3x3 tiles from the planetary cube map and converting them to a static Jolt mesh. By simulating the wheels as moving surfaces, the numerical instabilities of simulating a rotating cylinder with constraints directly are avoided. The result is a beautiful interaction of the landing gear with the ground as shown in the following video (music: "Dune" by Andrewkn).

[previewyoutube][/previewyoutube]

If you are interested in a realistic space flight simulator, please consider wishlisting sfsim on Steam.

Working on Landing Gear

At the moment I am developing the landing gear for the spacecraft in the upcoming sfsim simulator.



The Jolt Physics library provides a great physics implementation for wheeled vehicles.
Previously I have implemented extracting a small part from the planet mesh and convert it to a Jolt Physics mesh.
This then can be used to simulate the behaviour of the suspension and the wheels when the gear makes contact with the ground.

[previewyoutube][/previewyoutube]

I am also working on an animation for gear deployment.
Blender supports different constraints such as inverse kinematics as shown in Mark Alloway's tutorial.
Here is a video showing the first working version of the landing gear (doors not implemented yet).

[previewyoutube][/previewyoutube]

Only part left to do is baking animations, exporting it to glTF and driving the animations using information from Jolt Physics.

Let me know if you have any comments or suggestions.

If you are interested in a realistic space flight simulator, please consider wishlisting sfsim on Steam.