[][src]Module pbrt::core::reflection

When light is incident on the surface, the surface scatters the light, reflecting some of it back into the environment. There are two main effects that need to be described to model this reflection: the spectral distribution of the reflected light and its directional distribution.

Structs

Bsdf
DisneyFresnel

Specialized Fresnel function used for the specular component, based on a mixture between dielectric and the Schlick Fresnel approximation.

FourierBSDF
FourierBSDFTable
FresnelBlend
FresnelConductor
FresnelDielectric
FresnelNoOp
FresnelSpecular
LambertianReflection
LambertianTransmission
MicrofacetReflection
MicrofacetTransmission
NoBxdf
OrenNayar
SpecularReflection
SpecularTransmission

Enums

Bxdf
BxdfType
Fresnel

Functions

abs_cos_theta

Utility function to calculate the absolute value of the cosine via spherical coordinates.

cos_2_phi

Utility function to calculate square cosine via spherical coordinates.

cos_2_theta

Utility function to calculate the square cosine via spherical coordinates.

cos_d_phi

Utility function to calculate the cosine of the angle between two vectors in the shading coordinate system.

cos_phi

Utility function to calculate cosine via spherical coordinates.

cos_theta

Utility function to calculate cosine via spherical coordinates.

fr_conductor

Computes the Fresnel reflectance at the boundary between a conductor and a dielectric medium.

fr_dielectric

Computes the Fresnel reflection formula for dielectric materials and unpolarized light.

fr_schlick
reflect

Computes the reflection direction given an incident direction and a surface normal.

refract

Computes the refraction direction given an incident direction, a surface normal, and the ratio of indices of refraction (incident and transmitted).

sin_2_phi

Utility function to calculate square sine via spherical coordinates.

sin_2_theta

Utility function to calculate the square sine via spherical coordinates.

sin_phi

Utility function to calculate sine via spherical coordinates.

sin_theta

Utility function to calculate sine via spherical coordinates.

tan_2_theta

Utility function to calculate the square tangent via spherical coordinates.

tan_theta

Utility function to calculate the tangent via spherical coordinates.

vec3_same_hemisphere_vec3

Check that two vectors lie on the same side of of the surface.