Description

The player collision debug visualization for negatively scaled boxes is rendering the back faces, not the front faces.
The debug primitives are rendered via the dynamic mesh builder. FDynamicMeshBuilder::GetMesh() does already reverse the culling for negatively scaled meshes

Mesh.ReverseCulling = LocalToWorld.Determinant() < 0.0f ? true : false;

but in this case, the determinant is positive because FKAggregateGeom::GetAggGeom separates the scaling from the transformation:

const FVector Scale3D = Transform.GetScale3D();
FTransform ParentTM = Transform;
ParentTM.RemoveScaling();

Tested for boxes, spheres and capsules, but only the boxes were rendering incorrectly.

Steps to Reproduce
  • Place a default cube on the map
  • Assign negative scaling (1, -1, 1)
  • Switch to player collision debug visualization
  • Note that the back faces are being rendered

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-316484 in the post.

0
Login to Vote

Unresolved
ComponentUE - Simulation - Physics
Affects Versions5.65.6.15.7
CreatedSep 1, 2025
UpdatedSep 2, 2025
View Jira Issue