Sven
banner
embersarc.bsky.social
Sven
@embersarc.bsky.social
hobby gamedev working on a spaceflight simulation game
Alright let's build a megastructure!

I've been reading Consider Phlebas by Iain M. Banks and can't resist adding a ring world to the game.

Starting a thread for this one 🧵

(image by @alexjaybrady.bsky.social for inspiration)

#gamedev #bevy
October 17, 2025 at 2:36 PM
I realized that the frame rate of my game was going down the more I played.

Let's debug!
October 12, 2025 at 9:15 AM
The egui -> Bevy UI rewrite is complete!

Quite happy that it was possible to reproduce the look and feel from before and even improve on it a bit :)

#bevy #gamedev
September 29, 2025 at 5:07 PM
Currently porting the GUI from egui to #bevy UI and quite happy with it so far! The only thing I'm missing is the ability to render arbitrary meshes as part of the UI.

Image nodes are super useful. I'm using one to show the navball which is a 3D scene rendered to a texture.

#gamedev
September 23, 2025 at 4:04 PM
I switched to the Avian physics engine! Its excellent documentation made this a pretty simple process.

The physics now run at a fixed rate, independent of the frame rate. This helps a lot with determinism and things keep their velocity, even if the rendering isn't fast enough.

#bevy #gamedev
September 21, 2025 at 9:07 PM
I added a hover mode to the spacecraft controller! It tries to keep the craft level at a fixed altitude so that the player can precisely maneuver across the ground.

Oh and also it's now possible to load in any 3D scene with colliders, like this makeshift landing pad.

#gamedev #bevy
September 13, 2025 at 5:15 PM
Finally got around to adding oceans to the planets!

It's just an additional opaque mesh on top of each terrain chunk. But changing the water's surface color depending on its depth is so simple yet so effective at faking actual translucency.

#bevy #gamedev
September 4, 2025 at 5:10 PM
Apologies for the lack of updates, I was chilling at the top of the highest mountain in the solar system

#gamedev #bevy
August 24, 2025 at 2:24 PM
One reason I enjoy shader programming is that at least bugs are entertaining
August 7, 2025 at 7:57 PM
Currently writing a controller to enable some cool takeoff and landing modes. The idea is that the controller should make such maneuvers relatively easy and intuitive as long as the ship's construction makes them physically possible.

#gamedev
August 4, 2025 at 9:33 PM
Experimenting with some close-up terrain detail textures. I like how putting some green rocks on the closest moon to the gas giant ties the scene together :)

#bevy #gamedev
August 3, 2025 at 11:36 AM
Working on a new aesthetic for the spacecraft model. The technology in the game should be more of the "far future" kind. This will do for now.

#gamedev
August 2, 2025 at 8:09 PM
The new terrain system had one drawback: The generated lower detail chunks did not have enough texture detail. A quick fix would have been to just subdivide them more, but that quickly blows up the memory and we do not actually need the additional geometry.
July 31, 2025 at 7:15 PM
I should stop taking screenshots on a bright screen in a dark room.

But hey at least the brightness is somewhat appropriate for the distance from the sun.
I finally got to merge the new terrain system! Really happy with how it turned out. Now it's just a matter of writing a fancy position -> (elevation, color) function for every planet and moon. Here are some impressions of the icy moon.
July 29, 2025 at 2:22 PM
I finally got to merge the new terrain system! Really happy with how it turned out. Now it's just a matter of writing a fancy position -> (elevation, color) function for every planet and moon. Here are some impressions of the icy moon.
July 28, 2025 at 8:26 PM
Added texture generation! The compute shader now also writes out color data when it creates a terrain tile. Just adding some white colors for the cliffs already goes a long way.

#bevy #gamedev
July 17, 2025 at 8:00 PM
where is the "let me cook" wgpu setting
July 14, 2025 at 7:43 PM
Added a readback step to copy the terrain data from the GPU in order to create colliders.

This required a small patch in #bevy to allow for partial buffer reads: github.com/bevyengine/b...

#gamedev
July 14, 2025 at 4:13 PM
Even large terrain textures can't provide the resolution to give enough interesting detail. So here's the new approach: Procedurally generate terrain chunks on the GPU. It's faster and easier to work with. And look at the detail!

#bevy #gamedev
July 12, 2025 at 6:42 PM
something I made for a local pub quiz please enjoy
July 3, 2025 at 8:52 PM
Here's the navball in action with a short explanation of how it was made. 1/3 🧵

#bevy #gamedev
June 18, 2025 at 3:50 PM
Spent a lot of time with texture compression and improving the terrain shader. Looks almost acceptable now, but still a long way to go. Maybe ground scatter is next!

#bevy #gamedev
June 5, 2025 at 7:57 PM
I struggled quite a bit with the y-up coordinate system in #bevy until I realized that ...you can just rotate everything by 90 degrees without any issues. It feels much more natural as there is a lot of mathematical code and I use Blender, both of which use z-up.
June 2, 2025 at 11:41 AM
I added an exhaust shader for the reaction control thrusters got control allocation working for translation and rotation!

#bevy #gamedev
May 26, 2025 at 9:42 PM
Experimenting with raymarching for the exhaust plume rendering. I also considered rendering it with a mesh or particles but now I'm convinced volumetrics are the way to go.

#bevy #gamedev
May 19, 2025 at 11:52 AM