#Trying to work up a 'True' 2.5D Game

1 messages · Page 1 of 1 (latest)

final plaza
#

I accidentally broke Unity’s renderer by using ints instead of floats… and that mistake led me to build a completely new 2.5D pipeline I now call Vexels.

As shown in this video, I built the Forest City area of the game using this custom 2.5D approach.

If you'd like to know the details, here's a summary of how I did it:
I started with a 2D project to get a very barebones version of URP. From there I used the Scriptable Render Pipeline to strip down and rebuild the 3D renderer so it could output in what I call Vexels.

Vexels are a custom 2D layering system I made. Instead of relying on 3D geometry, the renderer casts 2D rays, figures out what should be visible, and then builds the scene using Vexels with some math for depth and collision. Geometry is only used as a reference for texture placement, not to actually render the scene, which keeps it lightweight.

Because of that, the system does not just fake perspective with parallax layers. The depth, collisions, and shading all come from the ray logic itself. That is what makes this a “True 2.5D” approach. It looks like 3D, but it runs like 2D.

And it is fast. On the ROG Ally the pipeline runs at well over 5000 FPS, basically melting the framerate counter. On the tiny GPD Win 1 with nothing more than an Intel Atom chip for a CPU/GPU it still holds around 80 FPS, which is wild for a system this small.

Weirdly enough, it runs terribly inside the Unity Editor but perfectly fine in the build, so I’m still figuring out Unity’s goofy ahh Editor quirks that are probably causing it.