You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
- ADynamicMeshActor type has a UDynamicMeshComponent subobject (similar to StaticMeshActor) - Add IPersistentDynamicMeshSource, a ToolTarget Interface for accessing a UDynamicMesh - Add UDynamicMeshComponentToolTarget, a UToolTarget implementing the above as well as various standard interfaces, to allow Tools to operate on an external DynamicMeshComponent - Update UE::ToolTarget:: helper functions that get/commit via DynamicMesh to handle IPersistentDynamicMeshSource directly, instead of going via existing MeshDescription/DynamicMesh interfaces. Add UE::ToolTarget::SetSourceObjectVisible() helper function. - Add support for creating DynamicMeshActors in UCreateMeshObjectTypeProperties and UEditorModelingObjectsCreationAPI - register UDynamicMeshComponentToolTargetFactory in ModelingToolsEditorMode - Rename existing internal ADynamicMeshActor to AOldDynamicMeshActor. Does not appear to be in use and will be removed in a future CL. #rb lonnie.li #rnx #jira none #preflight 60d0effc367e6700014c2e89 [CL 16735093 by Ryan Schmidt in ue5-main branch]
54 lines
1.3 KiB
C++
54 lines
1.3 KiB
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
#include "UObject/Interface.h"
|
|
#include "InteractiveToolChange.h"
|
|
|
|
#include "DynamicMeshSource.generated.h"
|
|
|
|
class UDynamicMesh;
|
|
class UDynamicMeshComponent;
|
|
|
|
UINTERFACE()
|
|
class MODELINGCOMPONENTS_API UPersistentDynamicMeshSource : public UInterface
|
|
{
|
|
GENERATED_BODY()
|
|
};
|
|
|
|
class MODELINGCOMPONENTS_API IPersistentDynamicMeshSource
|
|
{
|
|
GENERATED_BODY()
|
|
|
|
public:
|
|
|
|
/**
|
|
* @return a UDynamicMesh for this source.
|
|
*/
|
|
virtual UDynamicMesh* GetDynamicMeshContainer() = 0;
|
|
|
|
/**
|
|
* Commit a change to the UDynamicMesh. The assumption here is that the Change has already been applied to
|
|
* the UDynamicMesh returned by GetDynamicMeshContainer(). This function is used by Tools to provide that
|
|
* change to higher levels for storage in undo systems/etc (eg the Editor Transaction system)
|
|
*/
|
|
virtual void CommitDynamicMeshChange(TUniquePtr<FToolCommandChange> Change, const FText& ChangeMessage) = 0;
|
|
|
|
//
|
|
// optional
|
|
//
|
|
|
|
/**
|
|
* @return true if the UDynamicMesh comes from a UDynamicMeshComponent (or subclass)
|
|
*/
|
|
virtual bool HasDynamicMeshComponent() const { return false; }
|
|
|
|
/**
|
|
* @return the UDynamicMeshComponent that owns the source UDynamicMesh, if available
|
|
*/
|
|
virtual UDynamicMeshComponent* GetDynamicMeshComponent() { return nullptr; }
|
|
|
|
|
|
};
|