Cray is a physically based raytracer written from scratch in Rust.
- Cameras
- Orthographic Camera
- Perspective Camera
- Film
- Rgb Film
- GBuffer Film
- Shapes
- Spheres
- Triangle Mesh
- Bilinear Patch Mesh
- Disks
- Curves
- SDFs
- Samplers
- Independent Sampler
- Stratified Sampler
- Halton Sampler
- Sobol Sampler
- Padded Sobol Sampler
- ZSobol Sampler
- PMJ02BN Sampler
- BSDFs
- Diffuse
- Diffuse Transmission
- Conductor
- Coated Diffuse
- Coated Conductor
- Dielectric
- Thin Dielectric
- Normalized Fresnel
- Measured BSDFs
- Hair BSDF
- Disney BSDF
- Textures
- Float Constant Texture
- Float Image Texture
- Float Mix Texture
- Float Direction Mix Texture
- Float Scaled Texture
- Spectrum Constant Texture
- Spectrum Image Texture
- Spectrum Mix Texture
- Spectrum Direction Mix Texture
- Spectrum Scaled Texture
- Windy Texture
- Wrinkled Texture
- Media
- Homogeneous Medium
- Grid Medium
- RGB Grid Medium
- Cloud Medium
- NanoVDB Medium
- Light Sources
- Point Light
- Distant Light
- Projection Light
- Goniometric Light
- Spot Light
- Diffuse Area Light
- Uniform Infinite Light
- Image Infinite Light
- Portal Image Infinite Light
- Light Samplers
- Uniform Light Sampler
- Power Light Sampler
- Exhaustive Light Sampler
- BVH Light Sampler
The above scenes can be found at the pbrt-v4-scenes repo.
Cray is built primarily following the PBRT-v4 book from pbrt.org.






