#include <MaterialFunctorSourceData.h>
Inherits AZStd::intrusive_base.
Inherited by AZ::RPI::LuaMaterialFunctorSourceData, AZ::Render::ConvertEmissiveUnitFunctorSourceData, AZ::Render::SubsurfaceTransmissionParameterFunctorSourceData, AZ::Render::Transform2DFunctorSourceData, and AZ::Render::UseTextureFunctorSourceData.
|
static void | Reflect (AZ::ReflectContext *context) |
|
|
class | JsonMaterialFunctorSourceDataSerializer |
|
This is an abstract base class for initializing MaterialFunctor objects. Material functors provide custom logic and calculations to configure shaders, render states, and more. See MaterialFunctor.h for details.
◆ FunctorResult
Creates a fully initialized MaterialFunctor object that is ready to be serialized to the cache. Override either or both, depending on where the functor should take place. The reason we provide two separate paths to create a functor is there could be different C++ build dependencies for the runtime vs editor functors. Otherwise it's fine to override both these functions and make them return the same MaterialFunctor. You could create one MaterialFunctor subclass that handles both runtime and editor processing. Or if there are performance or dependency reasons, create two separate MaterialFunctor subclasses for runtime and editor.
◆ GetAssetDependencies()
virtual AZStd::vector< AssetDependency > AZ::RPI::MaterialFunctorSourceData::GetAssetDependencies |
( |
| ) |
const |
|
inlinevirtual |
Returns a list of other assets that this functor depends on. Any change to one of these assets will trigger the .materialtype to rebuild.
Reimplemented in AZ::RPI::LuaMaterialFunctorSourceData.
◆ GetShaderOptionDependencies()
virtual AZStd::vector< AZ::Name > AZ::RPI::MaterialFunctorSourceData::GetShaderOptionDependencies |
( |
| ) |
const |
|
inlinevirtual |
The documentation for this class was generated from the following file:
- Gems/Atom/RPI/Code/Include/Atom/RPI.Edit/Material/MaterialFunctorSourceData.h