Expand description
A ray tracing library based on the book The Ray Tracer Challenge, by Jamis Buck.
Modulesยง
- camera
- Holds the Camera struct.
- canvas
- A 2D canvas which represents an image of RGB colors. Pixels can be individually changed individually. Get the canvas in PPM format with Canvas::to_ppm.
- color
- An RGB color representation. The components are floating point numbers. Support for generics may be added in the future. When used, the components should be clamped between 0 and 1.
- intersection
- Holds the Intersection struct, and the HitRecord struct, as well as some helpful trait implementations.
- light
- Holds the PointLight struct.
- material
- Holds the Material struct.
- matrix
- A 2D transformation matrix for points and vectors. For now, only floating point matrices are supported. Generics may come in the future.
- ray
- Holds the Ray struct.
- shape
- Stores the Shape trait, as well as modules containing its implementation.
- texture
- Holds the Texture trait, as well as some common textures which implement it.
- tuple
- A 3D tuple which can represent points and vectors. The coordinates are floating point numbers. Support for generics may be added in the future.
- world
- Holds the World struct.