Navigation
API > API/Plugins > API/Plugins/DynamicMaterialEditor > API/Plugins/DynamicMaterialEditor/Model
Inheritance Hierarchy
- UObject
- IDynamicMaterialModelEditorOnlyDataInterface
- FNotifyHook
- IDMBuildable
- UDynamicMaterialModelEditorOnlyData
References
| Module | DynamicMaterialEditor |
| Header | /Engine/Plugins/Experimental/DynamicMaterial/Source/DynamicMaterialEditor/Public/Model/DynamicMaterialModelEditorOnlyData.h |
| Include | #include "Model/DynamicMaterialModelEditorOnlyData.h" |
Syntax
UCLASS (MinimalAPI, BlueprintType, EditInlineNew, DefaultToInstanced,
ClassGroup="Material Designer")
class UDynamicMaterialModelEditorOnlyData :
public UObject,
public IDynamicMaterialModelEditorOnlyDataInterface ,
public FNotifyHook,
public IDMBuildable
Variables
| Type | Name | Description | |
|---|---|---|---|
| TObjectPtr< UDMMaterialProperty > | AmbientOcclusion | ||
| TObjectPtr< UDMMaterialProperty > | Anisotropy | ||
| TObjectPtr< UDMMaterialProperty > | BaseColor | ||
| bool | bCreateMaterialPackage | ||
| bool | bHasPixelAnimation | Whether the opaque material has any pixel animations happening, that isn't included in the geometric velocities. | |
| bool | bNaniteTessellationEnabled | Whether tessellation is enabled on the material. NOTE: Required for displacement to work. | |
| bool | bOutputTranslucentVelocityEnabled | When true, translucent materials will output motion vectors and write to depth buffer in velocity pass. | |
| bool | bResponsiveAAEnabled | Indicates that the material should be rendered using responsive anti-aliasing. | |
| bool | bTwoSided | Indicates that the material should be rendered without backface culling and the normal should be flipped for backfaces. | |
| TObjectPtr< UDMMaterialProperty > | Custom1 | ||
| TObjectPtr< UDMMaterialProperty > | Custom2 | ||
| TObjectPtr< UDMMaterialProperty > | Custom3 | ||
| TObjectPtr< UDMMaterialProperty > | Custom4 | ||
| TObjectPtr< UDMMaterialProperty > | Displacement | ||
| TObjectPtr< UDMMaterialProperty > | EmissiveColor | ||
| TArray< TObjectPtr< UMaterialExpression > > | Expressions | ||
| TObjectPtr< UDynamicMaterialModel > | MaterialModel | ||
| FMaterialStatistics | MaterialStats | ||
| meta | |||
| TObjectPtr< UDMMaterialProperty > | Metallic | ||
| TObjectPtr< UDMMaterialProperty > | Normal | ||
| FDMOnMaterialBuilt | OnMaterialBuiltDelegate | ||
| FDMOnPropertyUpdated | OnPropertyUpdateDelegate | ||
| FDMOnSlotListUpdated | OnSlotListUpdateDelegate | ||
| FDMOnValueListUpdated | OnValueListUpdateDelegate | ||
| TObjectPtr< UDMMaterialProperty > | Opacity | ||
| TObjectPtr< UDMMaterialProperty > | OpacityMask | ||
| TObjectPtr< UDMMaterialProperty > | PixelDepthOffset | ||
| TMap< EDMMaterialPropertyType, TObjectPtr< UDMMaterialSlot > > | PropertySlotMap | ||
| TObjectPtr< UDMMaterialProperty > | Refraction | ||
| TObjectPtr< UDMMaterialProperty > | Roughness | ||
| EDMMaterialShadingModel | ShadingModel | ||
| TArray< TObjectPtr< UDMMaterialSlot > > | Slots | ||
| TObjectPtr< UDMMaterialProperty > | Specular | ||
| EDMState | State | ||
| TObjectPtr< UDMMaterialProperty > | SubsurfaceColor | ||
| TObjectPtr< UDMMaterialProperty > | SurfaceThickness | ||
| TObjectPtr< UDMMaterialProperty > | Tangent | ||
| TObjectPtr< UDMMaterialProperty > | WorldPositionOffset |
Constructors
| Type | Name | Description | |
|---|---|---|---|
Functions
| Type | Name | Description | |
|---|---|---|---|
| UDMMaterialSlot * | AddSlot () |
Adds the next available slot. Highly recommended to use AddSlotForMaterialProperty(PropertyType). | |
| UDMMaterialSlot * | |||
| bool | AddTextureSet
(
UDMTextureSet* InTextureSet, |
Integrates a Texture Set with the model. | |
| void | AssignMaterialPropertyToSlot
(
EDMMaterialPropertyType InProperty, |
||
| void | |||
| void | BuildMaterial
(
bool bInDirtyAssets |
||
| TSharedRef< FDMMaterialBuildState > | CreateBuildState
(
UMaterial* InMaterialToBuild, |
||
| TSharedRef< IDMMaterialBuildStateInterface > | CreateBuildStateInterface
(
UMaterial* InMaterialToBuild |
||
| void | |||
| void | DoBuild_Implementation
(
bool bInDirtyAssets |
||
| void | EnsureSwapSlotMaterialProperty
(
EDMMaterialPropertyType InPropertyFrom, |
Swaps the material properties from one slot to another, unless both slots exist and/or are the same. | |
| UDynamicMaterialModelEditorOnlyData * | Get
(
UDynamicMaterialModel* InModel |
||
| UDynamicMaterialModelEditorOnlyData * | Get
(
const TWeakObjectPtr< UDynamicMaterialModel >& InModelWeak |
||
| UDynamicMaterialModelEditorOnlyData * | Get
(
const TScriptInterface< IDynamicMaterialModelEditorOnlyDataInterface >& InInterface |
||
| UDynamicMaterialModelEditorOnlyData * | Get
(
IDynamicMaterialModelEditorOnlyDataInterface* InInterface |
||
| UDynamicMaterialModelEditorOnlyData * | Get
(
UDynamicMaterialInstance* InInstance |
||
| UDynamicMaterialModelEditorOnlyData * | Get
(
const TWeakObjectPtr< UDynamicMaterialModelBase >& InModelBaseWeak |
||
| UDynamicMaterialModelEditorOnlyData * | Get
(
UDynamicMaterialModelBase* InModelBase |
||
| TEnumAsByte< EBlendMode > | GetBlendMode () |
||
| TEnumAsByte< EMaterialDomain > | GetDomain () |
||
| UMaterial * | |||
| bool | |||
| bool | |||
| FString | |||
| FString | |||
| UDynamicMaterialModel * | |||
| FString | GetMaterialPackageName
(
const FString& InMaterialBaseName |
||
| TMap< EDMMaterialPropertyType, UDMMaterialProperty * > | |||
| TArray< EDMMaterialPropertyType > | GetMaterialPropertiesForSlot
(
const UDMMaterialSlot* InSlot |
||
| UDMMaterialProperty * | GetMaterialProperty
(
EDMMaterialPropertyType InMaterialProperty |
||
| const FMaterialStatistics & | |||
| FDMOnMaterialBuilt::RegistrationType & | |||
| FDMOnPropertyUpdated::RegistrationType & | |||
| FDMOnSlotListUpdated::RegistrationType & | |||
| FDMOnValueListUpdated::RegistrationType & | |||
| EDMMaterialShadingModel | |||
| UDMMaterialSlot * | Gets slot by index. Highly recommended to use GetSlotForMaterialProperty(PropertyType). | ||
| UDMMaterialSlot * | Same as the above method, but will only return the slot if the material property is enabled. | ||
| UDMMaterialSlot * | |||
| const TArray< UDMMaterialSlot * > & | GetSlots () |
||
| EDMState | GetState () |
||
| void | Initialize () |
||
| bool | |||
| bool | |||
| bool | |||
| bool | NeedsWizard () |
||
| void | NotifyPostChange
(
const FPropertyChangedEvent& InPropertyChangedEvent, |
||
| void | |||
| void | |||
| void | |||
| void | OnPropertyUpdate
(
UDMMaterialProperty* InProperty |
||
| void | |||
| void | OnSlotConnectorsUpdated
(
UDMMaterialSlot* InSlot |
||
| void | |||
| void | |||
| void | PostDuplicate
(
bool bInDuplicateForPIE |
||
| void | PostEditChangeChainProperty
(
FPropertyChangedChainEvent& InPropertyChangedEvent |
||
| void | |||
| void | PostEditUndo () |
||
| void | PostLoad () |
||
| UDMMaterialSlot * | RemoveSlot
(
int32 Index |
Removes the next slot by index. | |
| UDMMaterialSlot * | |||
| void | RequestMaterialBuild
(
bool bInImmediate |
||
| void | SaveEditor () |
||
| void | SetBlendMode
(
TEnumAsByte< EBlendMode > InBlendMode |
||
| void | SetChannelListPreset
(
FName InPresetName |
||
| void | SetDomain
(
TEnumAsByte< EMaterialDomain > InDomain |
||
| void | SetHasPixelAnimation
(
bool bInHasAnimation |
||
| void | SetIsTwoSided
(
bool bInEnabled |
||
| void | SetNaniteTessellationEnabled
(
bool bInEnabled |
||
| void | SetOutputTranslucentVelocityEnabled
(
bool bInEnabled |
||
| void | SetResponsiveAAEnabled
(
bool bInEnabled |
||
| void | SetShadingModel
(
EDMMaterialShadingModel InShadingModel |
||
| void | SwapSlotMaterialProperty
(
EDMMaterialPropertyType InPropertyFrom, |
Swaps the material properties from one slot to another, unless both slots exist and/or are the same. | |
| void | UnassignMaterialProperty
(
EDMMaterialPropertyType InProperty |
Overridden from IDynamicMaterialModelEditorOnlyDataInterface
| Type | Name | Description | |
|---|---|---|---|
| UDMMaterialComponent * | GetSubComponentByPath
(
FDMComponentPath& InPath, |
Searches the model editor only data for a specific component based on a path. | |
| UDMMaterialComponent * | GetSubComponentByPath
(
FDMComponentPath& InPath |
Searches the model editor only data for a specific component based on a path. | |
| void | OnTextureUVUpdated
(
UDMTextureUV* InTextureUV |
Called when a texture uv is updated. | |
| void | Called when a value is added or removed. | ||
| void | OnValueUpdated
(
UDMMaterialValue* InValue, |
Called when a value is updated. | |
| void | Called to ensure that the object hierarchy is correct. | ||
| void | Called to ensure that all editor only data is correctly initialized. | ||
| void | SetPropertyComponent
(
EDMMaterialPropertyType InPropertyType, |
Called when the model needs to have the material rebuild. |