Open 3D Engine Atom Gem API Reference 23.10.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
AZ::RPI::MaterialVersionUpdate Class Reference

#include <MaterialVersionUpdate.h>

Classes

class  Action
 
class  MaterialPropertyValueWrapper
 

Public Types

using Actions = AZStd::vector< Action >
 

Public Member Functions

 AZ_TYPE_INFO (AZ::RPI::MaterialVersionUpdate, "{B36E7712-AED8-46AA-AFE0-01F8F884C44A}")
 
 MaterialVersionUpdate (uint32_t toVersion)
 
uint32_t GetVersion () const
 
void SetVersion (uint32_t toVersion)
 
const Actions & GetActions () const
 
void AddAction (const Action &action, AZStd::function< MaterialPropertyValue(const Name &, const MaterialPropertyValue &)> sourceDataResolver=nullptr)
 

Static Public Member Functions

static void Reflect (ReflectContext *context)
 

Friends

class MaterialVersionUpdates
 

Detailed Description

A MaterialVersionUpdate contains a list of actions that specify the operations that need to be performed on a MaterialAsset when updating it to MaterialType version 'toVersion' [cf. MaterialVersionUpdate(uint32_t toVersion) and GetVersion()], given that the MaterialAsset was based on a MaterialType one version below.

Member Function Documentation

◆ AddAction()

void AZ::RPI::MaterialVersionUpdate::AddAction ( const Action action,
AZStd::function< MaterialPropertyValue(const Name &, const MaterialPropertyValue &)>  sourceDataResolver = nullptr 
)

Add the given action. Optionally, sourceDataResolver may be given to resolve a MaterialPropertyValue from a source type into an asset-ready type (e.g. from an image filename string to an ImageAsset).


The documentation for this class was generated from the following file: