Blender to Ue4 UCX collisions


Does anyone know how to fix this issue importing collisions from blender? I am using the UCX_ModelName_01 naming convention as suggested. It works fine for my UBX collisions. But when trying to add UCX collisions they keep being turned into simpler shapes like boxes. Ignoring completely the fact I need them to curve or have more detail.

There exists an import option “One Convex Hull per UCX” - try to check this option, it looks, like this is not checked so the UCX meshes are combined into one collision.

Edit: just doing a test, this option in that case does not make a difference. Doing in Blender similar to your shape:

Left: the shape itself, middle: one UCX_n_01, right one other UCX_n_02, just showing 2 of them

I tried both import variants - both produce correct results:

grafik

So, are you sure, that you actually did close all your UCX meshes in blender to have correct convex shapes? note the face normals, which all point outwards

The collision can’t have a shape like that, it is a limitation in Unreal Engine. Here is an image that shows how a shape can be.
If you want collision like that, you need to make a one model for all the collision.
you can generate the Collision like this in Unreal Engine, but it will affect the performance.

I hope this help you.

Convex

Link to dock:

What I have found so far.


Allowing multiple hulls per UCX did this. Which was messy. But I noticed it was using triangles (simple shapes)

I was able to add unique shapes if the edges run horizontal.

In order to achieve the desired effect I had to use a UCX object per box. As vertical edges would cause it to bug out and simplify the shapes.

The UCX meshes do not necessarily need to be following geometry exactly as in my example. They are completly independent from the model, and it depends only on how exact the collision should match the geometry. For a door like yours, a much simpler collision could be enough. No need to have collision geometry in places, where the player or other actors cannot collide anyway, because he is too small for example and cannot jump high enough to reach that location.

The following would work as well only using 2 UCX meshes.

grafik

It is just important, that they are really convex and closed geometry (as the C in UCX implies). Single faces will not work.

Instead of defining too many UCX shapes, for simple geometry with not so many triangles like this, the Collision option “Use Complex as Simple” may also be an option to save time.


There is a definite issue or bug with curves. An outside curve works fine but an inside curve breaks.