A bidirectional path tracer written in C.
C Objective-C C++
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.gitignore
Box.c
Box.h
Color.c
Color.h
Container.h
Cylinder.c
Cylinder.h
Intersection.c
Intersection.h
LICENSE.md
Material.c
Material.h
MaterialCheckered.c
MaterialCheckered.h
MaterialDiffuse.c
MaterialDiffuse.h
MaterialForwardDeclaration.h
MaterialLamp.c
MaterialLamp.h
MaterialPhong.c
MaterialPhong.h
MaterialPointerContainer.c
MaterialPointerContainer.h
MaterialTransparent.c
MaterialTransparent.h
MaterialVTable.h
MaterialVTableForwardDeclaration.h
Matrix.c
Matrix.h
Photon.c
Photon.h
PhotonContainer.c
PhotonContainer.h
PhotonEndPoint.c
PhotonEndPoint.h
PhotonEndPointContainer.c
PhotonEndPointContainer.h
Plane.c
Plane.h
README.md
Ray.c
Ray.h
SDLMain.h
SDLMain.m
Scene.c
Scene.h
SceneObject.c
SceneObject.h
SceneObjectBox.c
SceneObjectBox.h
SceneObjectCylinder.c
SceneObjectCylinder.h
SceneObjectPlane.c
SceneObjectPlane.h
SceneObjectPointerContainer.c
SceneObjectPointerContainer.h
SceneObjectSphere.c
SceneObjectSphere.h
SceneObjectTransform.c
SceneObjectTransform.h
SceneObjectUnitPlane.c
SceneObjectUnitPlane.h
SceneObjectVTable.h
SceneObjectVTableForwardDeclaration.h
Sphere.c
Sphere.h
Vector.c
Vector.h
allocator.h
bool.h
main.c
minunit.h
pi.h
randf.c
randf.h
unit_tests.c

README.md

Gloss

A bidirectional path tracer written in object oriented C.

Blog Posts

TODO

  • Materials
    • Seems I had misunderstood diffuse relfection: http://en.wikipedia.org/wiki/Diffuse_reflection The BRDF function is correct, dot(normal, lightDir) But the importance sampling whould prioritize the normal of the surface, and drop to 0 at the tangent, just like the BRDF.
    • Fresnel term
    • Texturing
      • Procedural
      • Bitmapped
    • Refraction
      • Dispersion
    • "Directionality" of emitted light
  • Recursive geometry - fractals
  • Better camera model
    • Depth Of Field
    • Lens flare / bloom
    • Tone mapping