owl-project / owl

http://owl-project.github.io
Apache License 2.0
239 stars 54 forks source link

path tracer example #159

Open xelatihy opened 2 years ago

xelatihy commented 2 years ago

Would be great to have a path tracer example to help folks like me that would love to port their CPU renderer to OWL. Useful feature of the sample are having both interactive and non-interactive code and materials that look like diffuse+specular, or base+metallic.

I realize this is a big ask, but it would help the community adopting this.

bipul-mohanto commented 2 years ago

(although I am not sure) the log files say: v0.4.5*: ll08-sierpinski now uses path tracing

szellmann commented 2 years ago

There's actually a bunch of samples that do use path tracing. The RTOW sample is another example, and so is Sierpinski.

The request I suppose however goes more in the direction of having a vanilla path tracer with super simple geometry (maybe Cornell box), some simple materials, and maybe MIS to copy from. Basically a path tracer template to easily base your own projects off of, and where the path tracing part is mostly isolated from the geometry and the particular material model(s).

We had this kind of sample that we reused a number of times in our internal projects, and can be found here: https://github.com/owl-project/owlGlyphs-RTXGlyphsRayTracing-PGV2020/blob/master/glyphs/device/common.cu. Maybe we can turn that into a more general Cornell box sample at some point.

xelatihy commented 2 years ago

Thanks. I'll take a look.