9#include <Common/primitive_type.h>
38 StructType ztruct(
"surface-layer-info");
39 ztruct.description(
"Data for layered material construction.");
45 ztruct.addField(roughness);
48 iorN.
description(
"The real part of the layer's index of refraction.");
51 ztruct.addField(iorN);
54 iorK.
description(
"The imaginary part of the layer's index of refraction.");
57 ztruct.addField(iorK);
63 ztruct.addField(depth);
66 g.
description(
"The g variable in Henyey-Greenstein phase function.");
72 sigmaA.
description(
"The volume absorption coefficient.");
75 ztruct.addField(sigmaA);
78 sigmaS.
description(
"The volume scattering coefficient.");
81 ztruct.addField(sigmaS);
static real squared(const real roughness)
Mapping for a perceptually linear roughness.
Definition RoughnessToAlphaMapping.h:55
Definition SurfaceLayerInfo.h:15
real getRoughness() const
Definition SurfaceLayerInfo.h:89
math::Spectrum getIorK() const
Definition SurfaceLayerInfo.h:104
math::Spectrum getSigmaA() const
Definition SurfaceLayerInfo.h:119
math::Spectrum getSigmaS() const
Definition SurfaceLayerInfo.h:124
real getG() const
Definition SurfaceLayerInfo.h:114
real getAlpha() const
Definition SurfaceLayerInfo.h:94
real getDepth() const
Definition SurfaceLayerInfo.h:109
math::Spectrum getIorN() const
Definition SurfaceLayerInfo.h:99
PH_DEFINE_SDL_STRUCT(TSdlOwnerStruct< SurfaceLayerInfo >)
Definition SurfaceLayerInfo.h:36
SDL binding type for a typical C++ struct.
Definition TSdlOwnerStruct.h:18
A field class that binds a floating point member variable.
Definition TSdlReal.h:21
Definition TSdlSpectrum.h:27
TSdlValue & description(std::string descriptionStr)
Definition TSdlValue.ipp:95
TSdlValue & optional()
Definition TSdlValue.ipp:103
TSdlValue & defaultTo(T defaultValue)
Definition TSdlValue.ipp:71
Definition TTristimulusSpectrum.h:11
The root for all renderer implementations.
Definition EEngineProject.h:6