#include <PassComponent.hpp>
|
C3D_API | PassMaterialShader (VkDeviceSize dataSize) |
|
virtual C3D_API void | fillMaterialType (sdw::type::BaseStruct &type, sdw::expr::ExprList &inits) const |
| Remplit la structure shader de matériau avec les membres fournis par ce composant, et leurs initialiseurs. Plus de détails...
|
|
virtual C3D_API void | updateMaterial (sdw::Vec3 const &colour, sdw::Vec4 const &spcRgh, sdw::Vec4 const &colMtl, sdw::Vec4 const &crTsIr, sdw::Vec4 const &sheen, Material &material) const |
| Met à jour le matériau depuis les valeurs nécessaires à l'éclairage (specular, metalness, roughness et colour). Plus de détails...
|
|
|
|
MemChunk const & | getMaterialChunk () const |
|
| PassShader ()=default |
|
| PassShader (PassShader const &)=delete |
|
PassShader & | operator= (PassShader const &)=delete |
|
C3D_API | PassShader (PassShader &&)=default |
|
C3D_API PassShader & | operator= (PassShader &&)=default |
|
virtual C3D_API | ~PassShader ()=default |
|
virtual C3D_API void | updateOutputs (sdw::StructInstance const &components, sdw::StructInstance const &surface, sdw::Vec4 &spcRgh, sdw::Vec4 &colMtl, sdw::Vec4 &sheen) const |
| Met à jour les valeurs nécessaires à l'éclairage (specular, metalness, roughness et colour). Plus de détails...
|
|
◆ PassMaterialShader()
C3D_API castor3d::shader::PassMaterialShader::PassMaterialShader |
( |
VkDeviceSize |
dataSize | ) |
|
|
inlineexplicit |
- Paramètres
-
[in] | dataSize | La taille des données de ce composant, pour les réserver dans le PassBuffer. |
◆ fillMaterialType()
virtual C3D_API void castor3d::shader::PassMaterialShader::fillMaterialType |
( |
sdw::type::BaseStruct & |
type, |
|
|
sdw::expr::ExprList & |
inits |
|
) |
| const |
|
inlinevirtual |
Remplit la structure shader de matériau avec les membres fournis par ce composant, et leurs initialiseurs.
- Paramètres
-
[in] | type | Reçoit les membres. |
[in] | inits | Reçoit les initialiseurs des membres. |
Réimplémentée dans castor3d::PassHeaderComponent::MaterialShader, castor3d::TextureCountComponent::MaterialShader, castor3d::TexturesComponent::MaterialShader, castor3d::AttenuationComponent::MaterialShader, castor3d::ClearcoatComponent::MaterialShader, castor3d::EmissiveComponent::MaterialShader, castor3d::IridescenceComponent::MaterialShader, castor3d::MetalnessComponent::MaterialShader, castor3d::RoughnessComponent::MaterialShader, castor3d::SheenComponent::MaterialShader, castor3d::SpecularComponent::MaterialShader, castor3d::SubsurfaceScatteringComponent::MaterialShader, castor3d::ThicknessComponent::MaterialShader, castor3d::TransmissionComponent::MaterialShader, castor3d::TransmittanceMapComponent::MaterialShader, castor3d::AlphaTestComponent::MaterialShader, castor3d::ColourComponent::MaterialShader, castor3d::OpacityComponent::MaterialShader, castor3d::ReflectionComponent::MaterialShader, et castor3d::RefractionComponent::MaterialShader.
◆ getMaterialChunk()
MemChunk const & castor3d::shader::PassMaterialShader::getMaterialChunk |
( |
| ) |
const |
|
inline |
◆ updateMaterial()
virtual C3D_API void castor3d::shader::PassMaterialShader::updateMaterial |
( |
sdw::Vec3 const & |
colour, |
|
|
sdw::Vec4 const & |
spcRgh, |
|
|
sdw::Vec4 const & |
colMtl, |
|
|
sdw::Vec4 const & |
crTsIr, |
|
|
sdw::Vec4 const & |
sheen, |
|
|
Material & |
material |
|
) |
| const |
|
inlinevirtual |
Met à jour le matériau depuis les valeurs nécessaires à l'éclairage (specular, metalness, roughness et colour).
- Paramètres
-
[in] | colour | La couleur du matériau. |
[out] | spcRgh | Specular (RGB) et la Roughness (A). |
[out] | colMtl | Colour (RGB) et la Metalness (A). |
[in] | crTsIr | Clearcoat Roughness (R), Transmission (G), Iridescence Factor (B) et Iridescence Thickness (A). |
[in] | sheen | Sheen Specular (RGB) et Sheen Roughness (A). |
[out] | material | Reçoit les valeurs nécessaires pour ce composant. |
Réimplémentée dans castor3d::ClearcoatComponent::MaterialShader, castor3d::IridescenceComponent::MaterialShader, castor3d::MetalnessComponent::MaterialShader, castor3d::RoughnessComponent::MaterialShader, castor3d::SpecularComponent::MaterialShader, castor3d::TransmissionComponent::MaterialShader, et castor3d::ColourComponent::MaterialShader.
La documentation de cette structure a été générée à partir du fichier suivant :