gradientspace / UnrealMeshProcessingTools

Sample Projects/Plugins for Mesh Processing in Unreal Engine
MIT License
249 stars 72 forks source link

Trying to Simplify/Solidify a DynamicPMCActor Crashes Engine #7

Open DrDungeonMaster opened 2 years ago

DrDungeonMaster commented 2 years ago

After applying a number of boolean operations to a DynamicPMCActor, it may be desirable to simplify the mesh for performance. However, while the SMC and SDMC actors both work fine, using Simplify or Solidify on a PMC immediately crashes the editor. The simplify option says that it is valid on any kind of Dynamic Mesh Actor, but that is clearly not the case for PMCs. Is this a fundamental limitation of the mesh type, or just a bug that could potentially be fixed?

Error output, after using the 'Solidify' button-box on a PMC sphere:

Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x0000000000001ff4

UE4Editor_RuntimeGeometryUtils!TDynamicMeshVectorOverlay<float,3,FVector3 >::GetTriElements() [E:\Epic Games\UE_4.27-Bin\Engine\Plugins\Experimental\GeometryProcessing\Source\DynamicMesh\Public\DynamicMeshOverlay.h:531] UE4Editor_RuntimeGeometryUtils!RTGUtils::UpdatePMCFromDynamicMesh_SplitTriangles() [E:\Epic Games\UnrealMeshProcessingTools\UE4.26\RuntimeGeometryDemo 4.27 - 2\Plugins\RuntimeGeometryUtils\Source\RuntimeGeometryUtils\Private\MeshComponentRuntimeUtils.cpp:115] UE4Editor_RuntimeGeometryUtils!ADynamicPMCActor::UpdatePMCMesh() [E:\Epic Games\UnrealMeshProcessingTools\UE4.26\RuntimeGeometryDemo 4.27 - 2\Plugins\RuntimeGeometryUtils\Source\RuntimeGeometryUtils\Private\DynamicPMCActor.cpp:52] UE4Editor_RuntimeGeometryUtils!ADynamicPMCActor::OnMeshEditedInternal() [E:\Epic Games\UnrealMeshProcessingTools\UE4.26\RuntimeGeometryDemo 4.27 - 2\Plugins\RuntimeGeometryUtils\Source\RuntimeGeometryUtils\Private\DynamicPMCActor.cpp:29] UE4Editor_RuntimeGeometryUtils!ADynamicMeshBaseActor::EditMesh() [E:\Epic Games\UnrealMeshProcessingTools\UE4.26\RuntimeGeometryDemo 4.27 - 2\Plugins\RuntimeGeometryUtils\Source\RuntimeGeometryUtils\Private\DynamicMeshBaseActor.cpp:86] UE4Editor_RuntimeGeometryUtils!ADynamicMeshBaseActor::SolidifyMesh() [E:\Epic Games\UnrealMeshProcessingTools\UE4.26\RuntimeGeometryDemo 4.27 - 2\Plugins\RuntimeGeometryUtils\Source\RuntimeGeometryUtils\Private\DynamicMeshBaseActor.cpp:426] UE4Editor_RuntimeGeometryUtils!ADynamicMeshBaseActor::execSolidifyMesh() [E:\Epic Games\UnrealMeshProcessingTools\UE4.26\RuntimeGeometryDemo 4.27 - 2\Plugins\RuntimeGeometryUtils\Intermediate\Build\Win64\UE4Editor\Inc\RuntimeGeometryUtils\DynamicMeshBaseActor.gen.cpp:332] UE4Editor_CoreUObject UE4Editor_CoreUObject UE4Editor_CoreUObject UE4Editor_CoreUObject UE4Editor_CoreUObject UE4Editor_CoreUObject UE4Editor_CoreUObject UE4Editor_CoreUObject UE4Editor_CoreUObject UE4Editor_CoreUObject UE4Editor_Engine UE4Editor_Engine UE4Editor_Engine UE4Editor_Engine UE4Editor_Engine UE4Editor_Engine UE4Editor_Engine UE4Editor_Engine UE4Editor_Engine UE4Editor_Engine UE4Editor_Engine UE4Editor_Engine UE4Editor_Engine UE4Editor_Core UE4Editor_Core UE4Editor_Core UE4Editor_Engine UE4Editor_Engine UE4Editor_Engine UE4Editor_Engine UE4Editor_UnrealEd UE4Editor_UnrealEd UE4Editor UE4Editor UE4Editor UE4Editor UE4Editor UE4Editor kernel32 ntdll