DDGI first look

Поделиться
HTML-код
  • Опубликовано: 30 сен 2024
  • A short video of DDGI (Dynamic Diffuse Global Illumination) in the pica-pica scene. DDGI solves diffuse global illumination by ray tracing from probe locations. It handles dynamic emissive objects, particle systems, transparent objects. Hardware accelerated ray tracing GPU is recommended, but it can use software raytracing as well.

Комментарии • 22

  • @jkr9594
    @jkr9594 Год назад +4

    We have reached the point where i can no longer imediately recognize what kind of gi is used from the dozends of acronyms. We truly live in the future.
    Great work.

  • @nolram
    @nolram 2 года назад +6

    The madlad actually did it. Now a perfect complimentary technique to this would be to use Signed Distance Field Tracing for reflections maybe ?

    • @specialisthun
      @specialisthun  2 года назад +1

      This uses ray tracing, so I don't see how signed distance field would compliment it well. There are already many reflection techniques in the engine, so I am not looking to add one more atm.

    • @nolram
      @nolram 2 года назад +2

      ​@@specialisthun Yes, there are already a bunch of techniques in the engine, however as far as I know none that either don't have the limitation of reflection probes (inaccuracy, static nature) or require dedicated raytracing hardware. SDF based tracing, similar to what Unreal is doing with Lumen, only has as its major limitation that the detail of objects in reflections are lower than the full meshes.

  • @RandomPlayer-tr5ge
    @RandomPlayer-tr5ge 9 месяцев назад +1

    we have gotten so far as a social glob that even global illumination has an identity crisis.

  • @PanzerschrekCN
    @PanzerschrekCN 2 года назад +1

    0:45 - light leaking is visible. I suppose this is because you use simple light probe fetch from regular grid. How do you plan to fix such artifacts?

    • @specialisthun
      @specialisthun  2 года назад +4

      Leaking is not completely eliminated by DDGI, but improved compared to old school probe GI.
      I want to try some things next:
      1) improve regular grid placement by automatically searching for better probe locations (keeping more distance from walls).
      2) surfels will get priority to probes if surfel gi is also enabled, but can fall back to probes
      3) use probes only for secondary bounce, while using per pixel traces or surfels for primary.

  • @loremipsum3147
    @loremipsum3147 2 года назад +1

    It seems this technique is good for moving non-illuminating objects and bad for moving lights, right? That latency is very unrealistic when you move the light source. Excellent work on implementing btw.

    • @specialisthun
      @specialisthun  2 года назад

      The parameters could be tweaked to reduce lag but increase ray count per probe, but it will quickly become much heavier on performance.

    • @loremipsum3147
      @loremipsum3147 2 года назад +1

      @@specialisthun hmm so it is a tradeoff, for high performance there will be the lag. Anyways it looks very cool and lights with trailing particles would look amazing. From the comments I learned lumen also uses the same model, do you know about cryengine's dynamic gi implementation (how would you compare?)

  • @cmedia425
    @cmedia425 8 месяцев назад

    To achieve this are shadow maps required, or does DDGI handle that aswell?

    • @specialisthun
      @specialisthun  8 месяцев назад

      DDGI only handles indirect illumination. Shadow map is for direct light so they are independent. You can also choose raytraced shadow instead of shadow map.

  • @jx5943
    @jx5943 Год назад

    hi,bro,why my test my fire particle not emmit ddgi out?i use the neweast version of wickedengine

    • @specialisthun
      @specialisthun  Год назад

      I don't know it works for me. Make sure you use emissive material for the particle.

  • @arithene
    @arithene Год назад

    which is second

  • @ThatTechGuy123
    @ThatTechGuy123 2 года назад

    Does this do anything for reflections?

    • @specialisthun
      @specialisthun  2 года назад +1

      This is mainly for diffuse, but reflections (for example raytraced reflections, or envprobes) will also pick up the diffuse GI that this generates.

    • @ThatTechGuy123
      @ThatTechGuy123 2 года назад

      @@specialisthun I keep thinking I want to use your engine. I think 3 things are holding me back. Nanite, blueprint visual scripting, and user interface. In order of importance to me.

    • @specialisthun
      @specialisthun  2 года назад +2

      @@ThatTechGuy123 Sounds like you want to use Unreal 5 instead.

    • @ThatTechGuy123
      @ThatTechGuy123 2 года назад

      @@specialisthun yes. Waiting for them to figure out how to do large worlds with thier ocean plugin though. Right now the limit is a 1km x 1km landscape. Also doesn't support multiple landscapes. For now I'm just making assets and getting ready to build the world for my project.

  • @ThatTechGuy123
    @ThatTechGuy123 2 года назад

    Is this basically what lumen is? Kinda seems like lumen when you move the objects and it takes a little for the lighting to catch up

    • @specialisthun
      @specialisthun  2 года назад +3

      Lumen builds on top of this technique. There is a multi resolution probe field in lumen and also a lot other things.