Hello everyone!

Here are some projects related to rendering and display I have done before. If you would like to know more about me, please visit the About page.

Shadertoy Path tracer

Supported features: Multiple importance sampling, clean primitive definition, BRDF importance sampling.


Basic PT
MIS PT

Disney BRDF

OpenGL Compute Shader based path tracer

Since I have done quite a bit learning on path tracing algorithms and materials (the hardest parts are MIS, NEE, the theory for NEE and MIS is not very difficult, but when it comes to implementation…😓), I want to extend the shader I’ve created into a working rendering engine.

I watched some tutorials on OpenGL compute shader and port my ShaderToy Shader to it.

Also, there is much more care that needs to be taken other than rendering itself, for example, camera system, mesh I/O, material system, sampling system, data transport between CPU and GPU, etc. So, the overall routine takes about half a month to complete.

The code needs to be refactored for further optimization and extension (the microfacet brdf model has not yet been integrated into it).


Overview

Here are some ScreenShots:


Mirror

Glass

Teapot

Random
Author

Yansong Yu

Posted on

2023-09-23

Updated on

2023-10-29

Licensed under

Comments