Castor3D 0.12.0
Multiplatform 3D engine
Fonctions membres publiques | Attributs publics | Attributs protégés | Liste de tous les membres
Référence de la structure castor3d::shader::PbrLightMaterial

#include <GlslPbrMaterial.hpp>

Graphe d'héritage de castor3d::shader::PbrLightMaterial:
Inheritance graph
[légende]
Graphe de collaboration de castor3d::shader::PbrLightMaterial:
Collaboration graph
[légende]

Fonctions membres publiques

C3D_API PbrLightMaterial (sdw::ShaderWriter &writer, sdw::expr::ExprPtr expr, bool enabled)
 
C3D_API void create (sdw::Vec3 const &albedo, sdw::Vec4 const &data3, sdw::Vec4 const &data2, Material const &material) override
 
C3D_API void create (sdw::Vec3 const &albedo, sdw::Vec4 const &data3, sdw::Vec4 const &data2, sdw::Float const &ambient) override
 
C3D_API void create (Material const &material) override
 
C3D_API void output (sdw::Vec4 &outData2, sdw::Vec4 &outData3) const override
 
C3D_API sdw::Vec3 getAmbient (sdw::Vec3 const &ambientLight) const override
 
C3D_API void adjustDirectSpecular (sdw::Vec3 &directSpecular) const override
 
C3D_API sdw::Vec3 getIndirectAmbient (sdw::Vec3 const &indirectAmbient) const override
 
C3D_API sdw::Float getMetalness () const override
 
C3D_API sdw::Float getRoughness () const override
 
bool isSpecularGlossiness () const
 
- Fonctions membres publiques hérités de castor3d::shader::LightMaterial
C3D_API LightMaterial (sdw::ShaderWriter &writer, sdw::expr::ExprPtr expr, bool enabled)
 
 SDW_DeclStructInstance (C3D_API, LightMaterial)
 
virtual C3D_API void create (sdw::Vec3 const &albedo, sdw::Vec4 const &data3, sdw::Vec4 const &data2, Material const &material)=0
 
virtual C3D_API void create (sdw::Vec3 const &albedo, sdw::Vec4 const &data3, sdw::Vec4 const &data2, sdw::Float const &ambient=0.0_f)=0
 
virtual C3D_API void create (Material const &material)=0
 
virtual C3D_API void output (sdw::Vec4 &outData2, sdw::Vec4 &outData3) const =0
 
virtual C3D_API sdw::Vec3 getAmbient (sdw::Vec3 const &ambientLight) const =0
 
virtual C3D_API void adjustDirectSpecular (sdw::Vec3 &directSpecular) const =0
 
virtual C3D_API sdw::Vec3 getIndirectAmbient (sdw::Vec3 const &indirectAmbient) const =0
 
virtual C3D_API sdw::Float getMetalness () const =0
 
virtual C3D_API sdw::Float getRoughness () const =0
 

Attributs publics

sdw::Float & roughness
 
sdw::Float & metalness
 
- Attributs publics hérités de castor3d::shader::LightMaterial
sdw::Vec4 edgeFactors
 
sdw::Vec4 edgeColour
 
sdw::Vec4 specific
 
sdw::Vec3 albedo
 
sdw::Vec3 specular
 
sdw::Float edgeWidth
 
sdw::Float depthFactor
 
sdw::Float normalFactor
 
sdw::Float objectFactor
 
sdw::Float sssProfileIndex
 
sdw::Float sssTransmittance
 

Attributs protégés

bool m_isSpecularGlossiness {}
 
- Attributs protégés hérités de castor3d::shader::LightMaterial
sdw::Float albDiv
 
sdw::Float spcDiv
 

Membres hérités additionnels

- Fonctions membres publiques statiques hérités de castor3d::shader::LightMaterial
static C3D_API ast::type::BaseStructPtr makeType (ast::type::TypesCache &cache)
 
static C3D_API sdw::Vec3 computeF0 (sdw::Vec3 const &albedo, sdw::Float const &metalness)
 
static C3D_API sdw::Float computeMetalness (sdw::Vec3 const &albedo, sdw::Vec3 const &specular)
 
static C3D_API sdw::Float computeRoughness (sdw::Float const &glossiness)
 

Documentation des constructeurs et destructeur

◆ PbrLightMaterial()

C3D_API castor3d::shader::PbrLightMaterial::PbrLightMaterial ( sdw::ShaderWriter &  writer,
sdw::expr::ExprPtr  expr,
bool  enabled 
)

Documentation des fonctions membres

◆ adjustDirectSpecular()

C3D_API void castor3d::shader::PbrLightMaterial::adjustDirectSpecular ( sdw::Vec3 &  directSpecular) const
overridevirtual

◆ create() [1/3]

C3D_API void castor3d::shader::PbrLightMaterial::create ( Material const &  material)
overridevirtual

◆ create() [2/3]

C3D_API void castor3d::shader::PbrLightMaterial::create ( sdw::Vec3 const &  albedo,
sdw::Vec4 const &  data3,
sdw::Vec4 const &  data2,
Material const &  material 
)
overridevirtual

◆ create() [3/3]

C3D_API void castor3d::shader::PbrLightMaterial::create ( sdw::Vec3 const &  albedo,
sdw::Vec4 const &  data3,
sdw::Vec4 const &  data2,
sdw::Float const &  ambient 
)
overridevirtual

◆ getAmbient()

C3D_API sdw::Vec3 castor3d::shader::PbrLightMaterial::getAmbient ( sdw::Vec3 const &  ambientLight) const
overridevirtual

◆ getIndirectAmbient()

C3D_API sdw::Vec3 castor3d::shader::PbrLightMaterial::getIndirectAmbient ( sdw::Vec3 const &  indirectAmbient) const
overridevirtual

◆ getMetalness()

C3D_API sdw::Float castor3d::shader::PbrLightMaterial::getMetalness ( ) const
overridevirtual

◆ getRoughness()

C3D_API sdw::Float castor3d::shader::PbrLightMaterial::getRoughness ( ) const
overridevirtual

◆ isSpecularGlossiness()

bool castor3d::shader::PbrLightMaterial::isSpecularGlossiness ( ) const
inline

Références m_isSpecularGlossiness.

◆ output()

C3D_API void castor3d::shader::PbrLightMaterial::output ( sdw::Vec4 &  outData2,
sdw::Vec4 &  outData3 
) const
overridevirtual

Documentation des données membres

◆ m_isSpecularGlossiness

bool castor3d::shader::PbrLightMaterial::m_isSpecularGlossiness {}
protected

◆ metalness

sdw::Float& castor3d::shader::PbrLightMaterial::metalness

◆ roughness

sdw::Float& castor3d::shader::PbrLightMaterial::roughness

La documentation de cette structure a été générée à partir du fichier suivant :