Skip to content

A ray tracing/path tracing project, programmed on the CPU and eventually will move to GPU compute. Building and updating acceleration structures, denoising, and more.

License

Notifications You must be signed in to change notification settings

Contingencyy/CPUGPUPathtracing

Repository files navigation

CPUGPUPathtracing

This is a project that I develop alongside the graphics advanced masterclass at BUAS, presented by Jacco Bikker. It will involve raytracing and pathtracing on the CPU, and eventually moving that to the GPU, as well as building your own acceleration structures.

Planned:

  • Variance reduction
    • Next event estimation
    • (Multiple/Resampled) importance sampling
    • Russian roulette
    • ReSTIR
  • Acceleration structure
    • Top-level AS with transforms
    • Bottom-level acceleration structures
    • BVH refitting
    • Binned BVH build
  • Denoising
  • Additional optimizations for CPU raytracing and SIMD
  • Microfacet BRDF (Physically-based rendering)
  • GPU raytracing in compute (all software, no hardware)

Current: Path tracer

  • Soft shadows
  • Bounding volume hierarchies (Triangle primitives only)
    • Mid point split
    • Surface area heuristic (SAH)
  • Diffuse reflections
  • Specular reflections
  • Dielectrics
    • Beer's law (absorption)

Glass Dragon:

Refractive_Materials_Path_Traced.mp4

Specular reflections in ground:

Specular_Reflections_Probability_80_Percent.mp4

BVH mid point split vs. SAH:

SAH_Intervals_VS_Naive_Mid_Point_Split.mp4

Previous: Whitted-style raytracer (Finished)

  • Direct illumination from multiple light sources
    • Shadow rays
    • Distance attenuation
    • Lambert diffuse, N dot L
  • Pure specular reflections (recursive)
  • Dielectric materials like glass (recursive)
  • Beer's law (absorption within medium)
GraphicsAdvancedMasterclass_LuYJmtUnqY.mp4

About

A ray tracing/path tracing project, programmed on the CPU and eventually will move to GPU compute. Building and updating acceleration structures, denoising, and more.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published