Skip to content

matthewshang/illume

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

117 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

illume

Cornell Box Original cornell box with 100,000 samples per pixel.

About

This is a unidirectional brute force pathtracer running on the GPU.

Essentially what it does is simulate light bouncing around in a virtual scene, calculating a new direction and color at each point based on the material it hit. These colors are put together at the end to produce an image or "render".

Features:

  • GPU rendering with CUDA
  • materials: emissive, lambert, mirror, refractive, microfacet reflection and refraction, smooth and rough conductor, smooth plastic
  • textures: constant, checkerboard, and bitmap
  • HDR environment maps
  • Tonemapping operators: linear, Reinhard, filmic, and Uncharted2
  • Monte Carlo subsurface scattering with Henyey-Greenstein phase function
  • primitives: spheres, trimeshes
  • OBJ loading
  • mesh instancing
  • BVH construction and caching
  • scene loading from human-readable JSON

Dependencies/External Libraries

  • CUDA 8.0
  • Visual Studio 2015 (compilation)
  • libPNG (PNG writing)
  • rapidjson (JSON scene file parsing)

More Renders

All images are untouched, straight out of this renderer.

sss dragon in box Stanford dragon with orange absorption and foward scattering

rough glass 525k Stanford lucy with ground glass

conductors Rough gold lucy and rough copper Stanford dragon

xyzrgb dragon 721k tri Stanford xyzrgb dragon, with Cook-Torrance teal surface

textures Rough gold stanford bunny lit by HDR environment map. The ground texture is from LuxRender, the cube texture is from Blender, and the environment is from Bernhard Vogl

materials Showcase of the materials in illume

roughness Scene inspired by Photorealizer. Textured colors and roughness, and a rough glass sphere.

spheres Replication in this renderer of the image on the wikipedia article for raytracing

sss bunny Stanford bunny model with isotrophic scattering

Papers/Links

Reflection/refraction, fresnel: http://graphics.stanford.edu/courses/cs148-10-summer/docs/2006--degreve--reflection_refraction.pdf

Rough Dielectric: https://www.cs.cornell.edu/~srm/publications/EGSR07-btdf.pdf

Complex iors: refractiveindex.info/?shelf=3d&book=metals

Conductor fresnel equations: seblagarde.wordpress.com/2013/04/29/memo-on-fresnel-equations/#more-1921

Tonemapping: http://filmicworlds.com/blog/filmic-tonemapping-operators/

HDR Maps: Bernhard Vogl - http://dativ.at/lightprobes/index.html USC Institute - http://gl.ict.usc.edu/Data/HighResProbes/

https://www.mitsuba-renderer.org/

http://photorealizer.blogspot.com/

https://github.com/tunabrain/tungsten

About

CUDA C Pathtracer

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors