Wednesday, February 10, 2016

Ray Tracer Features/Roadmap

Last Updated: February 17, 2016
Change Log

Key

[C] Feature Completed
[I] Feature currently under development
[P] Feature's inclusion planned. Awaiting Development
[TBD] Feature to be included in future development

Input Formats

[C] Predefined Scene: All geometry, lights, etc. must be defined in the code

[TBD] OBJ File
[TBD] RIB File
[TBD] FBX File

Geometry

[C] Sphere

[P] Polygon (After Background Image)

[TBD] Polygon Mesh
[TBD] Point 
[TBD] Line 
[TBD] Curve 
[TBD] Volume

Lights

[C] Ambient
[C] Directional

[TBD] Point
[TBD] Spotlight
[TBD] Area

Camera

[C] Static Position: Camera must be positioned at (0, 0, 1)

[C] Static Focal Plane: Camera must be focused on the origin
[C] Square Image Resolution: Height must be equal to Width

[TBD] Adjustable Position 
[TBD] Adjustable Focal Plane
[TBD] Non-Square Image Resolution
[TBD] Near/Far Clipping Planes
[TBD] Focal Length Control
[TBD] Aperture Control

Shaders/Lighting Models

[C] Constant

[I] Phong (No Fresnel or Emission)

[TBD] Blinn
[TBD] Lambert

Output Formats

[C] ASCII Portable Pixel Map (.ppm) 

[TBD] Joint Photographic Experts Group (.jpeg) 
[TBD] Portable Network Graphics (.png) 
[TBD] OpenEXR (.exr)

Additional Features

[P] Background Image (After Phong Lighting Model)

[TBD] Texture Maps (Diffuse, Specular, Emission)
[TBD] Normal/Bump Maps
[TBD] Displacement Maps
[TBD] Light Linking
[TBD] Animation (Keyframe and Procedural)
[TBD] Motion Blur
[TBD] Multi-Threading