2024-01-08 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: January 15, 2023, 11:30 AM to 12:00 PM Amsterdam Time (Your local time: 2024-01-15T10:30:00Z2024-01-15T11:00:00Z)

Attendees:

  • Brecht
  • Clement
  • Jeroen
  • Miguel
  • Michael

EEVEE

  • Specialization Constants work with Metal and uses a work around for OpenGL and Vulkan. On Metal hardware the most visible bottleneck is the film shader. There is already a patch for this.
  • Specialization Constants for OpenGL and Vulkan are planned for the upcoming weeks.
  • GBuffer/deferred pipeline has been optimized to limit data transfers. Other optimizations are still on going.
  • GPU register pressure issues was caused by an array indirection. If you have an array of structs, it can be demoted to main memory by the driver/compiler. If the first element of the array isn’t read statically it can add a lot of memory overhead and spills. Some changes have been made to fix these performance issues.
  • Lighting shaders are refactored to use a stencil buffer.
  • Some bottlenecks have been detected in the shadow pipeline still. Shadow pipeline does a read back that is quite hard on the performance. The shadow pipeline also generates a lot of empty indirect calls that adds more overhead than expected We need to find out how to improve the performance here.
  • We are looking into enabling render tests for EEVEE on the buildbot. Some developments have been done last month, but due to time constraints it could not finish. There is also an issue on the buildbot where older shaders are not removed and allocate a lot of disk space (also concerns Cycles). Next steps here is to ensure render tests are working and reference images can be created. We also need to check with the cycles team as it would make a change in the process of adding reference images.
  • There is currently a known issue where metallic shaders + clear coat using the deferred pipeline generates noise.
  • Currently still concerns if we can make it for 4.1. We want to make a final decision on 22th of January.

After EEVEE will become stable and performant we will plan a roadmap workshop to discuss and update the future plans of EEVEE/Viewport module. We expect to plan it in Q1.

20 Likes