Skip to content

rchiaramo/path_tracer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This is an ongoing development project for a GPU based ray-tracer, initially based on Ray Tracing in One Weekend.

The backbone of this project is what I used to call WiW for Wgpu-Imgui-Winit (the frameworks I used to implement this). I have upgraded to the latest version of wpgu, imgui, and winit, and all are working.

I'm currently only rendering the final scene is RTiOW, though I used a BVH implemented with the SAH. I'm also trying to clock the megakernel (compute only) using write_timestamps, though the timestamps occasionally come back as zeros.

At this point in my progress, the next step is to implement a wavefront pathtracer. I will copy this code to a new repository, path_tracer_wavefront, and start fresh there with this as the starting point. I want to keep this in a working state for future comparisons.

Progress:

  • basic camera movement implemented
  • cpu code now runs with threads using rayon
  • fixed resize screen bug
  • updated camera and created camera_controller
  • created common_code directory for better overall code management b/w gpu and cpu tracers
  • updated cpu version of tracer for debugging purposes and added it to workgroup
  • added imgui
  • runs samples/frame until total samples/pixel is complete; shows progress in gui
  • changed ray tracing generation algorithm from RTiOW to projection and view matrix based
  • final pixel color has a sqrt taken; need to investigate colors more

To do (in no particular order):

  • see if I can optimize this render time; I feel like 300ms for this image is too long, and I want to do real-time rendering
  • implement a wavefront path tracing algorithm
  • add other shapes (triangles, planes, quads, planes, etc)
  • add more complex rendering ideas from PBR book
  • load in more complex obj files for some cool pictures

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published