Navigation
API > API/Plugins > API/Plugins/DynamicMaterialEditor > API/Plugins/DynamicMaterialEditor/Components
Inheritance Hierarchy
- UObject
- FNotifyHook
- UDMMaterialComponent
- UDMMaterialProperty
References
| Module | DynamicMaterialEditor |
| Header | /Engine/Plugins/Experimental/DynamicMaterial/Source/DynamicMaterialEditor/Public/Components/DMMaterialProperty.h |
| Include | #include "Components/DMMaterialProperty.h" |
Syntax
UCLASS (MinimalAPI, BlueprintType, ClassGroup="Material Designer",
Meta=(DisplayName="Material Designer Property"))
class UDMMaterialProperty : public UDMMaterialComponent
Remarks
Base Color, Specular, Opacity, etc
Variables
| Type | Name | Description | |
|---|---|---|---|
| bool | bEnabled | Whether this property is enabled. If it is not enabled, it will generate no expressions. | |
| TMap< FName, TObjectPtr< UDMMaterialComponent > > | Components | Components of this property. Not necessarily owned or controlled by this property. | |
| FDMMaterialStageConnection | InputConnectionMap | The map of expressions connected to this property's input node. | |
| EDMValueType | InputConnectorType | The value type used to connect to this property. | |
| EDMMaterialPropertyType | MaterialProperty | The property type of this property. | |
| TObjectPtr< UMaterialFunctionInterface > | OutputProcessor | An optional material function which is applied in between the property and its inputs. | |
| TObjectPtr< UMaterialFunctionInterface > | OutputProcessor_PreUpdate |
Constructors
| Type | Name | Description | |
|---|---|---|---|
UDMMaterialProperty
(
EDMMaterialPropertyType InMaterialProperty, |
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | AddAlphaMultiplier
(
const TSharedRef< FDMMaterialBuildState >& InBuildState |
Adds the alpha multiplier. | |
| UDMMaterialComponent * | AddComponent
(
FName InName, |
Adds a component to the component list. Sets component state to added. | |
| void | AddDefaultBaseStage
(
UDMMaterialLayerObject* InLayer |
Adds the default base stage for a layer in this property. | |
| void | AddDefaultMaskStage
(
UDMMaterialLayerObject* InLayer |
Adds the default mask stage for a layer in this property. | |
| void | AddOutputProcessor
(
const TSharedRef< FDMMaterialBuildState >& InBuildState |
Adds the output processor to the end of the current expression chain. | |
| UMaterialExpression * | CreateConstant
(
const TSharedRef< FDMMaterialBuildState >& InBuildState, |
||
| UMaterialExpression * | CreateConstant
(
const TSharedRef< FDMMaterialBuildState >& InBuildState, |
||
| UMaterialExpression * | CreateConstant
(
const TSharedRef< FDMMaterialBuildState >& InBuildState, |
||
| UMaterialExpression * | CreateConstant
(
const TSharedRef< FDMMaterialBuildState >& InBuildState, |
||
| UDMMaterialProperty * | CreateCustomMaterialPropertyDefaultSubobject
(
UDynamicMaterialModelEditorOnlyData* InModelEditorOnlyData, |
Craetes a material property as a default subobject of the EditorOnlyData object. | |
| void | GenerateExpressions
(
const TSharedRef< FDMMaterialBuildState >& InBuildState |
Generates the base expressions for this slot. | |
| void | GenerateOpacityExpressions
(
const TSharedRef< FDMMaterialBuildState >& InBuildState, |
Adds expressions to opacity properties based on color channel. | |
| void | GeneratePreviewMaterial
(
UMaterial* InPreviewMaterial |
Adds nodes to the given material based on this property's generated expressions. | |
| UDMMaterialComponent * | GetComponent
(
FName InName |
Fetches a component from the component list. | |
| UMaterialExpression * | GetDefaultInput
(
const TSharedRef< FDMMaterialBuildState >& InBuildState |
Generates a default input node for this property if the layer stack is empty. | |
| FText | The description of this property based on the EDMMaterialPropertyType enum. | ||
| const FDMMaterialStageConnection & | |||
| FDMMaterialStageConnection & | |||
| EDMValueType | |||
| UDynamicMaterialModelEditorOnlyData * | |||
| EDMMaterialPropertyType | |||
| UMaterialFunctionInterface * | The output process is an optional material function which is applied in between the property and its inputs. | ||
| TEnumAsByte< EMaterialSamplerType > | |||
| InClassName * | GetTypedComponent
(
FName InName |
||
| bool | HasComponent
(
FName InName |
Checks to see if a component with this name exists. | |
| bool | IsEnabled () |
||
| bool | Whether this property represents a material pin. | ||
| bool | IsValidForModel
(
UDynamicMaterialModelEditorOnlyData& InMaterialModel |
Check whether the current model settings are valid for this property. | |
| void | LoadDeprecatedModelData
(
UDMMaterialProperty* InOldProperty |
||
| void | Triggered when the output process is updated either through PostEditChangeProperty or via the setter. | ||
| void | OnSlotAdded
(
UDMMaterialSlot* InSlot |
Triggered when a slot is added to this property. Should create useful, default layer stack. | |
| void | PostEditChangeProperty
(
FPropertyChangedEvent& InPropertyChangedEvent |
||
| void | PreEditChange
(
FProperty* InPropertyAboutToChange |
||
| UDMMaterialComponent * | RemoveComponent
(
FName InName |
Removes the component from the component list. Sets component state to removed. | |
| void | Empty the connection map and recalculate the input types. | ||
| void | SetEnabled
(
bool bInEnabled |
||
| void | SetOutputProcessor
(
UMaterialFunctionInterface* InFunction |
The output process is an optional material function which is applied in between the property and its inputs. |
Overridden from UDMMaterialComponent
| Type | Name | Description | |
|---|---|---|---|
| FString | Returns the part of the component representing just this object | ||
| UDMMaterialComponent * | GetSubComponentByPath
(
FDMComponentPath& InPath, |
Searches the component for a specific component based on a path. | |
| void | Called when a component enters the Added state. | ||
| void | Called when a component enters the Removed state. | ||
| void | PostEditorDuplicate
(
UDynamicMaterialModel* InMaterialModel, |
Called to ensure that the object hierarchy is correct. | |
| void | Update
(
UDMMaterialComponent* InSource, |
Event that is triggered when this component, or a sub-component, changes to trigger other updates in the model. |
Constants
| Name | Description |
|---|---|
| ComponentsPathToken |