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

Floating Sandbox at LVL UP Expo 2025!

Sneak Peek at the New Water Flood Algorithm

1.12 Screenshot #1

Short intro of us 💕✌️

We're an eletro duo based in Seoul 🇰🇷 Heavily influenced by the 90s.

Our new album #Xennials is all about the nostalgia of that era 💽 CD listenin 📟 beeper beepin 💾 floppy disks floppin days 😎

Stream now! 🎧

https://open.spotify.com/album/3YwWhnHWVy5cA8XOpbaGRA?si=8E9awqU…

"Thanks guys for endless hours of fun." 👍

(My first fan art. Read the article, please.)

#sonic #mario #photoshop

Shadow The Hedgehog X pixel art

I have added rewards for quests so that villagers can give you something in return for your hard work helping them. 🥳

I want to know - what's your favourite quest reward?

Protege el conocimiento, salva la historia. Guardian of Lore es un platformer 2D en el que debes luchar para mantener viva la memoria de la mitología latinoamericana. El juego llegará a Steam el 18 de mayo: https://steam.pm/app/1211740 #ScreenshotSaturday

Werehog transformation process. #sonicunleashed