A quick overview of the features supported by Photon in each version.
Warning: Documentation deprecated. Please visit the project website for up-to-date content.
Version 2.0.0-beta
- Rendering
- Backward Unidirectional Path Tracing
- Backward Unidirectional Path Tracing with Next Event Estimation
- Photon Mapping
- Progressive Photon Mapping
- Stochastic Progressive Photon Mapping
- RGB and Spectral Rendering
- AOV Rendering (normal, sample time, sample count)
- Sample Generation
Supports random, stratified, and Halton. In addition to the original Halton, fixed & per-digit scramble are also supported. - Image Rendering
- Bulk, Tile, Stripe, Grid, and Spiral Modes
- Adaptive Sampling
- Imaging and Film
- Cameras
Supports pinhole, thin Lens, 360 cameras. - Radiant Flux Sensor
General rectangular sensors for radiant flux measurement (e.g., for solar panel efficiency analysis). - Film Filtering
- box, Gaussian, Mitchell-Netravali, Blackman-Harris
- Tone-mapping
- naive Reinhard
- Jim Hejl and Richard Burgess-Dawson mapping
- Various IO Formats
- LDR: .png, .jpg, .bmp, .tga
- HDR: .hdr, .exr, .pfm
- Cameras
- Material
- Lambertian Diffuse
- Microfacet-based Opaque Model
- isotropic-GGX distribution
- anisotropic-GGX distribution
- Microfacet-based Translucent Model
- isotropic-GGX distribution
- Idealized Surface
- absorber, reflector, transmitter
- dielectric with controllable reflectance and transmittance
- Spectral Complex IoR
- Layered Surface Material (Belcour’s model)
- Blending Arbitrary BSDFs
- Schlick and Exact Fresnel Models
- Experimental: Thin-film
- Geometry
- Triangle, Rectangle, Sphere, Cuboid, Triangle Mesh
- Indexed Mesh
Triangle and quad mesh (experimental). Arbitrary number of bit for indices. Various vertex attribute formats from half float to octahedral compression. - Simple 2-D Wave, Fractal
- Instancing
- Acceleration Structures
- BVH
- kD-tree (point, indexed, referenced)
- Linear Motions
- Light
- Point Light, Area Light (sphere, rectangle)
- Geometric Light
- HDR Environment Map
- with importance sampling
- IES Light Profiles
- Preetham Sky Model
- Accurate black-body radiators
- Texture
- Nearest and Bilinear Filtering
- Procedural Generators
- constants and checkerboard
- Procedural Operators
- mathematical modifiers: add, multiply
- General Pixel Channel Swizzling
- Misc.
- Blender Addon for Scene Creation
With scene manipulation, material construction (node graph), and render preview. - Easy-to-write Custom Scene Description Language
Modular and extensible grammar. - Studio Program for Rendering and Scene Management
In previous version, studio was in Java. From beta and later, all functionalities are moving into UI written fully in C++ to better support the upcoming editor upgrade. - CLI for Server Usage
- Loading and Rendering Minecraft Maps (experimental)
- Hierarchical Scene Graph
- Automatically Generate SDL Interface and Documentation
Currently supports Python, Java.
- Blender Addon for Scene Creation
Version 2.0.0-alpha
- Rendering
- Backward Unidirectional Path Tracing
- Backward Unidirectional Path Tracing with Next Event Estimation
- Photon Mapping
- Progressive Photon Mapping
- Stochastic Progressive Photon Mapping
- RGB and Spectral Rendering
- AOV Rendering (normal, sample time, sample count)
- Sample Generation
Supports random, stratified, and Halton - Image Rendering
- Bulk, Tile, Grid and Spiral Modes
- Adaptive Sampling
- Imaging and Film
- Cameras
Supports pinhole, thin Lens, 360 cameras. - Radiant Flux Sensor
- Film Filtering
- box, Gaussian, Mitchell-Netravali, Blackman-Harris
- Tone-mapping
- naive Reinhard
- Jim Hejl and Richard Burgess-Dawson mapping
- Various IO Formats
- LDR: .png, .jpg, .bmp, .tga
- HDR: .hdr, .exr, .pfm
- Cameras
- Material
- Lambertian Diffuse
- Microfacet-based Opaque Model
- isotropic-GGX distribution
- anisotropic-GGX distribution
- Microfacet-based Translucent Model
- isotropic-GGX distribution
- Idealized Surface
- absorber, reflector, transmitter
- dielectric with controllable reflectance and transmittance
- Spectral Complex IoR
- Layered Surface Material (Belcour’s model)
- Blending Arbitrary BSDFs
- Schlick and Exact Fresnel Models
- Geometry
- Triangle, Rectangle, Sphere, Cuboid, Triangle Mesh
- Simple 2-D Wave, Fractal
- Instancing
- Acceleration Structures
- BVH
- kD-tree (point, indexed, referenced)
- Linear Motions
- Light
- Point Light, Area Light (sphere, rectangle)
- Geometric Light
- HDR Environment Map
- with importance sampling
- IES Light Profiles
- Preetham Sky Model
- Texture
- Nearest and Bilinear Filtering
- Procedural Generators
- constants and checkerboard
- Procedural Operators
- mathematical modifiers: add, multiply
- Misc.
- Blender Addon for Scene Creation
- Easy-to-write Custom Scene Description Language
- Studio Program for Rendering and Scene Management
- CLI for Server Usage
- Loading and Rendering Minecraft Maps (experimental)
- Hierarchical Scene Graph
- Automatically Generate SDL Interface (currently supports Python, Java)
Full source code available.