ludus::graphics::renderer::ReferenceBsdf¶
Ludus Wiki · API overview · Browse API
Struct
RT1 RGB reflection input. Scattering selects legacy metallic/roughness, Lambertian diffuse or isotropic rough conductor with complex-IOR Fresnel. CoatedDiffuse is a rough dielectric layer over Lambertian reflection with absorption and zero medium scattering. Both typed rough models use Scattering alpha directly. Coatings require isotropy, alpha >= LUDUS_COATING_MIN_ALPHA, and IOR >= 1. Their internal depth is LUDUS_COATING_MAX_DEPTH; it does not consume scene bounces. Dielectric and ThinDielectric are smooth nonabsorbing interfaces with one real index (equal Eta channels, zero K, alpha below LUDUS_SMOOTH_INTERFACE_ALPHA): their reflection and transmission are directional deltas, sampled only. Rough transmission, scattering media, absorption inside dielectrics and spectral dispersion are absent.
Declared in modules/graphics/renderer/include/ludus/graphics/renderer/reference.hpp
#include <ludus/graphics/renderer/reference.hpp>
struct ludus::graphics::renderer::ReferenceBsdf final
Fields¶
BaseColor¶
ludus::foundation::math::Vector3 ludus::graphics::renderer::ReferenceBsdf::BaseColor {1, 1, 1}
Linear RGB reflectance, each channel in [0,1]; conductor evaluation uses Eta/K instead.
Related types: ludus::foundation::math::Vector3
Declared in modules/graphics/renderer/include/ludus/graphics/renderer/reference.hpp
Metallic¶
ludus::foundation::float32 ludus::graphics::renderer::ReferenceBsdf::Metallic = 0
Metallic fraction in [0,1]. For DiffuseConductorMix, the weight and proposal probability of the rough conductor lobe. The legacy dielectric normal-incidence reflectance is 0.04.
Related types: ludus::foundation::float32
Declared in modules/graphics/renderer/include/ludus/graphics/renderer/reference.hpp
Roughness¶
ludus::foundation::float32 ludus::graphics::renderer::ReferenceBsdf::Roughness = 0.5F
Legacy perceptual roughness in [0.045,1]; typed conductor/coating alpha comes from Scattering.
Related types: ludus::foundation::float32
Declared in modules/graphics/renderer/include/ludus/graphics/renderer/reference.hpp
Scattering¶
content::scene_format::MaterialScattering ludus::graphics::renderer::ReferenceBsdf::Scattering {}
Typed optical parameters; default preserves the legacy metallic/roughness model.
Related types: content::scene_format::MaterialScattering
Declared in modules/graphics/renderer/include/ludus/graphics/renderer/reference.hpp
IsViewerInside¶
bool ludus::graphics::renderer::ReferenceBsdf::IsViewerInside = false
Dielectric only: the view direction lies inside the medium, behind the surface's oriented front side, so refraction uses the inverse relative index. Thin slabs ignore it.
Declared in modules/graphics/renderer/include/ludus/graphics/renderer/reference.hpp