Loading video...

Video Failed to Load

Go Home

Smooth LOD transition using beyer matrix dithering in three.js

15,452 views • 14 days ago •via X (Twitter)

20 Comments

kvick's profile picture
kvick14 days ago

beautiful work!

gsimone's profile picture
gsimone14 days ago

Thanks! It’s not that fancy but I had never tried it, made sense for a thing I’m working on

kvick's profile picture
kvick14 days ago

im always too adhd to bother with LODs but this looks significantly better than how most engines seem to handle it

gsimone's profile picture
gsimone14 days ago

I’m automating the fuck out of it because I’m trying to render 144 ish unique models on a page so every ms I can save is welcome, probably will need to come up with more clever ideas to make it viable

kvick's profile picture
kvick14 days ago

i know, so many tasks im soooooooo grateful for AI because holy shit is it depressing how much work goes into a lot of this stuff, I basically want to automate all asset prep and optimization if possible lol

gsimone's profile picture
gsimone14 days ago

I’m doing some very weird automation with this, will post if it’s good

gsimone's profile picture
gsimone14 days ago

shout-out DialKit; wanted to try it and it's great!

gsimone's profile picture
gsimone14 days ago

the idea is that pixels from 2 LODs never share a screen pixel, so they use complementary bayer matrices as masks. Kinda neat that it "looks" purple but it's actually just a function of the dithering

alevanderBatman's profile picture
alevanderBatman14 days ago

I might not be too familiar with this subject, but doesn't blending between two LODs mean that you're essentially still loading both models at the same time? Isn't that a potentially bad thing?

gsimone's profile picture
gsimone14 days ago

It is, yeah. The idea is that you only use it if does give a benefit

Theo Gil's profile picture
Theo Gil14 days ago

What's going on here? Instead of snaping between LODs you render both during a short transition and blend between them?

gsimone's profile picture
gsimone14 days ago

Correct, and the dithering makes each exclusive on screen

Faisal Ahmed's profile picture
Faisal Ahmed14 days ago

Excellent work! 💫

Cyrel's profile picture
Cyrel14 days ago

🔥🔥

AK's profile picture
AK14 days ago

Added this Bayer 2x2 and Bayer 4x4 to my UE5 fork as well.

⸺'s profile picture
⸺14 days ago

dithering for ever <3

Macroblock's profile picture
Macroblock13 days ago

Very nice. Is it more expensive using the finer grid?

Vladislav Kruteniuk's profile picture
Vladislav Kruteniuk14 days ago

Cool

jem 💜🩵🩷's profile picture
jem 💜🩵🩷14 days ago

bro,, how?

gsimone's profile picture
gsimone14 days ago

I’ll publish the whole pipeline and code etc tomorrow or Monday for sure, it’s a pet project just to get my head out of ‘work’ mode and into fun

Related Videos