[−][src]Crate rpt
rpt
is a path tracer in Rust.
Re-exports
pub use glm; |
pub use image; |
Structs
BoundingBox | A 3D axis-aligned bounding box |
Buffer | A buffer that stores sample results from path tracing |
Camera | A simple thin-lens perspective camera |
Cube | A unit cube centered at the origin |
Hdri | High-dynamic-range equirectangular image for lighting 3D scenes |
HitRecord | Record of when a hit occurs, and the corresponding normal |
KdTree | A kd-tree based on bounding boxes, used to accelerate ray intersections |
MarblesSystem | System that represents marbles and a glass |
Material | Represents a shader material with some physical properties |
MonomialSurface | Represents a glass-shaped surface with height and exp parameters |
Object | An object rendered in a scene |
ParticleState | Represents current state of a particle system, including positions and velocities |
Plane | A plane represented by the linear equation x • normal = value |
Ray | An infinite ray in one direction |
Renderer | Builder object for rendering a scene |
Scene | Object representing a scene that can be rendered |
SolidGravitySystem | System that represents solid gravity objects in space |
Sphere | A unit sphere centered at the origin |
Transformed | A shape that has been composed with a transformation |
Triangle | A triangle with three vertices and three normals |
Enums
Environment | An environment map for lighting 3D scenes |
Filter | A noise reduction filter applied to the rendered image |
Light | Type representing various forms of lighting |
Traits
Bounded | A geometric shape with a bounding box (needed for kd-tree intersections) |
ParticleSystem | A trait that represents a system formulating some physical laws |
SceneAdd | Trait that allows adding an object or light to a scene |
Shape | Represents a physical shape, which can be hit by a ray to find intersections |
Transformable | An object that can be transformed |
Functions
color_bytes | Convert a color to a clamped triple of sRGB unsigned bytes |
cube | Helper function to construct a cube |
hex_color | Construct a new color from an sRGB hex integer, applying gamma correction to return linear intensities |
load_obj | Load a mesh geometry from a Wavefront .OBJ file |
load_obj_with_mtl | Load an object, with materials, from a Wavefront .OBJ file |
load_stl | Load a mesh from a .STL file |
monomial_surface | Helper function to construct a glass-like monomial surface |
plane | Helper function to construct a plane |
polygon | Helper function to construct a simple polygon made from triangles |
sphere | Helper function to construct a sphere |
Type Definitions
Color | A representation of an RGB color |
Mesh | A triangle mesh, stored using a kd-tree |