Convert Alembic to polygons?
2597 4 1- litote
- Member
- 231 posts
- Joined: 7月 2013
- Offline
I have tried using the Convert node to change an animated object from an Alembic file to a polygon mesh. I find it does not pass the animation in to a dynamic network simulation as an RBD Packed Object, only a single static mesh from the first frame of the animation. Presumably it can't be used to convert the full sequence and pass it along to the DOP Network, is that correct?
Edited by litote - 2023年5月8日 05:18:35
- derrick
- スタッフ
- 332 posts
- Joined: 7月 2005
- Offline
Packed Alembic primitives reference a single frame of animation (see the "abcframe" intrinsic). For animated Alembic objects, the SOP that created the Packed Alembic primitives should be marked time dependent so Houdini will recook and update the "abcframe" intrinsic when you scrub the timebar. The RBD Packed Object DOP has an "Initial Object Type" parameter to specify how you want to handle any animation the referenced SOP geometry might have. See the description of the "Initial Object Type" parameter: https://www.sidefx.com/docs/houdini/nodes/dop/rbdpackedobject.html [www.sidefx.com]
- litote
- Member
- 231 posts
- Joined: 7月 2013
- Offline
- derrick
- スタッフ
- 332 posts
- Joined: 7月 2005
- Offline
litote
How do I mark the SOP that created the Packed Alembic primitives time dependent? Do you mean the Alembic node I used to reference the file?
Yes, I mean the Alembic SOP that created the Packed Alembic primitives. The Alembic SOP will automatically become time dependent if the referenced Alembic geometry is animated and the Frame parameter is set to $FF. You don't need to take any action yourself to mark it time dependent. All later nodes should automatically inherit a time dependency. The network editor can show you which nodes are time dependent with via a badge next to the node (see: https://www.sidefx.com/docs/houdini/network/badges.html).
- npetit
- スタッフ
- 413 posts
- Joined: 2月 2008
- Offline
Depending on how the packed alembic comes through, it may not be "animated" but "deforming".
An animated RBD packed object expects packed static geometry which is animated via packed transforms - animation that lives on the packed geo.
If the animation lives on the mesh points themselves, i.e you unpack or convert the packed alembic to poly before packing it again, this is now a deforming RBD - the internal geometry needs to be rebuilt at every time step. If you don't import it as such, it'll appear to be frozen at the first frame.
Depending on what you are trying to do, it's best to try and avoid deforming RBDs where possible as they can have a significant impact on performance, as well as not playing nice with constraints.
If the packed alembics are animated, you should be able to use them directly in sim without needing to first unpack or convert to poly.
If they are deforming, you could try using the RBD Deforming to Animated SOP if the geometry is split up into various named pieces. If that doesn't do the trick, you may need to first chop up the deforming geo into various small pieces that can be rigidly transformed while still giving a decent representation of the deformed mesh.
An animated RBD packed object expects packed static geometry which is animated via packed transforms - animation that lives on the packed geo.
If the animation lives on the mesh points themselves, i.e you unpack or convert the packed alembic to poly before packing it again, this is now a deforming RBD - the internal geometry needs to be rebuilt at every time step. If you don't import it as such, it'll appear to be frozen at the first frame.
Depending on what you are trying to do, it's best to try and avoid deforming RBDs where possible as they can have a significant impact on performance, as well as not playing nice with constraints.
If the packed alembics are animated, you should be able to use them directly in sim without needing to first unpack or convert to poly.
If they are deforming, you could try using the RBD Deforming to Animated SOP if the geometry is split up into various named pieces. If that doesn't do the trick, you may need to first chop up the deforming geo into various small pieces that can be rigidly transformed while still giving a decent representation of the deformed mesh.
-
- Quick Links