2024-09-30 Viewport & EEVEE Module Meeting

Practical Info

This is a weekly video chat meeting for planning and discussion of Blender Viewport & EEVEE module development. Any contributor (developer, UI/UX designer, writer, …) working on Viewport & EEVEE 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: 7 October 2023, 11:30 AM to 12:00 PM Amsterdam Time (Your local time: 2024-10-07T09:30:00Z2024-10-07T10:00:00Z)

Attendees

  • Clement
  • James
  • Jeroen
  • Miguel

Metal

GLSL IDE support

Making GLSL compilable in a regular CPP compiler to add support for IDE functionalities like looking up symbols, jump to definition etc. In order to use the system you need to add the shader create info name you are working on to the top of the GLSL file. This will be explained in a developer doc that should still be written. The goal is to make working with GLSL easier for people who are not familiar with the code-base by adding CPP stubs and use regular CPP syntaxes like ‘#include’ statement instead of ‘#pragma BLENDER_INCLUDE’.

Vulkan

Mostly focussed on some performance improvements when using production grease pencil files.

  • [#127860 - Vulkan: GPU device selection - blender - Blender Projects]: GPU that blender should use for drawing can be selected. The auto detection should work as expected but there are some configurations like (multi-GPU workstations/server setups) where the auto detection doesn’t allow you to select a specific GPU without tweaking driver/OS specific settings. This PR simplifies this by letting the user select the GPU to use.
  • [#128068 - Vulkan: Refactor resource binding - blender - Blender Projects]: Performance of descriptor sets. Grease pencil drawing will create a lot of similar descriptor sets, which could be a performance bottleneck on selected platforms (Intel Arc). We removed code indirection in the way how the state manager, shader interface and descriptor sets worked together, allowing better detection if the descriptor set was actually different compared to the previous one.
  • [#128232 - Fix #127288: Vulkan: Report Marketed Driver Version - blender - Blender Projects]: Blender reported the internal driver version of the vulkan backend. This adds confusion when triaging as this driver is often not advertised to the user. By reporting on the marketed version of a driver this should easy the process.
  • [#128188 - Vulkan: Refactor immediate mode - blender - Blender Projects]: Immediate mode used tracked resources. With the new swap chain tracked resources this isn’t needed and tracked resources should be phased out. This change refactors immediate mode to use swap chain tracked resources.

EEVEE

With the approach of Blender 4.3 Beta the focus is more on solving issues. This will be the focus for the upcoming time.

4 Likes