• sylver_dragon@lemmy.world
    link
    fedilink
    English
    arrow-up
    77
    arrow-down
    10
    ·
    1 month ago

    Now, can we fix flashlights in games such that we don’t get a well defined circle of lit area surrounded by completely a black environment? Light doesn’t work that way, it bounces and scatters, meaning that a room with a light in it should almost never be completely dark. I always end up ignoring the “adjust the gamma until some wiggle is just visible” setup pages and just blow the gamma out until I can actually see a reasonable amount in the dark areas.

    Yes, really dark places should be really dark. But, once you add a light to the situation, they should be a lot less dark.

    • IrateAnteater@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      23
      arrow-down
      2
      ·
      1 month ago

      You just described ray tracing. The problem is, it’s incredibly computationally expensive. That’s why DLSS and FSR were created to try and make up for the slow framerates.

      • Cyrus Draegur@lemm.ee
        link
        fedilink
        English
        arrow-up
        5
        ·
        1 month ago

        I’ve seen an awesome “kludge” method where, instead of simulating billions of photons bouncing in billions of directions off every surface in the entire world, they are taking extremely low resolution cube map snapshots from the perspective of surfaces on a “one per square(area)” basis once every couple frames and blending between them over distance to inform the diffuse lighting of a scene as if it were ambient light mapping rather than direct light. Which is cool because not only can it represent the brightness of emissive textures, but it also makes it less necessary to manually fill scenes with manually placed key lights, fill lights, and backlights.

        • Hadriscus@lemm.ee
          link
          fedilink
          English
          arrow-up
          3
          ·
          1 month ago

          Light probes, but they don’t update well, because you have to render the world from their point of view frequently, so they’re not suited for dynamic environments

          • Cyrus Draegur@lemm.ee
            link
            fedilink
            English
            arrow-up
            4
            ·
            1 month ago

            They don’t need to update well; they’re a compromise to achieve slightly more reactive lighting than ‘baked’ ambient lights. Perhaps one could describe it as ‘parbaked’. Only the ones directly affected by changes of scene conditions need to be updated, and some tentative precalculations for “likely” changes can be tackled in advance while pre-established probes contribute no additional process load because they aren’t being updated unless, as previously stated, something acts on them. IF direct light changes and “sticks” long enough to affect the probes, any perceived ‘lag’ in the light changes will be glossed over by the player’s brain as “oh, my characters’ eyes are adjusting, neat how they accommodated for that.”–even though it’s not actually intentional but rather a drawback of the technology’s limitations.

    • finitebanjo@lemmy.world
      link
      fedilink
      English
      arrow-up
      4
      arrow-down
      1
      ·
      1 month ago

      That’s exactly the sort of thing his work improved. He figured out that graphics hardware assumed all lighting intensities were linear when in fact it scaled dramatically as the RGB value increased.

      Example: Red value is 128 out of 255 should be 50% of the maximum brightness, that’s what the graphics cards and likely the programmers assumed, but the actual output was 22% brightness.

      So you would have areas that were extremely bright immediately cut off into areas that were extremely dark.