Source code for some of the results shown in the paper "Segment Tracing Using Local Lipschitz Bounds" published in CGF in 2020 and presented at Eurographics 2020. This is aimed at researchers, students or profesionnals who may want to reproduce some of the results described in the paper.

Important notes

  • This code is not the one which produced the scenes seen in the paper. Hence, results as well as timings may differ from the ones in the paper.
  • This is research code provided without any warranty. However, if you have any problem you can still send me an email or create an issue.


There is no dependency. Running the program will render two ppm file (render + cost) for the Segment tracing algorithm. Tests have been made on:

  • Visual Studio 2019: double click on the solution in ./VS2019/ and Ctrl + F5 to run
  • Ubuntu 16.04: cd G++/ && make && ./Out/SegmentTracing

Results for comparing with other algorithms are also available in the Renders/ folder of the repository. You can also modify one line in the main.cpp file to test other methods, namely Sphere tracing and Enhanced sphere tracing.


You can use this code in any way you want, however please credit the original article:

  Title = {{Segment Tracing Using Local Lipschitz Bounds}},
  Author = {Galin, Eric and Gu{\'e}rin, Eric and Paris, Axel and Peytavie, Adrien},
  Journal = {{Computer Graphics Forum}},
  Publisher = {{Wiley}},
  Year = {2020}