![]() |
PhotoGENius V1.0.0
A basic library for generating photorealistic images, developed for the course Numerical techniques for photorealistic image generation.
|
An abstract class representing a Bidirectional Reflectance Distribution Function (BRDF). More...
Public Member Functions | |
BRDF () | |
Costructor without parameters, sets Pigment to a default UniformPigment(Black). | |
BRDF (Pigment pigment) | |
Constructor with parameter. More... | |
virtual Color | Eval (Normal normal, Vec inDir, Vec outDir, Vec2d uv) |
virtual Ray | ScatterRay (PCG pcg, Vec incomingDir, Point interactionPoint, Normal normal, int depth) |
Abstract method to be implemented in the BRDF derived classes. More... | |
Public Attributes | |
Pigment | Pigment |
An abstract class representing a Bidirectional Reflectance Distribution Function (BRDF).
PGENLib.BRDF.BRDF | ( | Pigment | pigment | ) |
Constructor with parameter.
pigment | : specify the chosen pigment. |
Reimplemented in PGENLib.SpecularBRDF.
|
virtual |
Abstract method to be implemented in the BRDF derived classes.
pcg | Used to generate random numbers |
incomingDir | Direction of the incoming ray |
interactionPoint | Where the ray hit the surface |
normal | Normal on interactionPoint |
depth | Depth value for the new ray |
Reimplemented in PGENLib.DiffuseBRDF, and PGENLib.SpecularBRDF.