Skip to content

Conversation

hendrych-upenn
Copy link

Repo Link

https://github.com/hendrych-upenn/Project3-CUDA-Path-Tracer/tree/main

Core Features Completed

  • Shading kernel with BSDF evaluation (diffuse, perfect specular surfaces)
  • Stream compacted path termination
  • Sorting by material type
  • Stochastic sampled antialiasing

Extended Features Completed

  • Visual Improvements
    • 6️⃣ (Combined with Arbitrary Mesh Loading) Texture Mapping and Bump Mapping
      • File-loaded color and normal textures
      • Perlin noise procedural textures available (via macro)
  • Mesh Improvements
    • 4️⃣ Arbitrary Mesh Loading and Rendering
      • tinygltf to load glTF 2.0 files
      • toggleable boudning volume intersection culling (via macro)
  • Performance Improvements
    • ...
  • Other Improvements
    • ....

Other Features and Details

CMake Change:

set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} --expt-relaxed-constexpr")

Originally added to allow the use of std::array indexing, but moved away from std::array in the end. Might not be necessary.

README Completion Checklist

  • Cover image in readme does not use Cornell Box
  • Descriptions, screenshots, debug images, side-by-side comparisons of features implemented
  • Analysis
  • Scenes and meshes included or linked
  • Third-party library changes or compilation changes documented
  • Bloopers (optional)

Late Days Used

4 Late Days for Code

Project feedback

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants