Skip to content

Project 3: Bryce Joseph#37

Open
brycej217 wants to merge 23 commits into
CIS5650-Fall-2025:mainfrom
brycej217:main
Open

Project 3: Bryce Joseph#37
brycej217 wants to merge 23 commits into
CIS5650-Fall-2025:mainfrom
brycej217:main

Conversation

@brycej217
Copy link
Copy Markdown

@brycej217 brycej217 commented Oct 5, 2025

Repo Link

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
    • Physically-based depth-of-field
    • Texture, normal, and roughness mapping
    • Imperfect specular reflection
  • Mesh Improvements
    • Arbitrary mesh, material, and texture loading (using Assimp library)
  • Performance Improvements
    • Bounding volume hierarchies

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

Code Submission: 3 Late Days
README: 0 Late Days

Project feedback

This project's base code is slightly confusing, and approaches the path tracer in a way which I feel could be more streamlined. The major issue I feel is that in interactions.cu and our Materials struct, it seems like the project wishes for students to approach PBR, as when implementing diffuse we get linked to the PBR textbook site. However, the model that the base code uses is much simpler, and actually looking into PBR might confuse or mislead students. I think in the future the project should lean into either having students implement PBR materials, and modify the materials struct such that they can utilize things like roughness/metallic, or to keep this "PBR-lite" system and have simpler resources for students to implement perfectly diffuse surfaces.

Also I'm tired...

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.

1 participant