Skip to content

Kuesa::Serenity::MetallicRoughnessMaterial

#include <metallicroughnessmaterial.h>

Inherits from Kuesa::Serenity::GLTF2Material, Serenity::Material

Public Classes

Name
struct ClearCoatData
struct UboData

Public Functions

Name
MetallicRoughnessMaterial()
~MetallicRoughnessMaterial()
std::vector< uint8_t > uboData(uint32_t set, uint32_t binding) const

Protected Functions

Name
virtual void updateShader()
void handleTextureChanged(::Serenity::Texture * oldTex, ::Serenity::Texture * newTex, uint32_t binding)

Public Attributes

Name
KDBindings::Property< bool > metalRoughUsesTexCoord1
KDBindings::Property< bool > normalUsesTexCoord1
KDBindings::Property< bool > aoUsesTexCoord1
KDBindings::Property< bool > emissiveUsesTexCoord1
KDBindings::Property< float > metallicFactor
KDBindings::Property< float > roughnessFactor
KDBindings::Property< float > normalScale
KDBindings::Property< Color > emissiveFactor
KDBindings::Property<::Serenity::Texture * > metalRoughMap
KDBindings::Property<::Serenity::Texture * > normalMap
KDBindings::Property<::Serenity::Texture * > ambientOcclusionMap
KDBindings::Property<::Serenity::Texture * > emissiveMap
KDBindings::Property< bool > clearCoatTextureUsesTexCoord1
KDBindings::Property< bool > clearCoatNormalTextureUsesTexCoord1
KDBindings::Property< bool > clearCoatRoughnessTextureUsesTexCoord1
KDBindings::Property< float > clearCoatFactor
KDBindings::Property< float > clearCoatRoughnessFactor
KDBindings::Property<::Serenity::Texture * > clearCoatTexture
KDBindings::Property<::Serenity::Texture * > clearCoatNormalTexture
KDBindings::Property<::Serenity::Texture * > clearCoatRoughnessTexture

Additional inherited members

Public Types inherited from Kuesa::Serenity::GLTF2Material

Name
enum BlendMode { Opaque, Blend, Mask}
enum MeshType { Skybox, Background, Regular}
using std::shared_ptr<::Serenity::AnimationCallback > CallBackPtr
using std::function< CallBackPtr(GLTF2Material *)> CallBackGenerator
using std::pair< int, CallBackGenerator > ComponentCountAndGenerator

Public Functions inherited from Kuesa::Serenity::GLTF2Material

Name
~GLTF2Material()
virtual std::optional< ComponentCountAndGenerator > callBackAndComponentCountForPropertyName(const String & propertyName)
const MeshType meshType() const

Protected Functions inherited from Kuesa::Serenity::GLTF2Material

Name
GLTF2Material()

Public Attributes inherited from Kuesa::Serenity::GLTF2Material

Name
KDBindings::Property< bool > hasNormalAttribute
KDBindings::Property< bool > hasTangentAttribute
KDBindings::Property< bool > hasTexCoordAttribute
KDBindings::Property< bool > hasTexCoord1Attribute
KDBindings::Property< bool > hasColorAttribute
KDBindings::Property< bool > baseColorUsesTexCoord1
KDBindings::Property< Color > baseColorFactor
KDBindings::Property<::Serenity::Texture * > baseColorMap
KDBindings::Property< BlendMode > blendMode
KDBindings::Property< float > alphaCutOff

Protected Attributes inherited from Kuesa::Serenity::GLTF2Material

Name
MeshType m_meshType

Public Functions Documentation

function MetallicRoughnessMaterial

1
MetallicRoughnessMaterial()

function ~MetallicRoughnessMaterial

1
~MetallicRoughnessMaterial()

function uboData

1
2
3
4
std::vector< uint8_t > uboData(
    uint32_t set,
    uint32_t binding
) const

Protected Functions Documentation

function updateShader

1
virtual void updateShader()

function handleTextureChanged

1
2
3
4
5
void handleTextureChanged(
    ::Serenity::Texture * oldTex,
    ::Serenity::Texture * newTex,
    uint32_t binding
)

Public Attributes Documentation

variable metalRoughUsesTexCoord1

1
KDBindings::Property< bool > metalRoughUsesTexCoord1 { false };

variable normalUsesTexCoord1

1
KDBindings::Property< bool > normalUsesTexCoord1 { false };

variable aoUsesTexCoord1

1
KDBindings::Property< bool > aoUsesTexCoord1 { false };

variable emissiveUsesTexCoord1

1
KDBindings::Property< bool > emissiveUsesTexCoord1 { false };

variable metallicFactor

1
KDBindings::Property< float > metallicFactor { 0.0f };

variable roughnessFactor

1
KDBindings::Property< float > roughnessFactor { 0.0f };

variable normalScale

1
KDBindings::Property< float > normalScale { 1.0f };

variable emissiveFactor

1
KDBindings::Property< Color > emissiveFactor { { 0.0f, 0.0f, 0.0f, 0.0f } };

variable metalRoughMap

1
KDBindings::Property<::Serenity::Texture * > metalRoughMap { nullptr };

variable normalMap

1
KDBindings::Property<::Serenity::Texture * > normalMap { nullptr };

variable ambientOcclusionMap

1
KDBindings::Property<::Serenity::Texture * > ambientOcclusionMap { nullptr };

variable emissiveMap

1
KDBindings::Property<::Serenity::Texture * > emissiveMap { nullptr };

variable clearCoatTextureUsesTexCoord1

1
KDBindings::Property< bool > clearCoatTextureUsesTexCoord1 { false };

variable clearCoatNormalTextureUsesTexCoord1

1
KDBindings::Property< bool > clearCoatNormalTextureUsesTexCoord1 { false };

variable clearCoatRoughnessTextureUsesTexCoord1

1
KDBindings::Property< bool > clearCoatRoughnessTextureUsesTexCoord1 { false };

variable clearCoatFactor

1
KDBindings::Property< float > clearCoatFactor { 0.0f };

variable clearCoatRoughnessFactor

1
KDBindings::Property< float > clearCoatRoughnessFactor { 0.0f };

variable clearCoatTexture

1
KDBindings::Property<::Serenity::Texture * > clearCoatTexture { nullptr };

variable clearCoatNormalTexture

1
KDBindings::Property<::Serenity::Texture * > clearCoatNormalTexture { nullptr };

variable clearCoatRoughnessTexture

1
KDBindings::Property<::Serenity::Texture * > clearCoatRoughnessTexture { nullptr };

Updated on 2023-07-03 at 11:02:07 +0000