Skip to content

williamge/volk-renderer

Repository files navigation

Volk 3D Renderer

Introduction

Volk is a simple 3d renderer, started off as a naive raytracer with plans to support more advanced features such as photon mapping, radiosity and MLT.

Raytracing

Features so far:

  • ray casting
  • Phong shading
  • multiple depth reflections and refractions
  • textures
  • naive anti-aliasing
  • threading
  • camera settings
  • image information stored as floating point values for improved precision/manipulation

Shapes:

  • sphere
  • plane
  • triangle
  • quadrilateral

Lights:

  • point light
  • area lights

Pictures

The Cornell Box with soft shadows from an area light. cornell box in volk

The Cornell Box again but with a point light lighting the scene. volk

A scene with lots of reflective surfaces. volk

volk

volk

TODO

  • reduce the number of new() calls
  • fix the utah teapot object
  • radiosity!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors