6#include <Common/primitive_type.h>
14class DielectricFresnel;
45 StructType ztruct(
"dielectric-interface");
46 ztruct.description(
"Data describing the effects when light hits an dielectric interface.");
49 fresnel.
description(
"Type of the Fresnel for the dielectric interface.");
52 ztruct.addField(fresnel);
55 iorOuter.
description(
"The index of refraction outside of this interface.");
58 ztruct.addField(iorOuter);
61 iorInner.
description(
"The index of refraction inside of this interface.");
64 ztruct.addField(iorInner);
Data describing the effects when light hits an dielectric interface.
Definition DielectricInterfaceInfo.h:22
std::unique_ptr< DielectricFresnel > genFresnelEffect() const
Definition DielectricInterfaceInfo.cpp:26
void setIorInner(real iorInner)
Definition DielectricInterfaceInfo.cpp:54
void setFresnel(EInterfaceFresnel fresnel)
Definition DielectricInterfaceInfo.cpp:44
DielectricInterfaceInfo()
Definition DielectricInterfaceInfo.cpp:12
void setIorOuter(real iorOuter)
Definition DielectricInterfaceInfo.cpp:49
PH_DEFINE_SDL_STRUCT(TSdlOwnerStruct< DielectricInterfaceInfo >)
Definition DielectricInterfaceInfo.h:43
Definition TSdlEnumField.h:23
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
TSdlValue & description(std::string descriptionStr)
Definition TSdlValue.ipp:95
TSdlValue & optional()
Definition TSdlValue.ipp:103
TSdlValue & defaultTo(T defaultValue)
Definition TSdlValue.ipp:71
TSdlValue & niceToHave()
Definition TSdlValue.ipp:110
The root for all renderer implementations.
Definition EEngineProject.h:6
EInterfaceFresnel
Definition sdl_component_enums.h:10