Releases: Chais/RayTracer
Releases · Chais/RayTracer
Version 2.1
Version 2.0
Features:
- Supported shapes: spherres, meshes
- Supported materials: Solid (no shading), lambertian (matte), phong (shiny), specular, transparent, textured
- Supported lights: Ambient, parallel, point, lambertian, sphere, mesh
- Supported cameras: Perspective (supports multisampling with configurable defocus aberration), realistic (supports multisampling with configurable defocus aberration, focal depth and aperture)
- Supported renderers: Ray tracing, path tracing
- Supported input: XML file specifying camera, lights and shapes. Meshes are read from OBJ files (no MTL support)
Version 1.5
Features:
- Supported shapes: spheres, meshes
- Supported materials: Lambertian (matte), phong (shiny), specular, transparent, textured
- Supported lights: Ambient, parallel, point
- Supported cameras: Perspective (supports multisampling with configurable defocus aberration), realistic (supports multisampling with configurable defocus aberration, focal depth and aperture)
- Supported input: XML file specifying camera, lights and shapes. Meshes are read from OBJ files (no MTL support)
This is a simple Whitted ray tracer doing recursion for specular and refractive materials. Total internal reflection exists according to Snell's law. The Beer-Lambert law can't currently abort recursion.
Memory management was fixed by migrating to shared pointers. Simple multithreading is achieved with OpenMP.
Version 1.0
Features:
- Supported shapes: spheres, meshes
- Supported materials: Lambertian (matte), phong (shiny), specular, transparent, textured
- Supported lights: Ambient, parallel, point
- Supported cameras: Perspective
- Supported input: XML file specifying camera, lights and shapes. Meshes are read from OBJ files (no MTL support)
This is now a simple Whitted ray tracer doing recursion for specular and refractive materials. Total internal reflection exists according to Snell's law.
The memory management is terrible. This thing is most certainly leaking all over the place. The example6 scene ran out of memory after using over 12 GB of RAM.
Version 0.5
New Feature:
- Added point light sources
- Added input file reading and support for meshes.
- Scenes can now be read from XML files, three examples are included.
- Geometry objects (shapes) can be specified from OBJ files. Parsing
materials from OBJ is not currently supported. - PugiXML added as additional, external dependency. Tiny OBJ Loader is
included directly, as source code.
- Lambertien material finished.
Version 0.3
New features:
- Solid material supporting Phong parameters
- Ambient and parallel lights
- Phong lighting
Version 0.2
New features:
- Spheres in the scene
- Transformation of spheres
Version 0.1
Feature set:
- Basic perspective camera
- Initial rays calculated
- Ray direction used as color
- Output to hardcoded png file
Dependencies:
- Uses png++, a C++ wrapper for libpng, which consequently is also required