1
\$\begingroup\$

I generated the UProceduralMeshComponent and set collision enabled to ECollisionEnabled::QueryOnly.

But I get ActorEndOverlapEvent if I stop touching the mesh border even if I still inside of mesh body. So, how to make it solid to get this event only if I left from the mesh volume (like in ATriggerBox for example)?

\$\endgroup\$

1 Answer 1

2
\$\begingroup\$

I solved it.

First of all, I need to turn off option "Use Complex as Simple Collision"

bUseComplexAsSimpleCollision = false;

and then I can add simple collision convex hulls:

// Create collision simple mesh
for (const TArray<FVector>& Hull : ConvexHulls)
{
    ShapeMesh->AddCollisionConvexMesh(Hull);
}

I added few hulls because my shape can be a concave polygon based, so, I need to split it to few convex polygons and add volume for each separately.

\$\endgroup\$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .