2019-12-27 09:26:59 -05:00
|
|
|
// Copyright Epic Games, Inc. All Rights Reserved.
|
2019-10-01 20:41:42 -04:00
|
|
|
|
|
|
|
|
using UnrealBuildTool;
|
|
|
|
|
|
2022-02-01 09:52:56 -05:00
|
|
|
public class MeshModelingToolsEditorOnlyExp : ModuleRules
|
2019-10-01 20:41:42 -04:00
|
|
|
{
|
2022-02-01 09:52:56 -05:00
|
|
|
public MeshModelingToolsEditorOnlyExp(ReadOnlyTargetRules Target) : base(Target)
|
2019-10-01 20:41:42 -04:00
|
|
|
{
|
|
|
|
|
PCHUsage = ModuleRules.PCHUsageMode.UseExplicitOrSharedPCHs;
|
2022-02-02 01:48:09 -05:00
|
|
|
|
2019-10-01 20:41:42 -04:00
|
|
|
PublicIncludePaths.AddRange(
|
2022-02-02 01:48:09 -05:00
|
|
|
new string[]
|
|
|
|
|
{
|
2019-10-01 20:41:42 -04:00
|
|
|
// ... add public include paths required here ...
|
|
|
|
|
}
|
2022-02-02 01:48:09 -05:00
|
|
|
);
|
|
|
|
|
|
2019-10-01 20:41:42 -04:00
|
|
|
PrivateIncludePaths.AddRange(
|
2022-02-02 01:48:09 -05:00
|
|
|
new string[]
|
|
|
|
|
{
|
2019-10-01 20:41:42 -04:00
|
|
|
// ... add other private include paths required here ...
|
|
|
|
|
}
|
2022-02-02 01:48:09 -05:00
|
|
|
);
|
|
|
|
|
|
2019-10-01 20:41:42 -04:00
|
|
|
PublicDependencyModuleNames.AddRange(
|
|
|
|
|
new string[]
|
|
|
|
|
{
|
|
|
|
|
"Core",
|
2022-02-02 01:48:09 -05:00
|
|
|
"InteractiveToolsFramework",
|
|
|
|
|
"MeshDescription",
|
2019-10-01 20:41:42 -04:00
|
|
|
"StaticMeshDescription",
|
2021-05-04 23:49:23 -04:00
|
|
|
"SkeletalMeshDescription",
|
2021-05-21 01:04:38 -04:00
|
|
|
"GeometryCore",
|
2021-06-22 12:11:21 -04:00
|
|
|
"GeometryFramework",
|
2019-10-01 20:41:42 -04:00
|
|
|
"DynamicMesh",
|
|
|
|
|
"MeshConversion",
|
2021-10-28 19:47:45 -04:00
|
|
|
"MeshModelingTools",
|
2021-07-29 20:08:48 -04:00
|
|
|
"MeshModelingToolsExp",
|
2019-10-01 20:41:42 -04:00
|
|
|
"ModelingComponents",
|
ModelingTools: add support for creating Volumes directly from DrawPolygon, DrawRevolve, DrawPolyPath, and AddPrimitive, CombineMeshes, CutMeshWithMesh, PlaneCut, BaseCreateFromSelected Tools. Improve support for Editing volumes, eg handling mesh/volume interactions, and add configurable auto-simplification for volumes to avoid painful Editor hangs.
- Move ToolTarget implementations, DynamicMeshToVolume to ModelingComponentsEditorOnly module
- move VolumeToDynamicMesh, DynamicMeshProvider/Commiter interfaces to ModelingComponents module
- Add UCreateMeshObjectTypeProperties property set to expose mesh/volume options
- Add FCreateMeshObjectParams::TypeHintClass to allow AVolume type (or other UClass hints) to be passed to creation APIs
- Add UE::ToolTarget::ConfigureCreateMeshObjectParams() util function in ModelingToolTargetUtil, tries to determine output type in a FCreateMeshObjectParams based on input ToolTarget
- Add UEditorModelingObjectsCreationAPI::CreateVolume() implementation
- Add UEditorModelingObjectsCreationAPI::FilterMaterials() that strips out any internal materials and replaces with WorldGridMaterial. This occurs when (eg) subtracting a Volume from a StaticMesh, because the temporary volume mesh gets assigned internal materials, but the Tools don't know this. Use in EditorModelingObjectsCreationAPI when creating new objects. UStaticMeshComponentToolTarget also does this filtering in ::CommitMaterialSetUpdate().
- Add ::ComponentTypeSupportsCollision() function to ComponentCollisionUtil, use to avoid checks/ensures for Volume targets
- Add support for automatic mesh simplification in DynamicMeshToVolume. Add CVar to VolumeDynamicMeshToolTarget.h to control max triangle count (default 500). Apply auto-simplify when creating or updating an AVolume. This prevents the Editor from blocking for long periods on meshes that are too high-res for volumes (even 500 is quite high).
- DynamicMeshToVolume now emits polygroup-faces that contain holes (ie multiple boundary loops) as a set of triangles, rather than emitting separate overlapping faces for each boundary loop
#rb none
#rnx
#jira none
#preflight 60ba50632c42ea0001cb54c5
[CL 16561742 by Ryan Schmidt in ue5-main branch]
2021-06-04 16:04:03 -04:00
|
|
|
"ModelingComponentsEditorOnly",
|
2019-10-01 20:41:42 -04:00
|
|
|
"ModelingOperators",
|
|
|
|
|
"ModelingOperatorsEditorOnly",
|
2023-06-06 12:28:59 -04:00
|
|
|
"SkeletalMeshUtilitiesCommon",
|
|
|
|
|
"SkeletalMeshModifiers"
|
2019-10-01 20:41:42 -04:00
|
|
|
// ... add other public dependencies that you statically link with here ...
|
|
|
|
|
}
|
2022-02-02 01:48:09 -05:00
|
|
|
);
|
|
|
|
|
|
2019-10-01 20:41:42 -04:00
|
|
|
PrivateDependencyModuleNames.AddRange(
|
|
|
|
|
new string[]
|
|
|
|
|
{
|
2021-08-16 07:51:37 -04:00
|
|
|
"BSPUtils",
|
2019-10-01 20:41:42 -04:00
|
|
|
"CoreUObject",
|
|
|
|
|
"Engine",
|
2022-02-02 01:48:09 -05:00
|
|
|
"RenderCore",
|
2019-10-01 20:41:42 -04:00
|
|
|
"InputCore",
|
|
|
|
|
"UnrealEd",
|
2024-04-19 17:50:40 -04:00
|
|
|
"Persona",
|
|
|
|
|
"AdvancedPreviewScene"
|
2019-10-01 20:41:42 -04:00
|
|
|
// ... add private dependencies that you statically link with here ...
|
|
|
|
|
}
|
2022-02-02 01:48:09 -05:00
|
|
|
);
|
2021-07-15 19:06:07 -04:00
|
|
|
|
2019-10-01 20:41:42 -04:00
|
|
|
DynamicallyLoadedModuleNames.AddRange(
|
|
|
|
|
new string[]
|
|
|
|
|
{
|
|
|
|
|
// ... add any modules that your module loads dynamically here ...
|
|
|
|
|
}
|
2022-02-02 01:48:09 -05:00
|
|
|
);
|
2019-10-01 20:41:42 -04:00
|
|
|
}
|
2022-02-02 01:48:09 -05:00
|
|
|
}
|