Castor3D 0.13.0
Multiplatform 3D engine
Fonctions membres publiques | Fonctions membres publiques statiques | Liste de tous les membres
Référence de la structure castor3d::shader::LightMaterialabstract

#include <GlslLighting.hpp>

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

Fonctions membres publiques

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 (sdw::Vec3 const &vtxColour, 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
 

Fonctions membres publiques statiques

static C3D_API ast::type::BaseStructPtr makeType (ast::type::TypesCache &cache)
 

Convertors

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
 
sdw::Float albDiv
 
sdw::Float spcDiv
 
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

◆ LightMaterial()

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

Documentation des fonctions membres

◆ adjustDirectSpecular()

virtual C3D_API void castor3d::shader::LightMaterial::adjustDirectSpecular ( sdw::Vec3 &  directSpecular) const
pure virtual

◆ computeF0()

static C3D_API sdw::Vec3 castor3d::shader::LightMaterial::computeF0 ( sdw::Vec3 const &  albedo,
sdw::Float const &  metalness 
)
static

◆ computeMetalness()

static C3D_API sdw::Float castor3d::shader::LightMaterial::computeMetalness ( sdw::Vec3 const &  albedo,
sdw::Vec3 const &  specular 
)
static

◆ computeRoughness()

static C3D_API sdw::Float castor3d::shader::LightMaterial::computeRoughness ( sdw::Float const &  glossiness)
static

◆ create() [1/3]

virtual C3D_API void castor3d::shader::LightMaterial::create ( sdw::Vec3 const &  albedo,
sdw::Vec4 const &  data3,
sdw::Vec4 const &  data2,
Material const &  material 
)
pure virtual

◆ create() [2/3]

virtual C3D_API void castor3d::shader::LightMaterial::create ( sdw::Vec3 const &  albedo,
sdw::Vec4 const &  data3,
sdw::Vec4 const &  data2,
sdw::Float const &  ambient = 0.0_f 
)
pure virtual

◆ create() [3/3]

virtual C3D_API void castor3d::shader::LightMaterial::create ( sdw::Vec3 const &  vtxColour,
Material const &  material 
)
pure virtual

◆ getAmbient()

virtual C3D_API sdw::Vec3 castor3d::shader::LightMaterial::getAmbient ( sdw::Vec3 const &  ambientLight) const
pure virtual

◆ getIndirectAmbient()

virtual C3D_API sdw::Vec3 castor3d::shader::LightMaterial::getIndirectAmbient ( sdw::Vec3 const &  indirectAmbient) const
pure virtual

◆ getMetalness()

virtual C3D_API sdw::Float castor3d::shader::LightMaterial::getMetalness ( ) const
pure virtual

◆ getRoughness()

virtual C3D_API sdw::Float castor3d::shader::LightMaterial::getRoughness ( ) const
pure virtual

◆ makeType()

static C3D_API ast::type::BaseStructPtr castor3d::shader::LightMaterial::makeType ( ast::type::TypesCache &  cache)
static

◆ output()

virtual C3D_API void castor3d::shader::LightMaterial::output ( sdw::Vec4 &  outData2,
sdw::Vec4 &  outData3 
) const
pure virtual

◆ SDW_DeclStructInstance()

castor3d::shader::LightMaterial::SDW_DeclStructInstance ( C3D_API  ,
LightMaterial   
)

Documentation des données membres

◆ albDiv

sdw::Float castor3d::shader::LightMaterial::albDiv
protected

◆ albedo

sdw::Vec3 castor3d::shader::LightMaterial::albedo

◆ depthFactor

sdw::Float castor3d::shader::LightMaterial::depthFactor

◆ edgeColour

sdw::Vec4 castor3d::shader::LightMaterial::edgeColour

◆ edgeFactors

sdw::Vec4 castor3d::shader::LightMaterial::edgeFactors

◆ edgeWidth

sdw::Float castor3d::shader::LightMaterial::edgeWidth

◆ normalFactor

sdw::Float castor3d::shader::LightMaterial::normalFactor

◆ objectFactor

sdw::Float castor3d::shader::LightMaterial::objectFactor

◆ spcDiv

sdw::Float castor3d::shader::LightMaterial::spcDiv
protected

◆ specific

sdw::Vec4 castor3d::shader::LightMaterial::specific

◆ specular

sdw::Vec3 castor3d::shader::LightMaterial::specular

◆ sssProfileIndex

sdw::Float castor3d::shader::LightMaterial::sssProfileIndex

◆ sssTransmittance

sdw::Float castor3d::shader::LightMaterial::sssTransmittance

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