Navigation
API > API/Plugins > API/Plugins/MeshPartitionEditor
Modifier that takes meshes and projects the megamesh to them, capable of holding multiple projection instances at once so that a new component doesn't have to be created for each one in PCG.
| Name | UInstancedProjectionModifier |
| Type | class |
| Header File | /Engine/Plugins/Experimental/MeshPartition/Source/MeshPartitionEditor/Public/Modifiers/MeshPartitionInstancedProjectionModifier.h |
| Include Path | #include "Modifiers/MeshPartitionInstancedProjectionModifier.h" |
Syntax
UCLASS (MinimalAPI, prioritizeCategories=("Modifier", "Settings"))
class UInstancedProjectionModifier :
public UE::MeshPartition::UModifierComponent ,
public UE::MeshPartition::ICodeReusableModifier
Inheritance Hierarchy
- FRenderAssetOwnerStreamingState → UPrimitiveComponent → UModifierComponent → UInstancedProjectionModifier
- UObjectBase → UObjectBaseUtility → UObject → UActorComponent → USceneComponent → UPrimitiveComponent → UModifierComponent → UInstancedProjectionModifier
Implements Interfaces
- IAsyncPhysicsStateProcessor
- IInterface_AssetUserData
- IInterface_AsyncCompilation
- INavRelevantInterface
- IPhysicsBodyInstanceOwner
- IPhysicsBodyInstanceOwnerResolver
- IPhysicsComponent
- IModifierBlueprintInterface
- ICodeReusableModifier
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
UInstancedProjectionModifier() |
Modifiers/MeshPartitionInstancedProjectionModifier.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bDisabledByCode | bool | See ICodeReusableModifier::SetDisabledByCode. | Modifiers/MeshPartitionInstancedProjectionModifier.h | |
| bDrawAffectedBox | bool | Modifiers/MeshPartitionInstancedProjectionModifier.h |
|
|
| bDrawGlobalBounds | bool | Modifiers/MeshPartitionInstancedProjectionModifier.h |
|
|
| BlendMode | MeshPartition::EProjectModifierBlendMode | Modifiers/MeshPartitionInstancedProjectionModifier.h |
|
|
| HeightFalloff | MeshPartition::FProjectModifierFalloffSettings | Modifiers/MeshPartitionInstancedProjectionModifier.h |
|
|
| Instances | TArray< MeshPartition::FInstancedProjectionModifierInstance > | Modifiers/MeshPartitionInstancedProjectionModifier.h |
|
|
| MeshSpatials | TMap< const UDynamicMesh *, TSharedPtr< const Geometry::FDynamicMeshAABBTree3 > > | Modifiers/MeshPartitionInstancedProjectionModifier.h | ||
| SourceMeshToInstanceMesh | TMap< const UDynamicMesh *, TWeakObjectPtr< UDynamicMesh > > | Updated by GetOrCreateMeshCopy. | Modifiers/MeshPartitionInstancedProjectionModifier.h | |
| ThreadSafeMeshCopies | TMap< const UDynamicMesh *, TSharedPtr< const Geometry::FDynamicMesh3 > > | Updated by CreateCachedData. Key is our own copy of a mesh. | Modifiers/MeshPartitionInstancedProjectionModifier.h | |
| WeightChannels | TArray< FProjectModifierWeightEntry > | Modifiers/MeshPartitionInstancedProjectionModifier.h |
|
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void AddInstance
(
const MeshPartition::FInstancedProjectionModifierInstance& NewInstance, |
Modifiers/MeshPartitionInstancedProjectionModifier.h | ||
void ClearInstances() |
Modifiers/MeshPartitionInstancedProjectionModifier.h | ||
const MeshPartition::FInstancedProjectionModifierInstance * GetInstanceAtIndex
(
int32 Index |
Modifiers/MeshPartitionInstancedProjectionModifier.h | ||
int32 NumInstances() |
Modifiers/MeshPartitionInstancedProjectionModifier.h |
Public Virtual
Overridden from UModifierComponent
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual TArray< FBox > ComputeBounds () |
Computes the set of bounding boxes describing the regions this modifier is affecting. | Modifiers/MeshPartitionInstancedProjectionModifier.h | |
virtual TSharedPtr< const MeshPartition::IModifierBackgroundOp > CreateBackgroundOp
(
const MeshPartition::EBuildType InBuildType |
Called to prepare for applying the modifier. | Modifiers/MeshPartitionInstancedProjectionModifier.h | |
virtual void DrawVisualization
(
const FSceneView* View, |
Called by the visualizer to give the modifier an oppertunity to render a debug visualization of itself when selected. | Modifiers/MeshPartitionInstancedProjectionModifier.h | |
virtual FGuid GetCodeVersionKey() |
Modifiers/MeshPartitionInstancedProjectionModifier.h | ||
virtual void InitializeModifier() |
MeshPartition::UModifierComponent. | Modifiers/MeshPartitionInstancedProjectionModifier.h | |
virtual bool IsTemporarilyDisabledInEditor () |
Returns true if the modifier is temporarily disabled from being processed in any MegaMesh builds. | Modifiers/MeshPartitionInstancedProjectionModifier.h | |
virtual void UninitializeModifier() |
Called before a modifier will be unloaded and unregistered in case it need resource cleaning. | Modifiers/MeshPartitionInstancedProjectionModifier.h |
Overridden from UObject
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void PostEditChangeChainProperty
(
FPropertyChangedChainEvent& PropertyChangedEvent |
Modifiers/MeshPartitionInstancedProjectionModifier.h | ||
virtual void PreEditChange
(
FEditPropertyChain& PropertyAboutToChange |
Modifiers/MeshPartitionInstancedProjectionModifier.h | ||
virtual void Serialize
(
FArchive& Ar |
UObject. | Modifiers/MeshPartitionInstancedProjectionModifier.h |
Overridden from ICodeReusableModifier
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual bool IsUsed() |
Can be called to determine whether this reusable modifier ended up actually being used, so that it can be cleaned up by its managing system if not. | Modifiers/MeshPartitionInstancedProjectionModifier.h | |
virtual void ResetForReuse() |
Called to prep the modifier for reinitializing with entirely different data. | Modifiers/MeshPartitionInstancedProjectionModifier.h | |
virtual void SetDisabledByCode
(
bool bDisabledByCode |
ICodeReusableModifier. | Modifiers/MeshPartitionInstancedProjectionModifier.h |