UCX not generating when importing as Skeletal Mesh.

Hi!

It has come to my attention that when a user is trying to import an asset with the “Import as Skeletal Mesh” checked, - UCX meshes on that asset will not generate as collision. It renders as visible meshes instead.

There are some solutions I’ve tried to work around this.

*1. Remove the UCX meshes from exported model. Import as Skeletal Mesh. Make a Blueprint with the animated model. Place out Box Colliders manually (oh, the agony!). *

Problem: Takes a lot of time. The character seems to have some problems stepping up on these when placed out on (even very low height) stair steps. This is not the case when using UCX collision. Probably fixable somehow but I haven’t encountered a solution yet.

2. Export all the static meshes of your planned object into their own FBX with their UCXs and export the animated mesh(es) into it’s own FBX without the UCX.

Problem: It’s not ready straight from import as you need to make your own collision box inside a blueprint and transform it’s position while timing it against the animation of the animated mesh inside the graph so the user can’t clip though before or after the animation is played.

*3. Make the animation and collition boxes inside UE4 itself. *

Problem: The is like doing both point 1. and 2. at the same time which is definitively not ideal.

Anyone else have a solution out there?

  • edited

Hi!
Skeletal Mesh cannot contain UCX. Collision mesh need only for non Skeletal mesh. For Skeletal Mesh you need generate Phisycal Asset (automatic when importing the object or manualy after import).
Read this docs…
https://docs.unrealengine/latest/INT/Engine/Content/FBX/SkeletalMeshes/index.html

Just so that you dont have to read through the documentation :wink:

Import your skeletal mesh - right click onto it - create physic asset - choose a collision type:

convex.jpg

You can also edit your collision directly in the physic asset (click onto one of the collisions - move/scale/rotate it) + you can add missing collisions (right click onto a bone - add box/…)

there is no other way to import our custom collision ?

even i skin the UCX ?

(2018 question).

You can not apply a collision solution to a Skeletal Mesh as the relative position of the mesh is controlled by the rig with the object skinned weighted to the rig. If you link a collision object, UCX, to the mesh the relative world position will remain the same as to it’s position when the bind pose was first applied.

If the mesh is bind pose at 0 0 0 then the collision object will always be at 0 0 0.

But

You could add a collision object as a component to the rig, with out physics asset, and use a joint of the rig as a socket but you would have to code the behavior.

P.S. no you can’t just skin the UCX as it’s relative world position is still 0 0 0