Classes
- namespace drjit Bring nanothread functions into scope.
- namespace Spherical Working with spherical coordinate and angles.
- class Array2d Generic, resizable, 2D array class.
- class Barrier Implements a simple barrier thread-coordination mechanism using a condition variable and mutex.
- struct BBH An axis-aligned bounding box hierarchy acceleration structure.
- struct BBHLeaf A lighter-weight version of SurfaceGroup for BBH leaf nodes that need to store multiple surfaces, but which don't need to store additional information like a transform or explicitly stored bounds.
- struct BBHNode A node of an axis-aligned bounding box hierarchy.
- struct Box An N-D axis-aligned bounding box consisting of two N-D points min and max.
- class Camera A virtual (pinhole) camera.
- class DartsException An exception storing a human-readable error description passed in using
fmt:format
-style arguments. - class DartsFactory A specialization of the Factory for darts objects read from json.
- class Dielectric A smooth dielectric surface that reflects and refracts light according to the specified index of refraction ior.
- class DiffuseLight A material that emits light equally in all directions from the front side of a surface.
- class Factory Abstract factory used to construct objects by name.
- struct HitInfo Contains information about a ray intersection hit point.
- class HomogeneousMedium A homogeneous medium with the same scattering properties everywhere.
- class Image An image with a generic pixel type.
- struct IntersectionTest A class to test the results of a ray-surface intersection.
- class Lambertian A perfectly diffuse (Lambertian) material.
- class Material A base class used to represent surface material properties.
- struct Mesh A triangle mesh.
- class Metal A metallic material that reflects light into the (potentially rough) mirror reflection direction.
- class NanoVDBMedium A medium with density defined by a NanoVDB grid.
- class Progress A thread-safe helper object to display and update a progress bar in the terminal.
- class Quad A quad spanning from -m_
size / 2 to m_ size / 2 in the (x,y)-plane at z=0. - class Range Python-style range: iterates from min to max in range-based for loops.
- struct Ray Simple ray segment data structure.
- class Scene Main scene data structure.
- class Sphere A sphere centered at the origin with radius m_
radius. - class Surface This is the abstract superclass for all surfaces.
- class SurfaceGroup A collection of Surfaces grouped together.
- struct Test Base class for unit tests in Darts.
- struct Transform Homogeneous coordinate transformation.
- class Triangle An instance of a triangle for a given face in a mesh.
- class VacuumMedium A vacuum (empty medium).
- class XformedSurface A convenience subclass of Surface for surfaces with a Transform.
- class XformedSurfaceWithMaterial Adds a Material to XformedSurface.