2024-04-15 EEVEE/Viewport Module Meeting

Practical Info

This is a weekly video chat meeting for planning and discussion of Blender EEVEE/viewport module development. Any contributor (developer, UI/UX designer, writer, …) working on EEVEE/viewport in Blender is welcome to join.

For users and other interested parties, we ask to read the meeting notes instead so that the meeting can remain focused.

  • Google Meet
  • Next Meeting: April 22, 2023, 11:30 AM to 12:00 PM Amsterdam Time (Your local time: 2024-04-22T09:30:00Z2024-04-22T10:00:00Z)

Attendees:

  • Clement
  • Jeroen
  • Miguel
  • Michael
  • Thomas

EEVEE-Next

  • Finished Volumetric sampling stabilization. Some improvements will be checked to reduce the convergence speed.
  • Thickness approximation patch, makes lighting and ray tracing evaluation more consistent. It now works now for all BSDF. Previously the approximation was extracted from the shadow map. Currently it uses the minimum value between the shadow and shader value for compatibility reasons. UI still needs some improvements
    • Pre-computation based on a geometry nodetree setup is possible. It is slow. Issue is how to distribute the nodetree without duplicating the nodetree in many demo files. Node tree will be given to the users for testing. And later we decide how to solve the distribution.
    • Default value is based on bounding box, but value is evaluated as a sphere. Default values might not work as expected for refraction shaders.
    • This is a big change and will introduce regressions, where we would need to help users to setup the scene appropriate.
  • [#120616 - EEVEE-Next: UI: Light-Probe panels - blender - Blender Projects] - Light probe pass.
  • [#120620 - EEVEE-Next: Make shadow pass colored - blender - Blender Projects] - Shadow color pass is being evaluated. User feedback is needed and will be asked via the devtalk thread.
  • Shadows
    • Jittering soft shadows
    • Fixes have been done to remove shadow flickering issues on NVIDIA.
    • Solution is discussed to improve shadow updates for large shadows, or shadows are close to the camera. Idea was to reduce the shadow ray length. The issue is that this is not deterministic and should have more thought.
  • Worked on solving issues that are considered regressions.
  • EEVEE startup times are becoming an issue and we had some discussion in the meeting how each backend would be solving that in an ideal situation. The basic mechanisms between Vulkan and Metal are similar. But as Vulkan backend is less mature it can rely more on industry practices. Metal and OpenGL are already operational has more information about the bottlenecks. The idea is to design a common approach for shader pre-compilation (Metal + Vulkan), doing PSO caching, or quick building based on commonly parameters. Separate frontend and backend compilation more clearly in the API. Making EEVEE responsible for scheduling shader compilation.

Metal

  • AMD/Intel GPU platform support. AMD is now in decent place, Intel still has a read-modify-write issue.
  • [#120038 - EEVEE Next tests hang on macOS buildbot - blender - Blender Projects] Buildbot crash. The stacktrace in the report is a red herring. There are commadn buffers that are scheduled, but never executed. This will lead to a stall later on. Apple is able to reproduce it and working on a way to solve it.

Vulkan

16 Likes