Daniel Schroeder's Avatar

Daniel Schroeder

@dan5sch.bsky.social

Making pretty pictures with GPUs https://blog.danielschroeder.me/

537 Followers  |  249 Following  |  46 Posts  |  Joined: 10.01.2025
Posts Following

Posts by Daniel Schroeder (@dan5sch.bsky.social)

I'm making a game engine based on dynamic signed distance fields (SDFs)
YouTube video by Mike Turitzin I'm making a game engine based on dynamic signed distance fields (SDFs)

The video:

youtu.be/il-TXbn5iMA

06.01.2026 19:53 — 👍 214    🔁 58    💬 20    📌 15

I've been doing more research and thinking about this recently -- the merits of porting this into an engine vs. building out the engine features I'd need for a game myself. I'm increasingly favoring the path of doing a custom engine, for a range of reasons, but the jury's still out

30.10.2025 23:27 — 👍 3    🔁 0    💬 0    📌 0

Ok, this is relatable

19.08.2025 19:59 — 👍 1    🔁 0    💬 1    📌 0
Video thumbnail

Currently, all the light sources in my small-voxel renderer are dynamic (though without inter-object shadows). I didn't demo this in the new YouTube video, but somebody asked about it in the comments, so here's a quick example.

19.08.2025 06:27 — 👍 22    🔁 1    💬 3    📌 0

Thanks! Though needless to say, I'm making some very particular tradeoffs to get there, compared to a general-purpose modern renderer...

18.08.2025 22:38 — 👍 2    🔁 0    💬 0    📌 0

Thanks! And yeah, shadows are something I'll be thinking about in the future. I mention this briefly in the blog post in the thread

18.08.2025 22:18 — 👍 2    🔁 0    💬 0    📌 0

Thank you!

18.08.2025 22:15 — 👍 1    🔁 0    💬 0    📌 0
Preview
Voxel Renderer — Handling Objects and Animated Characters Introduction Somehow, it's been over a year since I wrote the first two posts introducing my small-voxel renderer, inspired by the look of classic 90's 3D games. These posts and the video received mor...

For more information on what I've been up to and where I plan to go with this project from here, or to get in touch, see this blog post: blog.danielschroeder.me/blog/voxel-r...

18.08.2025 19:30 — 👍 23    🔁 5    💬 1    📌 0
Leveling up my small-voxel renderer
YouTube video by Daniel Schroeder Leveling up my small-voxel renderer

I've made a new trailer-style video to show where the project stands today. Make sure to watch to the end... www.youtube.com/watch?v=bN9n...

18.08.2025 19:30 — 👍 28    🔁 3    💬 1    📌 0
Top: three voxel meshes depicting different kinds of geometry you'd find in a game. Bottom: the triangle-mesh geometry I voxelized to create these meshes, visualized using surface normals to highlight geometric detailing.

Top: three voxel meshes depicting different kinds of geometry you'd find in a game. Bottom: the triangle-mesh geometry I voxelized to create these meshes, visualized using surface normals to highlight geometric detailing.

To add those elements, I now support voxelizing detailed triangle meshes, producing voxel meshes that match the aesthetic of the environment geometry. The voxelizer tolerates off-the-shelf assets and produces good results across foliage, characters, and hard-surface meshes.

18.08.2025 19:30 — 👍 24    🔁 0    💬 1    📌 0
Left: low-poly textured geometry. Right: the same geometry with small voxel detailing applied using displacement.

Left: low-poly textured geometry. Right: the same geometry with small voxel detailing applied using displacement.

In last year's work, I modeled the environment as low-poly geometry and used textures with displacement maps to apply fine voxel detailing. This workflow is efficient for structures and terrain, but it can't handle things like foliage, small props, or animated characters.

18.08.2025 19:30 — 👍 15    🔁 0    💬 1    📌 0
Video thumbnail

Here's an update on my small-voxel renderer, inspired by the look of games like Doom and Quake. The work I shared last year focused on handling simpler environment geometry. Since then, I've greatly expanded the scope of what I can depict in this art style. More info in thread.

18.08.2025 19:30 — 👍 280    🔁 56    💬 12    📌 3

The pain is real. I had a mouse that developed this a few days before a deadline when I didn't have time to go buy a replacement. Much annoyance ensued

18.08.2025 04:35 — 👍 1    🔁 0    💬 0    📌 0

He, to be very clear, meaning me

01.08.2025 23:29 — 👍 1    🔁 0    💬 1    📌 0

Having no gameplay beyond being able to walk around? Nothing wrong with that, he says, self-servingly

01.08.2025 23:27 — 👍 1    🔁 0    💬 1    📌 0

Left feels practical, right has more personality IMO. Right feels like the posture of someone who feels threatened

24.07.2025 08:17 — 👍 2    🔁 0    💬 0    📌 0

I ran into this too recently, though not as a user. I was researching the APIs and their differences, and discovered that the early bug reports on the "gpuweb" spec repo are a great resource for discovering these differences.

26.06.2025 02:07 — 👍 1    🔁 0    💬 1    📌 0

I experimented with the same trick recently. Very useful when you're lighting an area with non-shadow-casting lights and don't want to use a huge number of them. Being able to configure *per light* what fraction of the light is ambient is also useful

23.05.2025 19:55 — 👍 3    🔁 0    💬 0    📌 0

Only took a quick look so far, but the interactive demos are very cool!

12.04.2025 20:05 — 👍 1    🔁 0    💬 0    📌 0

When I'm looking for info about how older engines solved problems, I try to find old modding community websites that are still active. There's usually somebody who has compiled this kind of information, or links to it

30.03.2025 18:24 — 👍 0    🔁 0    💬 0    📌 0

Getting there...

26.03.2025 01:07 — 👍 0    🔁 0    💬 0    📌 0

I took care of that days ago but my suitcase is still half packed. Results inconclusive.

26.03.2025 01:01 — 👍 1    🔁 0    💬 1    📌 0

OK, now this is super intriguing. Will have to look into your plugin...

25.03.2025 23:08 — 👍 1    🔁 0    💬 0    📌 0

Yikes. Thankfully I haven't met many people who talk this way. That said, I bet a lot of us have made the mistake of getting carried away and talking for too long about something we're working on that we care about. I sure have

25.03.2025 21:43 — 👍 1    🔁 0    💬 1    📌 0

Heck, I didn't even get sick and I feel destroyed. It's a draining week!

25.03.2025 17:57 — 👍 0    🔁 0    💬 1    📌 0

That's a wrap for GDC 2025! Thank you to everyone who met with me this week -- I got to have a lot of interesting conversations this year

22.03.2025 02:45 — 👍 5    🔁 0    💬 0    📌 0

Mixamo's Romero getting a glow-up?

09.03.2025 23:35 — 👍 2    🔁 0    💬 1    📌 0

Ooh, this looks nice. Brown or otherwise, one of the things that I think games from this era did well is to lean into an opinionated, stylized color palette

27.02.2025 19:40 — 👍 1    🔁 0    💬 0    📌 0

It makes me happy to see a big IP being willing to go for a project like this

27.02.2025 17:55 — 👍 1    🔁 0    💬 0    📌 0

Thank you! I really appreciate that

25.02.2025 22:39 — 👍 1    🔁 0    💬 0    📌 0