12 Commits

Author SHA1 Message Date
Jean Felder
9d5363dc18 qgsrenderpassquad: Do not create its own Qlayer
Homogenize the layer responsibility: it is handled outside the entity and then passed to it.
2024-08-28 10:00:48 +02:00
bdm-oslandia
a4202c731d qgsframegraph: extract framegraph dump functions to dedicated class 2024-08-23 09:17:06 +10:00
Mike Krus
a4fdd96509 qgsframegraph: display texture format in dump 2024-08-23 09:17:06 +10:00
Jean Felder
411fb82abb qgsframegraph: Add logic to dump framegraph as string
Co-authored-by: Mike Krus <mike.krus@kdab.com>
2024-08-23 09:17:06 +10:00
Jean Felder
5af079ea9f qgsframegraph: rename QRenderTarget in the ambient occlusion pass
The output is the color buffer, not a depth one.
2024-06-24 16:30:45 +02:00
Jean Felder
b362ee62f4 qgsframegraph: Give names to rubberband objects
This makes it easier to debug the framegraph with the debug overlay.
2024-06-24 16:30:45 +02:00
Jean Felder
17bd597eee qgsframegraph: Give names to postprocessing pass objects
This makes it easier to debug the framegraph with the debug overlay.
2024-06-24 16:30:45 +02:00
Jean Felder
2b0376eb56 qgsframegraph: Give names to cameraselector objects
This makes it easier to debug the framegraph with the debug overlay.
2024-06-24 16:30:45 +02:00
Jean Felder
d6140fd775 qgsframegraph: Add semi-transparent depth write
QgsCameraController uses the depth buffer of the framegraph to get the
depth when clicking on the 3d view for a rotation or a zoom
operation. This works very well for opaque objects. However, this does
not work for transparent objects because they are not written to the
depth buffer.

This issue is fixed by adding a third branch to the forward render
pass. This new branch only writes the depth of transparent
objets. This allows to have transparent objects written in the depth
buffer and solves the issue with the camera controller.
2024-03-01 12:48:28 +01:00
Jean Felder
3bb928b77e qgsframegraph: Fix blend equation args for semitransparent entities
See discussion from
https://github.com/qgis/QGIS/pull/55943#issuecomment-1972177646
2024-03-01 12:48:28 +01:00
Even Rouault
a68422b982 Various typo fixes
Including 3 public methods, which are deprecated by this commit and replaced by a typo-fixed version
2024-02-29 06:03:03 +10:00
Martin Dobias
dc002caf5b Rename QgsShadowRenderingFrameGraph to QgsFrameGraph
The rationale is that it is not driving just shadow rendering, but this frame graph
controls all the rendering passes and their configuration.

Also removes Qgs3DMapCanvas::defaultFrameGraph() which is never really used or needed.
2024-02-08 12:14:09 +00:00