this post was submitted on 27 Dec 2024
64 points (91.0% liked)
Games
38439 readers
1415 users here now
Welcome to the largest gaming community on Lemmy! Discussion for all kinds of games. Video games, tabletop games, card games etc.
Weekly Threads:
Rules:
-
Submissions have to be related to games
-
No bigotry or harassment, be civil
-
No excessive self-promotion
-
Stay on-topic; no memes, funny videos, giveaways, reposts, or low-effort posts
-
Mark Spoilers and NSFW
-
No linking to piracy
More information about the community rules can be found here and here.
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Use stochastic / anisotropic "instant radiosity."
Eye-rays go from the camera to the scene. Those hits are onscreen points. The rays there bounce out in all directions and hit another part of the scene. Those hits are offscreen points. Rays continue until they find a light source.
Every first-bounce offscreen point is now a light source aimed directly at visible geometry. It has some anisotropic spread based on the material properties and the angle to the next hit. Metropolis light transport can even jitter those distant bounces to increase how much unbiased energy enters the visible scene, through that point.
So consider a one-sample-per-pixel frame at 1080p. It has two million dodgy flashlights pointed straight at some part of visible geometry. Any random sampling of those just-offscreen sources - say a hundred per pixel - will be additional real information, for dirt cheap. And that's if you bother with shadow rays. Given that you know which source hit which pixel, you can assume nearby pixels will also be hit, and spread that energy. This can be done with a geometry buffer and no additional rays. It'll be wrong, but it'll be a soft kind of wrong.