Game
Floating Sandbox
7 years ago

Z-Buffer Work Is Finally Complete


Finally, after 21 days of work and 34 commits, the re-design of the depth management subsystem is complete!

Depth management in previous versions was exclusively based on depth sorting: ships were being drawn connected component by connected component, from the furthest to the nearest. This worked fine for a small number of connected components, but it caused a lot of lagging whenever a ship would be reduced to smithereens. The following screenshot is from 1.8, showing the FPS rate right after an anti-matter bomb has exploded on the RMS Titanic (the normal RMS Titanic FPS rate on my 2010 laptop is ~21):

5d0935f19848f.png

As you can tell, the large number of connected components - and thus the large number of OpenGL batches - caused the FPS rate to almost get halved, down to ~10 FPS.

The new depth management strategy makes instead heavy use of OpenGL’s depth test. Each vertex is assigned a “plane ID”, which is simply a sequential integer starting from zero and incremented for each connected component. Plane ID’s of vertices are then passed to the shaders, which use them as Z coordinates. This way I can now render all connected components in a single pass! Here’s the same screenshot from before, but from the upcoming 1.9.0:

5d0935f322053.png

The FPS rate is now ~22 - even faster than when the Titanic was whole :-)

I’ll now switch to working on a few low-hanging thinghies, before packing and publishing a shiny new 1.9.0 release. Stay tuned!



6 comments

Loading...

Next up

1.12 Screenshot #1

Floating Sandbox at LVL UP Expo 2025!

Sneak Peek at the New Water Flood Algorithm

art comission.

We are under attack!

Updated the chest in the maze, adding sound, particles and better animation. But what's in the chest?

Horror WIP A track that will be featured in a future horror game soundtrack! Stay tuned!

Likes appreciated ✌️

#gamedev #composer #horrorgame #indiegame #IndieGameDev #soundtrack

Why walk when you can jump?

"Day to Day" (also check spud out here he's a great guy and writer: https://soundcloud.com/spudward)

Let me introduce you to the new Mech line: Gendai Spec. Those are Mech that specializes in surprise attacks, covered operations, and stealth. They are equipped with melee weapons but one of Gendai's frames supports sniper rifles.