Files
UnrealEngineUWP/Engine/Plugins/Runtime/MeshModelingToolset/Source/ModelingComponents/Public/ModelingComponentsSettings.h
michael balzer a49c74b915 MeshModelingToolset: Move ModelingOperators and ModelingOperatorsEditorOnly modules out of experimental plugin
#jira UETOOL-3823
#rb lonnie.li
#preflight 617b1aea5794a500014f544a

#ROBOMERGE-AUTHOR: michael.balzer
#ROBOMERGE-SOURCE: CL 17972239 in //UE5/Release-5.0/... via CL 17972248
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v885-17909292)
#ROBOMERGE[STARSHIP]: UE5-Main

[CL 17972256 by michael balzer in ue5-release-engine-test branch]
2021-10-28 19:47:45 -04:00

60 lines
2.1 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "Engine/DeveloperSettings.h"
#include "BodySetupEnums.h"
#include "ModelingComponentsSettings.generated.h"
/**
* Settings for the Modeling Components plug-in. These settings are primarily used to configure two things:
* - Behavior of things like optional Rendering features inside Modeling Tools, eg for edit-preview rendering
* - Setup of New Mesh Objects emitted by Modeling Tools (eg their default collision settings, etc)
*/
UCLASS(config=EditorPerProjectUserSettings)
class MODELINGCOMPONENTS_API UModelingComponentsSettings : public UDeveloperSettings
{
GENERATED_BODY()
public:
// UDeveloperSettings overrides
virtual FName GetContainerName() const { return FName("Project"); }
virtual FName GetCategoryName() const { return FName("Plugins"); }
virtual FName GetSectionName() const { return FName("Modeling Mode Tools"); }
#if WITH_EDITOR
virtual FText GetSectionText() const override;
virtual FText GetSectionDescription() const override;
#endif
public:
//
// Rendering settings applied to Preview Components used during live mesh editing
//
/** Enable Realtime Raytracing support for Mesh Editing Tools. This will impact performance of Tools with Real-Time feedback like 3D Sculpting. */
UPROPERTY(config, EditAnywhere, Category = "Modeling Tools|Rendering")
bool bEnableRayTracingWhileEditing = false;
//
// New Mesh Object settings, for new meshes/assets emitted by Modeling Tools
//
/** Enable Raytracing Support for new Mesh Objects created by Modeling Tools, if support is optional (eg DynamicMeshActors) */
UPROPERTY(config, EditAnywhere, Category = "Modeling Tools|New Mesh Objects")
bool bEnableRayTracing = false;
/** Enable Collision Support for new Mesh Objects created by Modeling Tools */
UPROPERTY(config, EditAnywhere, Category = "Modeling Tools|New Mesh Objects")
bool bEnableCollision = true;
/** Default Collision Mode set on new Mesh Objects created by Modeling Tools */
UPROPERTY(config, EditAnywhere, Category = "Modeling Tools|New Mesh Objects")
TEnumAsByte<enum ECollisionTraceFlag> CollisionMode = ECollisionTraceFlag::CTF_UseComplexAsSimple;
};