/Cornell-Box

📦 Path Tracer with Multi-thread Acceleration

Primary LanguageC++

Monte Carlo Path Tracer

Based on GAMES101 Assignment7

Goal

✅ Path Tracing

✅ BVH Tree Acceleration

✅ Thread pool Acceleration using std::thread

✅ Microfacet Material

Notes

Some self-researched results based on this project (in Chinese)

Sampling Uniformly on a Manifold I - Rationale

Sampling Uniformly on a Manifold II - Examples

or directly see my blog

Uniformly Sample on a Manifold - 1.Rationale | TaKeTube

Uniformly Sample on a Manifold - 2.Examples | TaKeTube

Some tricks for acceleration (written in my sophomore year, may seem natural or simple now)

https://github.com/TaKeTube/Cornell-Box/blob/main/notes/notes.md

Results (partially)

Run under Intel i5-8300H (4 cores 8 threads)

Check results folder for more rendered images

TWO BOXES

SPP 4096

8 thread 108 min (before optimizing)


BUNNY

forget the data

22


IRON BUNNY

SPP 8192

212 mins

40


PLASTIC BUNNY

Forget the data

less than 20 mins

42


IRON BUNNY WITH GOLD BOX

SPP 24576

255 mins

60


BUNNY WITH GOLD BOX

SPP 12288

322 mins

61


GOLD BUNNY

SPP 12288

319 mins

62