PhotoGENius V1.0.0
A basic library for generating photorealistic images, developed for the course Numerical techniques for photorealistic image generation.
Public Member Functions | List of all members
PGENLib.DiffuseBRDF Class Reference

A class representing an ideal diffuse BRDF. More...

Inheritance diagram for PGENLib.DiffuseBRDF:
PGENLib.BRDF

Public Member Functions

 DiffuseBRDF (Pigment pigment)
 
override Color Eval (Normal normal, Vec inDir, Vec outDir, Vec2d uv)
 
override Ray ScatterRay (PCG pcg, Vec incomingDir, Point interactionPoint, Normal normal, int depth)
 Abstract method to be implemented in the BRDF derived classes. More...
 
- Public Member Functions inherited from PGENLib.BRDF
 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...
 

Additional Inherited Members

- Public Attributes inherited from PGENLib.BRDF
Pigment Pigment
 

Detailed Description

A class representing an ideal diffuse BRDF.

Member Function Documentation

◆ Eval()

override Color PGENLib.DiffuseBRDF.Eval ( Normal  normal,
Vec  inDir,
Vec  outDir,
Vec2d  uv 
)
virtual

Reimplemented from PGENLib.BRDF.

◆ ScatterRay()

override Ray PGENLib.DiffuseBRDF.ScatterRay ( PCG  pcg,
Vec  incomingDir,
Point  interactionPoint,
Normal  normal,
int  depth 
)
virtual

Abstract method to be implemented in the BRDF derived classes.

Parameters
pcgUsed to generate random numbers
incomingDirDirection of the incoming ray
interactionPointWhere the ray hit the surface
normalNormal on interactionPoint
depthDepth value for the new ray
Returns

Reimplemented from PGENLib.BRDF.


The documentation for this class was generated from the following file: