MaterialShaderProperties.ixx File
Default material properties used by materials and instances. More...
Included Headers
#include <helios.rendering.shader.UniformSemantics>
#include <helios.rendering.shader.UniformValueMap>
#include <helios.math.types>
#include <helios.rendering.material.MaterialShaderPropertiesOverride>
Namespaces Index
| namespace | helios |
| namespace | rendering |
|
Graphics rendering infrastructure. More... | |
| namespace | material |
Classes Index
| class | MaterialShaderProperties |
|
Represents a Value Object for an immutable set of material properties. More... | |
Description
Default material properties used by materials and instances.
File Listing
The file content with the documentation metadata removed is:
15export namespace helios::rendering::material {
27 class MaterialShaderProperties {
36 * @see https://docs.omniverse.nvidia.com/materials-and-rendering/latest/templates/parameters/OmniPBR_Albedo.html
38 const helios::math::vec4f baseColor_ = {1.0f, 1.0f, 1.0f, 1.0f};
43 * This value determines the microfacet distribution of the surface, influencing how light is reflected.
57 ~MaterialShaderProperties() = default;
64 MaterialShaderProperties() = default;
72 explicit MaterialShaderProperties(
73 helios::math::vec4f baseColor,
81 * This method returns a new MaterialShaderProperties instance where only the base color has been changed to the
88 [[nodiscard]] MaterialShaderProperties withBaseColor(helios::math::vec4f baseColor) const noexcept {
89 return MaterialShaderProperties(
105 [[nodiscard]] MaterialShaderPropertiesOverride overrideBaseColor(helios::math::vec4f baseColor) const noexcept {
106 return MaterialShaderPropertiesOverride(
115 * This method returns a new MaterialShaderProperties instance where only the roughness factor has been changed to the
120 * @return A new immutable instance of MaterialShaderProperties with the updated roughness factor.
122 [[nodiscard]] MaterialShaderProperties withRoughness(float roughness) const noexcept {
123 return MaterialShaderProperties(
135 void writeUniformValues(shader::UniformValueMap& uniformValueMap) const noexcept {
136 uniformValueMap.set(helios::rendering::shader::UniformSemantics::MaterialBaseColor, baseColor_);
137 uniformValueMap.set(helios::rendering::shader::UniformSemantics::MaterialRoughness, roughness_);
Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.15.0.