Bullet fbx export to UE4

   5978   8   0
User Avatar
Member
14 posts
Joined: Dec. 2016
Offline
Hello,

I've been trying to export a simple falling object to UE4, but the sim doesn't show up as animation in UE4.
I've imported the DOP-network to the SOP and checked the framerange when exporting. I import as skeletal mesh.
Any ideas how to go about this?

HIP and FBX in attachment.

Thanks!

Isjtar
Edited by isjtar - June 8, 2018 10:47:27

Attachments:
keyBoxAnim.fbx (35.1 KB)
KeyBox.hiplc (234.0 KB)

User Avatar
Member
14 posts
Joined: Dec. 2016
Offline
Many views, few answers.
Some extra info:

when I import with setting “animation length:animated time”
no anim file created, I get the error “Animation Stack Main does not contain any valid key. Try different time options when import.
This does not contain any valid animation takes.”


when I import with setting “animation length:exported time”
anim file is created, but object doesn't move. The log gives me:
LogFactory: FactoryCreateFile: StaticMesh with FbxFactory (0 0 D:/Visual/Houdini/Key/keyBoxAnim.fbx)
LogFbx: ItemName: GlobalSettings, ItemCount : 1
LogFbx: ItemName: Model, ItemCount : 2
LogFbx: ItemName: Geometry, ItemCount : 1
LogFbx: ItemName: Material, ItemCount : 1
LogFbx: ItemName: NodeAttribute, ItemCount : 1
LogFbx: ItemName: AnimationStack, ItemCount : 1
LogFbx: ItemName: AnimationLayer, ItemCount : 1
LogFbx: ItemName: AnimationCurveNode, ItemCount : 6
LogFbx: ItemName: AnimationCurve, ItemCount : 18
LogFbx: ItemName: Deformer, ItemCount : 1
LogFbx: ItemName: Cache, ItemCount : 1
LogFbx: Loading FBX Scene from D:/Visual/Houdini/Key/keyBoxAnim.fbx
LogFbx: FBX Scene Loaded Succesfully
LogFbx: Loading FBX Scene from D:/Visual/Houdini/Key/keyBoxAnim.fbx
LogFbx: FBX Scene Loaded Succesfully
LogFbx: =================================================
LogFbx: Dumping Node START [geo1]
LogFbx: Total Deformer Count 1086681248.
LogFbx: [Node 1] geo1 (Type VertexCacheDeformer).
LogFbx: =================================================
LogFbx: Attribute (geo1) Type (4).
LogFbx: [Node Attribute Child 1] geo1 (Type Mesh).
LogFbx: Dumping Node END [geo1]
LogFbx: =================================================
LogFbx: Dumping Node START [geo1]
LogFbx: Total Deformer Count 1086681248.
LogFbx: [Node 1] geo1 (Type VertexCacheDeformer).
LogFbx: =================================================
LogFbx: Attribute (geo1) Type (4).
LogFbx: [Node Attribute Child 1] geo1 (Type Mesh).
LogFbx: Dumping Node END [geo1]
LogFbx: Warning: Bones digested - 1 Depth of hierarchy - 1
LogSkeletalMesh: Section 0: 56 vertices, 1 active bones
LogSkeletalMesh: Section 0: Material=0, 108 triangles
LogFbx: =================================================
LogFbx: Dumping Node START [geo1]
LogFbx: Total Deformer Count 1086681968.
LogFbx: [Node 1] geo1 (Type VertexCacheDeformer).
LogFbx: =================================================
LogFbx: Attribute (geo1) Type (4).
LogFbx: [Node Attribute Child 1] geo1 (Type Mesh).
LogFbx: Dumping Node END [geo1]
LogFbx: =================================================
LogFbx: Dumping Node START [geo1]
LogFbx: Total Deformer Count 1086681968.
LogFbx: [Node 1] geo1 (Type VertexCacheDeformer).
LogFbx: =================================================
LogFbx: Attribute (geo1) Type (4).
LogFbx: [Node Attribute Child 1] geo1 (Type Mesh).
LogFbx: Dumping Node END [geo1]
LogFbx: SortedLinks :(0) geo1
LogFbx: Parsing AnimStack Main
LogAnimationCompression: Building Anim DDC data for AnimSequence /Game/Models/Rooms/Key/keyBoxAnim_Anim.keyBoxAnim_Anim
LogAnimationCompression: Recompressing (AnimSequence /Engine/Transient.AnimSequence_1) using current/default (AnimCompress_BitwiseCompressOnly_0) bFirstRecompressUsingCurrentOrDefault(1) bTryAlternateCompressor(0) IsCompressedDataValid(0)
FBXImport: Warning: No smoothing group information was found in this FBX scene. Please make sure to enable the 'Export Smoothing Groups' option in the FBX Exporter plug-in before exporting the file. Even for tools that don't support smoothing groups, the FBX Exporter will generate appropriate smoothing data at export-time so that correct vertex normals can
be inferred while importing.
FBXImport: Warning: Mesh 'geo1' has no UV set. Creating a default set.
User Avatar
Member
197 posts
Joined: July 2015
Offline
Hi,

Unfortunately Houdini doesn't automatically convert your simulation result to a skeletal animation that Unreal Engine can read when exporting. We did however create a really useful toolset which contains a tool which does exactly that.

You can see how to use the tool here: https://www.sidefx.com/tutorials/game-tools-rbd-to-fbx/?collection=50 [www.sidefx.com]
And here is how to install the toolset: https://www.sidefx.com/tutorials/game-dev-toolset-installation/ [www.sidefx.com]

Paul
Paul Ambrosiussen
Technical Artist, Freelance
twitter.com/ambrosiussen_p
User Avatar
Member
14 posts
Joined: Dec. 2016
Offline
Yep that does it, much obliged!
User Avatar
Member
14 posts
Joined: Dec. 2016
Offline
I'm getting the error “The bone size is too small to create Physics Asset ‘…’ from Skeletal Mesh ‘…’. You will have to create physics asset manually.”

I thought this had to do with the size of my mesh, but even scaling up I get the same error. Due to this I can't change the bounds capsule and the mesh gets culled from certain points of view. Manually creating a physics asset with small bone sizes throws the same error.

Any idea what's going on?
User Avatar
Member
197 posts
Joined: July 2015
Offline
Hi,

I just tried importing two simple RBD simulations of a breaking sphere into UE, and it does in fact generate a physics asset in both cases for me.

The first case has some very small objects, which do get skipped in the physics asset generation process. Some of the bigger pieces do work. To fix this I opened the physics asset in UE, and deleted all physics elements that did get generated to start fresh. Then I selected all pieces in the Skeleton tree, and pressed rightclick>Add/Replace bodies. That generated bodies for all pieces.

The second case works perfectly without any tweaks in UE, since I made sure that the size of the imported objects match the system Unreal uses.

So make sure you scale the source file up x100 in Houdini, or in the import dialog while in UE.
Let me know if that solves the issue for you.

Paul
Paul Ambrosiussen
Technical Artist, Freelance
twitter.com/ambrosiussen_p
User Avatar
Member
14 posts
Joined: Dec. 2016
Offline
Hi Ambrosiussen,

I may be missing something obvious (never worked with skeletons), but I don't have that option.
I have a simplified version of the file here, scaled correctly https://www.dropbox.com/s/3abskjufmirtxu9/BOX.fbx?dl=0 [www.dropbox.com]
Edited by isjtar - June 27, 2018 17:12:30

Attachments:
keyproblem2.PNG (871.5 KB)

User Avatar
Member
197 posts
Joined: July 2015
Offline
Hi,

The window you have open is for the skeletal mesh, not the physics asset.
https://docs.unrealengine.com/en-us/Engine/Physics/PhAT [docs.unrealengine.com]

See:

Paul
Edited by Ambrosiussen - June 28, 2018 06:59:50

Attachments:
Example.PNG (36.1 KB)

Paul Ambrosiussen
Technical Artist, Freelance
twitter.com/ambrosiussen_p
User Avatar
Member
14 posts
Joined: Dec. 2016
Offline
Hi,

I couldn't make a physics asset at all, that was the problem, but now I managed by enabling “create body for all bones”, this works and resolves my problem. The mesh also doesn't get culled anymore at runtime.

BTW, just for you information, UE4 seems confused between files when importing several objects as skeleton meshes. It doesn't generate the proper anim and uses another. Don't know if this is Houdini or UE4 related.

Thanks a lot for your help!
  • Quick Links