Mirrors a parent Material's parameters, overriding only the values it sets.
More...
#include <material_instance.hpp>
|
|
| MaterialInstance (const toml::table &table, Handle< Schema > schema={}) |
| auto | type () const -> std::string_view override |
| auto | serialize (SaveMode mode) const -> std::vector< uint8_t > override |
| void | reload (const toml::table &table) override |
| | Re-parses the asset contents in place.
|
|
auto | parent () const -> const Handle< Material > & |
| | The parent material.
|
| auto | shaders () const -> const std::vector< Handle< Shader > > &override |
| auto | settings () const -> MaterialSettings override |
| auto | value (std::string_view key) const -> const DataValue *override |
| | Looks up a shader parameter value by name.
|
| auto | rootMaterial () -> Material *override |
| | The material owning the render pass, instances return their parent.
|
|
| Material (const toml::table &table, Handle< Schema > schema={}) |
|
auto | name () const -> std::string |
| | Display name of the material.
|
|
| Data (const toml::table &table, Handle< Schema > schema={}) |
|
| Data (const toml::table &table, Handle< Schema > schema, KeepAllKeysTag) |
| | Stores the schema handle for round-trip serialization but runs free-form buildRoot, keeping every TOML key.
|
|
auto | operator[] (std::string_view k) -> DataValue & |
|
auto | operator[] (std::string_view k) const -> const DataValue & |
|
auto | contains (std::string_view k) const -> bool |
|
auto | root () const -> const DataValue & |
|
auto | schema () const -> const Handle< Schema > & |
|
| Asset (const Asset &)=delete |
|
auto | operator= (const Asset &) -> Asset &=delete |
|
auto | refCount () const noexcept -> uint32_t |
|
|
static constexpr KeepAllKeysTag | keep_all_keys {} |
|
virtual void | onReloaded () |
|
void | addRef () noexcept |
|
void | release () noexcept |
|
DataValue | m_root |
| | Object DataValue holding all fields.
|
|
Handle< Schema > | m_schema |
| | optional
|
|
bool | m_keep_all_keys = false |
Mirrors a parent Material's parameters, overriding only the values it sets.
◆ reload()
| void assets::MaterialInstance::reload |
( |
const toml::table & | table | ) |
|
|
overridevirtual |
◆ rootMaterial()
| auto assets::MaterialInstance::rootMaterial |
( |
| ) |
-> Material * |
|
nodiscardoverridevirtual |
The material owning the render pass, instances return their parent.
Reimplemented from assets::Material.
◆ serialize()
| auto assets::MaterialInstance::serialize |
( |
SaveMode | mode | ) |
const -> std::vector< uint8_t > |
|
nodiscardoverridevirtual |
◆ settings()
◆ shaders()
| auto assets::MaterialInstance::shaders |
( |
| ) |
const -> const std::vector< Handle< Shader > > & |
|
nodiscardoverridevirtual |
◆ type()
| auto assets::MaterialInstance::type |
( |
| ) |
const -> std::string_view |
|
inlinenodiscardoverridevirtual |
◆ value()
| auto assets::MaterialInstance::value |
( |
std::string_view | key | ) |
const -> const DataValue * |
|
nodiscardoverridevirtual |
The documentation for this class was generated from the following files: