#include <material.h>
Public Member Functions | |
| MatteMirrorMaterial (const Spectrum &col, const Spectrum refl, bool reflSpecularBounce) | |
| MaterialType | GetType () const |
| bool | IsDiffuse () const |
| bool | IsSpecular () const |
| Spectrum | f (const Vector &wo, const Vector &wi, const Normal &N) const |
| Spectrum | Sample_f (const Vector &wo, Vector *wi, const Normal &N, const Normal &shadeN, const float u0, const float u1, const float u2, const bool onlySpecular, float *pdf, bool &specularBounce) const |
Private Attributes | |
| MatteMaterial | matte |
| MirrorMaterial | mirror |
| float | matteFilter |
| float | mirrorFilter |
| float | totFilter |
| float | mattePdf |
| float | mirrorPdf |
Definition at line 190 of file material.h.
| luxrays::sdl::MatteMirrorMaterial::MatteMirrorMaterial | ( | const Spectrum & | col, | |
| const Spectrum | refl, | |||
| bool | reflSpecularBounce | |||
| ) | [inline] |
Definition at line 192 of file material.h.
References luxrays::Spectrum::Filter(), luxrays::sdl::MatteMaterial::GetKd(), luxrays::sdl::MirrorMaterial::GetKr(), matte, matteFilter, mattePdf, mirror, mirrorFilter, mirrorPdf, and totFilter.
| Spectrum luxrays::sdl::MatteMirrorMaterial::f | ( | const Vector & | wo, | |
| const Vector & | wi, | |||
| const Normal & | N | |||
| ) | const [inline, virtual] |
Implements luxrays::sdl::SurfaceMaterial.
Definition at line 207 of file material.h.
References luxrays::sdl::MatteMaterial::f(), matte, and mattePdf.
Referenced by Sample_f().
| MaterialType luxrays::sdl::MatteMirrorMaterial::GetType | ( | ) | const [inline, virtual] |
Implements luxrays::sdl::Material.
Definition at line 202 of file material.h.
References luxrays::sdl::MATTEMIRROR.
| bool luxrays::sdl::MatteMirrorMaterial::IsDiffuse | ( | ) | const [inline, virtual] |
Implements luxrays::sdl::Material.
Definition at line 204 of file material.h.
| bool luxrays::sdl::MatteMirrorMaterial::IsSpecular | ( | ) | const [inline, virtual] |
Implements luxrays::sdl::Material.
Definition at line 205 of file material.h.
| Spectrum luxrays::sdl::MatteMirrorMaterial::Sample_f | ( | const Vector & | wo, | |
| Vector * | wi, | |||
| const Normal & | N, | |||
| const Normal & | shadeN, | |||
| const float | u0, | |||
| const float | u1, | |||
| const float | u2, | |||
| const bool | onlySpecular, | |||
| float * | pdf, | |||
| bool & | specularBounce | |||
| ) | const [inline, virtual] |
Implements luxrays::sdl::SurfaceMaterial.
Definition at line 211 of file material.h.
References f(), matte, matteFilter, mattePdf, mirror, mirrorPdf, luxrays::sdl::MatteMaterial::Sample_f(), luxrays::sdl::MirrorMaterial::Sample_f(), and totFilter.
Definition at line 230 of file material.h.
Referenced by f(), MatteMirrorMaterial(), and Sample_f().
float luxrays::sdl::MatteMirrorMaterial::matteFilter [private] |
Definition at line 232 of file material.h.
Referenced by MatteMirrorMaterial(), and Sample_f().
float luxrays::sdl::MatteMirrorMaterial::mattePdf [private] |
Definition at line 232 of file material.h.
Referenced by f(), MatteMirrorMaterial(), and Sample_f().
Definition at line 231 of file material.h.
Referenced by MatteMirrorMaterial(), and Sample_f().
float luxrays::sdl::MatteMirrorMaterial::mirrorFilter [private] |
Definition at line 232 of file material.h.
Referenced by MatteMirrorMaterial().
float luxrays::sdl::MatteMirrorMaterial::mirrorPdf [private] |
Definition at line 232 of file material.h.
Referenced by MatteMirrorMaterial(), and Sample_f().
float luxrays::sdl::MatteMirrorMaterial::totFilter [private] |
Definition at line 232 of file material.h.
Referenced by MatteMirrorMaterial(), and Sample_f().
1.6.3