Do not tell the RHI that the frame has no compute pass


commonPassFlags() returned DoNotTrackResourcesForCompute for every
beginPass(). That flag declares the frame contains no compute pass,
and we do open some: the lightmapper's NLM denoiser since 6.10, plus
the screen-space reflection and Hi-Z passes being added now.

In the OpenGL backend the flag turns off pass resource tracking for
the rest of the frame, and beginComputePass() never turns it back on.
Nothing is then registered for BarriersForPass, so no
glMemoryBarrier() is emitted and a pass reads whatever the GPU has
finished writing. Measured on the SSR work, the OpenGL output
differed between processes and after a window resize and was visibly
too dark; with this change it is stable and matches Vulkan. The other
backends transition resources explicitly and never read the flag.

Not made conditional on whether the frame uses compute: that has to
hold for every pass in the frame, and would break again silently the
next time a compute pass is added.

Picked to 6.12 because the tracking this disables is not only for
compute: it covers fragment-stage storage buffers too, and 6.12 is
where linked-list OIT landed, whose A-buffer is written and read
exactly that way.

Pick-to: 6.12
Change-Id: I80a321cafd680347d6afadc80f75ff5d35ebc7d6
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
commit27a7248b7f8d3551e0ed0b1f3f35b495a0b9933a
parentac3daacc0e23d47f81d61034edbd709b260684db
authorJonas Karlsson <jonas.karlsson@qt.io>
committerJonas Karlsson <jonas.karlsson@qt.io>
commit timeMon, 21 Sep 2026 13:53:51 +0000