[vtk-developers] Dual Depth Peeling now in VTK

David Lonie david.lonie at kitware.com
Tue Apr 12 11:07:07 EDT 2016


Hi folks,

Just wanted to share an improvement to VTK's transparency rendering.

We've just merged[1] a new order-independent translucent render pass
implementation for the OpenGL2 backend. Dual depth peeling[2] builds on the
standard depth peeling algorithm by simultaneously peeling fragments from
both the front and the back of the translucent geometry, blending them
appropriately to compose the final image.

In benchmarking a very large scene (10M triangles) with high depth
complexity, the new implementation doubled the framerate compared to
standard peeling (52% of the standard peeling time). The scene took 40+
geometry passes with standard depth peeling to get a perfect image, while
the dual algorithm accomplished the same in 20 passes. The new
implementation supports the same parameters as the old one (max number of
peels and target occlusion ratio) and will be used automatically when depth
peeling is enabled in vtkRenderer with the OpenGL2 backend.

The catch is that it requires floating point texture support, which are
omitted from many packaged mesa drivers due to licensing issues. In these
cases, the renderer will fallback to the old standard peeling
implementation gracefully.

If anyone notices any blending issues with the new code please ping the
mailing list.

Cheers,
Dave

[1] https://gitlab.kitware.com/vtk/vtk/merge_requests/1409
[2]
http://developer.download.nvidia.com/SDK/10/opengl/screenshots/samples/dual_depth_peeling.html
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/vtk-developers/attachments/20160412/a4f8e56b/attachment.html>


More information about the vtk-developers mailing list