Skip to content

460xlin/Project3-CUDA-Path-Tracer

 
 

Repository files navigation

CUDA Path Tracer

University of Pennsylvania, CIS 565: GPU Programming and Architecture, Project 3

  • Xinyu Lin Linkedin
  • Tested on: Windows 10, Intel(R) Core(TM) i7-6700HQ CPU@2.60GHz, 16GB, GTX960M(Private Computer)

Features:

  • Basic features
    • A shading kernel with BSDF evaluation for:
      • Ideal diffuse shader.
      • perfect specular reflective surface.
    • Stream compaction for terminating unwanted thread from thread pool using thrust::partition
    • material sorting using thrust::sort_by_key
    • caching first bounce information for future iteration use
  • Advanced features
    • refreaction with Frensel effects using Schlick's approximation
    • physically based depth of field
    • stochastic sampled antialiasing
    • Arbitrary mesh loading and rendering
Diffuse Specular Glass

DOF

  • 5000 iterations

OBJ

  • 3000 iterations

Multiply lights

  • 10000 iterations

time cost to 5000 iterations

time(secs) sort by material id store first intersections stream compaction Time
Diffuse 0 0 1 6m54s
Diffuse 1 0 1 12m11s
Diffuse 0 1 1 5m33s

References

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • CMake 53.1%
  • C++ 36.1%
  • C 6.3%
  • Cuda 4.3%
  • Makefile 0.2%