Skip to content

Dual depth peeling

Allison Vacanti requested to merge allisonvacanti/vtk:dual_depth_peels into master

Add an implementation of dual depth peeling, which provides a performance boost over the traditional implementation.

The existing vtkDepthPeelingPass is kept around because mesa often lacks support for floating point textures, which are required by the dual implementation.

A new 10M triangle render benchmark stresses depth peeling implementations to see how well they perform.

Results (nVidia Quadro 2000M, Release build):

vtkDepthPeelingPass: 1.2 FPS (0.77s first frame, 0.83s subsequent) vtkDualDepthPeelingPass: 2.5 FPS (0.56s first frame, 0.40s subsequent)

As expected, the new algorithm is twice as fast, since 2 layers are peeled from each geometry pass instead of just 1.

For reference, simple alpha blending results in 49 FPS, 0.18s first frame, 0.020s subsequent.

Merge request reports