Navigation
API > API/Plugins > API/Plugins/GeometryScriptingEditor > API/Plugins/GeometryScriptingEditor/GeometryActors
Inheritance Hierarchy
- UObjectBase
- UObjectBaseUtility
- UObject
- AActor
- ADynamicMeshActor
- AGeneratedDynamicMeshActor
References
| Module | GeometryScriptingEditor |
| Header | /Engine/Plugins/Experimental/GeometryScripting/Source/GeometryScriptingEditor/Public/GeometryActors/GeneratedDynamicMeshActor.h |
| Include | #include "GeometryActors/GeneratedDynamicMeshActor.h" |
Syntax
UCLASS&40;&41;
class AGeneratedDynamicMeshActor : public ADynamicMeshActor
Remarks
AGeneratedDynamicMeshActor is an Editor-only subclass of ADynamicMeshActor that provides special support for dynamic procedural generation of meshes in the Editor, eg via Blueprints. Expensive procedural generation implemented via BP can potentially cause major problems in the Editor, in particular with interactive performance. AGeneratedDynamicMeshActor provides special infrastructure for this use case. Essentially, instead of doing procedural generation in the Construction Script, a BP-implementable event OnRebuildGeneratedMesh is available, and doing the procedural mesh regeneration when that function fires will generally provide better in-Editor interactive performance.
Variables
| Type | Name | Description | |
|---|---|---|---|
| FScopedSlowTask * | ActiveSlowTask | ||
| bool | bEnableRebuildProgress | Support for progress dialog display during OnRebuildGeneratedMesh. | |
| bool | bFrozen | If true, the DynamicMeshComponent will be "Frozen" in its current state, and automatic rebuilding will be disabled. | |
| bool | bGeneratedMeshRebuildPending | This internal flag is set in OnConstruction, and will cause ExecuteRebuildGeneratedMesh to fire the OnRebuildGeneratedMesh event, after which the flag will be cleared | |
| bool | bIsRegisteredWithGenerationManager | Indicates that this Actor is registered with the UEditorGeometryGenerationSubsystem, which is where the mesh rebuilds are executed | |
| bool | bResetOnRebuild | If true, the DynamicMeshComponent will be cleared before the OnRebuildGeneratedMesh event is executed. | |
| int32 | CurProgressAccumSteps | ||
| float | DialogDelay | Delay in seconds before the progress dialog is shown, if enabled | |
| int | NumProgressSteps | Number of progress steps/ticks that the progress bar will be subdivided into | |
| FString | ProgressMessage | The default progress message |
Constructors
| Type | Name | Description | |
|---|---|---|---|
AGeneratedDynamicMeshActor
(
const FObjectInitializer& ObjectInitializer |
Destructors
| Type | Name | Description | |
|---|---|---|---|
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | CopyPropertiesFromStaticMesh
(
AStaticMeshActor* StaticMeshActor, |
Attempt to copy Actor Properties from a StaticMeshActor. | |
| void | CopyPropertiesToStaticMesh
(
AStaticMeshActor* StaticMeshActor, |
Attempt to copy Actor Properties to a StaticMeshActor. | |
| void | This function will fire the OnRebuildGeneratedMesh event if the actor has been marked for a pending rebuild (eg via OnConstruction) | ||
| void | IncrementProgress
(
int NumSteps, |
Call this function from within OnRebuildGeneratedMesh to update progress tracking. | |
| void | MarkForMeshRebuild
(
bool bImmediate, |
Mark this Actor as modified so that OnRebuildGeneratedMesh runs | |
| void | OnRebuildGeneratedMesh
(
UDynamicMesh* TargetMesh |
This event will be fired to notify the BP that the generated Mesh should be rebuilt. | |
| void | |||
| void |
Overridden from AActor
| Type | Name | Description | |
|---|---|---|---|
| void | Destroyed () |
Called when this actor is explicitly being destroyed during gameplay or in the editor, not called during level streaming or gameplay ending | |
| void | OnConstruction
(
const FTransform& Transform |
Called when an instance of this class is placed (in editor) or spawned. | |
| void | Called when an actor is done spawning into the world (from UWorld::SpawnActor), both in the editor and during gameplay For actors with a root component, the location and rotation will have already been set. | ||
| void | Called after all currently registered components are cleared | ||
| void | These are called when Actor exists in a sublevel that is hidden/shown |
Overridden from UObject
| Type | Name | Description | |
|---|---|---|---|
| void | PostEditUndo () |
Called after applying a transaction to the object. | |
| void | PostLoad () |
Do any object-specific cleanup required immediately after loading an object. |