Navigation
| Name | MeshPartitionEditor |
| Type | Editor |
| Part of Plugins | Mesh Partition |
| Location | /Engine/Plugins/Experimental/MeshPartition/Source/MeshPartitionEditor/ |
| Module Build Rules | MeshPartitionEditor.Build.cs |
Classes
| Name | Remarks |
|---|---|
| AInteractiveSection | This is a transient actor, expressing an interactive part of a MegaMesh. |
| AModifierActor | |
| APreviewSection | This is a transient actor, expressing a “compiled” part of a MegaMesh. |
| FAsyncMeshInstanceData | |
| FChannelTextureRenderer | FMegaMeshChannelCollection contains functions and objects needed to build the rendering elements representing the masks and channels for the sections of the mega mesh Each base is assigned an Id in the collection allowing to reference and access other resources associated with it such as individual textures stored in the Texture collection |
| FDependencyContext | Collects all package and class dependencies, but does not do any hashing. |
| FDependencyHash | Hashes all the data, but does not collect any class or packages dependencies. |
| FHashArchive | Suggested hash method for computing modifier CacheKeys. |
| FHeightmapImporter | Imports a heightmap texture file as a new MegaMesh actor which is automatically partitioned along a grid where each tile will have the specified maximum number of vertices. |
| FMegaMeshGeneratorBase | This base class exists to share functionality related to actor unloading and packages when generating a multi-section Mega Mesh. |
| FMegaMeshRectangleGenerator | Class that generates a rectangular MegaMesh that has been partitioned into multiple underlying DynamicMeshes. |
| FMeshBuilder | Class used to Build FDynamicMesh3 + optional FDynamicMeshAABBTree3 from a build settings and modifier group. |
| FMeshPartitionEditorModule | |
| FMeshView | A constrained view of an FDynamicMesh3 which is provided to MegaMeshModifierComponents when they apply modifications. |
| FModifierGraphCache | |
| FModifierGroupRegistry | Registry for managing collections of modifier groups within mesh partition workflows. |
| FPassthroughBackgroundOp | An operation doing nothing. |
| FRectangleFalloffData | Helper for storing data used in multiple GetRectangleFalloffAlpha calls. |
| FRenderCaptureManager | |
| FSplineDelegateHelper | Helper that manages spline-change delegates (undo/redo, property, transform). |
| FWorldPartitionModifierComponentDesc | |
| TAsyncInitData | TAsyncInitData expands on TAsyncTransform but also holds a persistent reference to the input data. |
| TAsyncTransform | Utility class to transform some Input data into an Output data asynchronously. |
| UBooleanModifier | |
| UCodeReusableModifier | |
| UEditableModifierBase | A base class for modifiers that want to support direct editing via a tool target |
| UInstancedPatchModifier | Variant of the MeshPartition::UPatchModifier which supports multiple instances of the same parameter with different instance locations, to be used with PCG. |
| UInstancedProjectionModifier | 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. |
| UInstancedTexturePatchModifier | |
| ULatticeModifier | |
| ULevelInstanceAdapter | MeshPartition::ULevelInstanceAdapter is a MeshPartition::UModifierComponent that can be attached to a LevelInstance actor in the world to allow all UModifierComponents inside of that level instance to affect the same MegaMesh that the adapter is set to affect. |
| UMaterialExpressionMeshPartitionChannelSample | CoreMeshPartition expression allowing to sample one of the channels at a texcoord location |
| UMaterialExpressionMeshPartitionChannelSampleIndex | CoreMeshPartition expression allowing to sample one of the channels at a texcoord location |
| UMaterialExpressionMeshPartitionInspector | Helper material expression providing an easy channel inspector rendering |
| UMaterialExpressionMeshPartitionResource | CoreMeshPartition material expression providing access to the channel(s) texture resource |
| UMaterialExpressionMeshPartitionTexcoord | CoreMeshPartition material expression providing access to the channel texcoord at the fragment |
| UMeshBasedModifierBase | A helper base class for modifiers that want to use a mesh that a user sets using the detail panel. |
| UMeshPartitionEditorComponent | |
| UMeshPartitionEditorSubsystem | |
| UMeshPartitionEditorWorldSubsystem | |
| UMeshProjectModifier | |
| UMeshProviderModifier | This is a Base modifier aimed to be used on a MegaMesh. |
| UModifierActorFactory | |
| UModifierComponent | This is the base class for components modifying the MegaMesh. |
| UNoiseModifier | A simple modifier that will deform a MegaMesh by pulling all vertices within `Radius_ units to the same Z position of the patch component. |
| UPatchModifier | A simple modifier that will deform a MegaMesh by pulling all vertices within `Radius_ units to the same Z position of the patch component. |
| UPlatformCellTransformer | |
| UPreviewMeshComponent | |
| UProjectMeshLayersModifier | Modifier to manage layers of custom mesh detail, and project them onto a partitioned mesh |
| URemeshModifier | MegaMeshModifier that does local remeshing or tessellation. |
| URemeshModifierBase | Base class for modifiers that do Remeshing/Tessellation |
| URuntimeCellTransformer | |
| USimpleWriteModifier | Modifier intended to be used with PCG |
| USplineModifier | A flexible spline based modifier, suitable for representing ridgelines, channels, raised hills, and lowered depression pockets. |
| USplineRemeshModifier | A modifier that will remesh or tessellate all triangles within some distance to a spline |
| UStaticMeshPreviewComponent | Subclass of static mesh component in order to customize the hit proxy, which needs to be custom to allow our visualizer to customize click handling for preview components (to route selection to base sections). |
| UTexturePatchEntry | |
| UTexturePatchHeightEntry | |
| UTexturePatchModifier | A modifier that reads from a given texture and moves vertices in the megamesh in some "vertical" direction (where vertical is determined by the Z direction of this component). |
| UTexturePatchWeightEntry | |
| UWeightUtilityModifier | A simple modifier that will write a radial profile with falloff to a weight channel. |
| UWorldPartitionMeshPartitionBuilder | Example Command Line: ProjectName MapName -run=WorldPartitionBuilderCommandlet -SCCProvider=Perforce -Builder=WorldPartitionMeshPartitionBuilder. |
Structs
| Name | Remarks |
|---|---|
| FBaseGrowth | Struct describing how a modifier should grow the base so other modifiers can be taken into account when creating groups. |
| FBooleanModifierWeightEntry | Define weight channels to transfer from the boolean tool mesh. |
| FBuilderSettings | |
| FBuildPerfStats | |
| FBuildTask | Task / Result / Cache entry class for the MeshPartition::FMeshBuilder |
| FBuildTaskHandle | Handle on a TSharedPtr |
| FBuildVariantUpdater | This structure reflects the status of compiled sections on disk (registered in the asset registry), with respect to the desired set of groups in a CachedBuildVariant. |
| FCachedDescriptors | Stores all of the descriptors relevant to a specific AMeshPartition actor, as well as the FModifierGrouping for each build variant |
| FChannelCollectionUVLayoutOptions | |
| FCollisionTransformer | Mesh Partition Transformer producing and attaching a collision component for each transformer unit present in the execution context. |
| FCompiledSectionStatus | What is the state of the prebuilt compiled sections for a group |
| FDynamicSubmesh | Subclass of FDynamicSubmesh3 which allows remapping of the base mesh pointer. |
| FFarFieldTransformer | Mesh Partition Transformer producing and attaching a far field mesh for each transformer unit present in the execution context. |
| FFinalizeStaticMeshParams | Struct used to pass settings to FinalizeStaticMesh. |
| FGridCellEstimate | Estimated grid cell with its absolute world-space coordinate and bounding box. |
| FGridDimensions | Result of grid dimension computation: snapped origin + per-axis counts + per-axis extent. |
| FHeightmapImportParams | List of parameters for the MegaMesh Heightmap Importer. |
| FInstancedProjectionModifierInstance | Data needed for an instance of the mesh projection modifier. |
| FInstanceIndex | Typesafe wrapper for identifying and indexing modifier instances inside Modifier Groups |
| FInstanceInfo | Per-Instance modifier data. |
| FLODSettings | |
| FMegaMeshRectangleGeneratorParams | List of parameters for the MegaMesh Rectangle Generator. |
| FMeshPartitionTransformerSimplificationSettings | |
| FMeshPartitionUpdater | Captures the current state of a single mesh partition build variant, and manages what needs to be done to bring it up to date |
| FMeshPartitionWorldUpdater | Captures the current state of all mesh partitions in a world, and manages what needs to be done to bring the world up to date |
| FMeshSkirtSettings | |
| FMeshSkirtTransformer | Deprecated no-op transformer. |
| FModifierChangeInfo | |
| FModifierComponentInstanceData | Used to store un-serialized modifier component data during RerunConstructionScripts |
| FModifierDesc | Struct that can hold all of the ActorDesc properties for a mega mesh modifier (These are the properties that are available when the modifiers are not loaded into memory) |
| FModifierDescriptorCache | |
| FModifierGroup | |
| FModifierGrouping | |
| FModifierIndex | Typesafe wrapper for identifying and indexing modifier component data inside Modifier Groups |
| FOnChangedEventInfo | |
| FPerModifierBuildPerfStats | |
| FPIEPathFixer | Removes any PIE path mangling from an FSoftObjectPath, if any is present, returning the non-PIE / original path. |
| FPlaneProjectionLayoutOptions | Options specific to the PlaneProject UV layout method. |
| FPrepareCompiledSectionsParams | Parameters for PrepareCompiledSections. |
| FPreviewSectionBuildContext | Struct used to manage async preview section builds. |
| FPriorityLayerName | Version of FNameWrapper to use for priority layer names. |
| FRectangleGeneratorUtils | |
| FRVTTransformer | Mesh Partition Transformer binding the provided RVT to the sections present in the context. |
| FSculptLayerModifierWeightAttributeEntry | |
| FSectionChannels | |
| FSectionDomainMapping | |
| FSectionInfo | Information about generated sections within an axis-aligned grid. |
| FSeparateWorldBuilder | |
| FSimpleWriteModifier_ChannelValues | |
| FSplineModifierWeightEntry | Describes a single weight channel entry for a spline modifier. |
| FStaticMeshTransformer | Mesh Partition Transformer producing and attaching a static mesh component for each transformer unit present in the execution context. |
| FStatusSummary | Summary of the status of compiled sections and groups |
| FSubsectionTransformer | Mesh Partition Transformer producing multiple transformer units by splitting the meshdata contained in the pipeline transformer units. |
| FVEUVLayoutOptions | Options specific to the Volume-Encoded UV algorithm. |
| FWorldCachedDescriptors | Stores the FCachedDescriptors for all AMeshPartition actors in a world |
| FWPActorPropertiesTransformer | Mesh Partition Transformer setting up all relevant WP properties for sections being produced. |
| HPreviewProxy | Simple custom hitproxy similar to HActor, but inheriting from HComponentVisProxy to allow our visualizers to customize the click handling inside FComponentVisualizerManager::HandleProxyForComponentVis |
| TIndexIterator | |
| TIndexRange |
Interfaces
| Name | Remarks |
|---|---|
| IBaseMeshProviderOp | An object created by base sections to provide the base mesh when requested on background worker threads. |
| ICodeReusableModifier | A modifier that implements this interface may be reused by code that manages modifiers. |
| IModifierBackgroundOp | An object created by a modifier to apply its modifications on background worker threads. |
| IModifierResolver |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| FModifierFilterFunc | TFunction< bool(const MeshPartition::FBuilderSettings &, const MeshPartition::FModifierDesc &)> | MeshPartitionMeshBuilderCommon.h |
Enums
Public
| Name | Remarks |
|---|---|
| UE::MeshPartition::EBooleanInsideTestMethod | Method to use for determining what is 'inside' a mesh |
| UE::MeshPartition::EBooleanModifierChannelSourceMode | Copyright Epic Games, Inc. All Rights Reserved. |
| UE::MeshPartition::EBooleanOperation | CSG operation types |
| UE::MeshPartition::EBooleanToolMeshEmbedding | Options to account for geometry outside the local region of the Boolean modifier tool mesh. |
| UE::MeshPartition::EBuildType | Enum describing the type of usecase requesting a mesh build. |
| UE::MeshPartition::EChangeType | Copyright Epic Games, Inc. All Rights Reserved. |
| UE::MeshPartition::EChannelUVUnwrapQuality | Quality tier requested for the UV unwrap. Currently only used by the VolumeEncoded method. |
| UE::MeshPartition::EFBMMode | Copyright Epic Games, Inc. All Rights Reserved. |
| UE::MeshPartition::EFilterBoundsMode | Copyright Epic Games, Inc. All Rights Reserved. |
| UE::MeshPartition::EInteractiveSectionState | Copyright Epic Games, Inc. All Rights Reserved. |
| UE::MeshPartition::EMegaMeshBooleanModifierPreviewVisOptions | Copyright Epic Games, Inc. All Rights Reserved. |
| UE::MeshPartition::EMeshPartitionSimplificationMode | Selects which simplification inputs the user authors directly and which are derived. |
| UE::MeshPartition::EMeshSkirtDirectionMethod | Copyright Epic Games, Inc. All Rights Reserved. |
| UE::MeshPartition::EMeshViewComponents | Copyright Epic Games, Inc. All Rights Reserved. |
| UE::MeshPartition::EModifierMeshSourceMode | Copyright Epic Games, Inc. All Rights Reserved. |
| UE::MeshPartition::ENoiseModifierType | Copyright Epic Games, Inc. All Rights Reserved. |
| UE::MeshPartition::ENoiseParameterization | Copyright Epic Games, Inc. All Rights Reserved. |
| UE::MeshPartition::ERemeshModifierOperation | Copyright Epic Games, Inc. All Rights Reserved. |
| UE::MeshPartition::ESculptLayerProjectMethod | Copyright Epic Games, Inc. All Rights Reserved. |
| UE::MeshPartition::ESculptLayerSetWeightChannelMethod | Copyright Epic Games, Inc. All Rights Reserved. |
| UE::MeshPartition::ESplineModifierBlendMode | Copyright Epic Games, Inc. All Rights Reserved. |
| UE::MeshPartition::ESplineModifierInteriorSmoothMode | Copyright Epic Games, Inc. All Rights Reserved. |
| UE::MeshPartition::ESplineModifierWriteMode | Which outputs a spline modifier writes. |
| UE::MeshPartition::ESplineWeightBlendMode | How a spline modifier's weight channel value is combined with existing values. |
| UE::MeshPartition::ETexturePatchAlphaMode | Copyright Epic Games, Inc. All Rights Reserved. |
| UE::MeshPartition::ETexturePatchBlendMode | Copyright Epic Games, Inc. All Rights Reserved. |
| UE::MeshPartition::ETexturePatchFalloffMode | Copyright Epic Games, Inc. All Rights Reserved. |
| UE::MeshPartition::ETexturePatchTessellationErrorMode | Copyright Epic Games, Inc. All Rights Reserved. |
| UE::MeshPartition::ETexturePatchTessellationMode | Copyright Epic Games, Inc. All Rights Reserved. |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| Base | const FName | The base type represent all meshes forming the first layer to be processed. | MeshPartitionModifierComponent.h | |
| BaseGrowth | const FName | MeshPartitionModifierComponent.h | ||
| Class | const FName | MeshPartitionModifierComponent.h | ||
| Complexity | const FName | MeshPartitionModifierComponent.h | ||
| ComplexityMultiplier | const FName | MeshPartitionModifierComponent.h | ||
| IsContiguous | const FName | MeshPartitionModifierComponent.h | ||
| IsDisabled | const FName | MeshPartitionModifierComponent.h | ||
| MegaMeshGUID | const FName | MeshPartitionModifierComponent.h | ||
| MegaMeshModifierPath | const FName | MeshPartitionModifierComponent.h | ||
| MegaMeshModifiersNum | const FName | MeshPartitionModifierComponent.h | ||
| Priority | const FName | MeshPartitionModifierComponent.h | ||
| PropertiesVersionNumber | const uint32 | MeshPartitionModifierComponent.h | ||
| PropertiesVersionNumberName | const FName | MeshPartitionModifierComponent.h | ||
| Type | const FName | MeshPartitionModifierComponent.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
ENUM_RANGE_BY_COUNT
(
UE::MeshPartition::EMeshPartitionReuseMode |
ENUM_RANGE_BY_COUNT defines a symbol that needs to be declared in the global namespace. | WorldPartitionMeshPartitionBuilder.h | |
PREDECLARE_USE_GEOMETRY_CLASS
(
FDynamicMesh3 |
MeshPartitionEditorComponent.h | ||
PREDECLARE_USE_GEOMETRY_CLASS
(
FDynamicMesh3 |
MeshPartitionModifierComponent.h | ||
PREDECLARE_USE_GEOMETRY_CLASS
(
FDynamicMesh3 |
MeshPartitionPreviewSection.h | ||
PREDECLARE_USE_GEOMETRY_CLASS
(
FDynamicMesh3 |
Modifiers/MeshPartitionMeshProvider.h | ||
PREDECLARE_USE_GEOMETRY_CLASS
(
FDynamicMesh3 |
Modifiers/MeshPartitionSplineModifier.h | ||
PREDECLARE_USE_GEOMETRY_CLASS
(
FDynamicMeshOperator |
Modifiers/MeshPartitionSplineModifier.h | ||
int32 UE::MeshPartition::MaterialExpression::CompilePickChannelTexture
(
FMaterialCompiler* Compiler, |
MeshPartitionMaterialExpressionUtils.h | ||
bool UE::MeshPartition::operator!
(
EMeshViewComponents E |
MeshPartitionMeshView.h | ||
| Modifiers/MeshPartitionSplineModifier.h | |||
| MeshPartitionMeshView.h | |||
| Modifiers/MeshPartitionSplineModifier.h | |||
| MeshPartitionMeshView.h | |||
| Modifiers/MeshPartitionSplineModifier.h | |||
| MeshPartitionMeshView.h | |||
| Modifiers/MeshPartitionSplineModifier.h | |||
| MeshPartitionMeshView.h | |||
| Modifiers/MeshPartitionSplineModifier.h | |||
| MeshPartitionMeshView.h | |||
| Modifiers/MeshPartitionSplineModifier.h | |||
| MeshPartitionMeshView.h | |||
| Modifiers/MeshPartitionSplineModifier.h | |||
| MeshPartitionMeshView.h | |||
| Modifiers/MeshPartitionSplineModifier.h | |||
UE::MeshPartition::UENUM() |
WorldPartitionMeshPartitionBuilder.h |