Found 216 posts.
Search results Show results as topic list.
Technical Discussion » writing alembic with userProperty
- derrick
- 327 posts
- Offline
User properties can be specified with primitive string attributes called “abc_userPropertiesMetadata” and “abc_userProperties”. When providing these, “abc_userPropertiesMetadata” should describe the type information and “abc_userProperties” should describe the actual values. The attached .hip file illustrates how to create a variety of user properties.
Technical Discussion » Alembic export with attributes on packed prims?
- derrick
- 327 posts
- Offline
Qwertzus
But as soon I unpack, edit and transfer the “abc_UserProperties” back and pack it again, the abc_userProperties don't get exported correctly.
Both “abc_userProperties” and “abc_userPropertiesMetadata” are needed.
Technical Discussion » Ways to get geometry info inside a Packed Alembic...
- derrick
- 327 posts
- Offline
HybrideRD
Do we need to unpack+convert a Packed Alembic to know how many Points & Polygons are inside a Packed Alembic?
Packed Alembic primitives have an intrinsic called “abcpointcount” that will tell you the number of points.
Technical Discussion » alembic layering in houdini 17.5
- derrick
- 327 posts
- Offline
That software appears to operate the same way: It looks like they are generating a static base, a deformation layer (that only hold new point positions and normals), and a texture layer (only containing texture coordinates). You also import the scene with the layers applied by simply providing a list of file paths.
Attached is a similar example. You don't need access to the original Alembic exporter to create a layer. In this example, we import an Alembic archive and build new layers for it.
Attached is a similar example. You don't need access to the original Alembic exporter to create a layer. In this example, we import an Alembic archive and build new layers for it.
Technical Discussion » alembic layering in houdini 17.5
- derrick
- 327 posts
- Offline
leoYfver
I was kinda hoping i could merge 2 alembics with same path hierarchy without having to do anything from the rop. Just link the layerfile in the alembic node and choose what to override/merge or prune.
The design is actually dictated by the Alembic library itself. All software that can read Alembic archives can support layers by allowing users to specify a list of files – there are no other inputs or configuration options. The authoring of Alembic layers is where all of the decisions are made.
Technical Discussion » alembic layering in houdini 17.5
- derrick
- 327 posts
- Offline
leoYfver
there is a layer parm which just seems to add another alembic to the alembic node.
That is how Alembic layers are used – you only specify a list of files. All of the details around what a layer does is specified when you author the layer.
leoYfver
I would like to be able to take specific attributes as point reference or uv from another alembic.
Alembic layers can be authored with the Alembic ROP. Authoring an Alembic layer is very similar to exporting a regular Alembic archive but you specify a subset of the data you want in your layer and how that data should be used when the layer is applied (see the parameters in the Alembic ROP's “Layering” tab). Attached is a simple example.
Technical Discussion » Exporting empty frames to alembic and path attribute
- derrick
- 327 posts
- Offline
The Alembic ROP should robustly handle frames where no geometry is provided. What error/warning is the Alembic ROP reporting? Could you post a simple example .hip demonstrating the error?
Technical Discussion » Distributed alembic write or alternative?
- derrick
- 327 posts
- Offline
The Alembic ROP can be used to generate an Alembic archive per frame by putting an expression in the “File Name” parameter like “output$F4.abc”
Consider using the “abcstitcher” command line tool (from the Alembic project) to combine the per frame Alembic archives into a single archive.
Consider using the “abcstitcher” command line tool (from the Alembic project) to combine the per frame Alembic archives into a single archive.
Technical Discussion » Alembic hierarchy problem
- derrick
- 327 posts
- Offline
Packed geometry primitives contains a transform and nested attributes that can be very different from those of other packed geometry primitives. The Alembic ROP will not attempt to merge the contents of packed primitives due to these complications. If you wish to use packed primitives, you should re-organize your geometry prior to export to reflect what you want in each Alembic shape node.
If you are working with packed primitives, you likely want to keep the transform separate from the rest of the geometry. Consider using names like “/group1/group1Shape”, “/group2/group2Shape”, etc. for your shapes and set “Packed Transform” to “Merge With Parent Transform” on the Alembic ROP.
If you are working with packed primitives, you likely want to keep the transform separate from the rest of the geometry. Consider using names like “/group1/group1Shape”, “/group2/group2Shape”, etc. for your shapes and set “Packed Transform” to “Merge With Parent Transform” on the Alembic ROP.
Technical Discussion » Alembic speed regression since H17.0.416-459
- derrick
- 327 posts
- Offline
A bug likely responsible for this was fixed for Houdini 17.5.237 (and Houdini 17.0.562).
Technical Discussion » Alembic speed regression since H17.0.416-459
- derrick
- 327 posts
- Offline
martinkindl83
For us it's happening with any alembic.
Could you please share an example .hip? None of the Alembic archives we have looked at so far exercise the problem.
Technical Discussion » Alembic speed regression since H17.0.416-459
- derrick
- 327 posts
- Offline
We are having difficulty reproducing this. A .hip file that reliably reproduces the poor performance would be very helpful in tracking down the problem.
Houdini Lounge » exporting alembic from Houdini to Maya gets very slow/freezes with high geometry count
- derrick
- 327 posts
- Offline
It sounds like you are encountering a performance bug in Maya's Alembic importer. “Face set” is basically the Alembic term for a “group”. Your geometry contains primitive groups called “glass_concentricoutside”, “glass_radialinside”, “glass_radialoutside”, “inside”, and “outside” (these become face sets in the Alembic archive). The “abcecho” command line tool can help you determine what is actually stored in an Alembic archive.
Technical Discussion » Abc Points problems
- derrick
- 327 posts
- Offline
haggi krey
So my question is: How is Houdini able to read the data correctly if the alembic library seems to return points where no points exists?
It sounds like the other applications you tried do not respect Alembic's “visible” property. Packed Alembic primitives have an intrinsic called “abcvisibility” you can use to inspect an item's visibility.
Technical Discussion » Resolved : [Alembic] How to know if an alembic was created with Maya or Houdini (in Python in Houdini)
- derrick
- 327 posts
- Offline
The “abcecho” command line tool will report this information. There is currently no convenient way to access the information through the Alembic HOM extensions.
Technical Discussion » ROP Alembic Partition Mode does not work in 17
- derrick
- 327 posts
- Offline
The Partition Attribute is only meaningful if you export an Object hierarchy. When exporting from a SOP, the “Build Hierarchy From Attribute” option gives you greater control over where things should be placed in the resulting Alembic archive. Consider enabling “Build Hierarchy From Attribute” and creating a primitive string attribute (identified by the “Path Attribute” parameter) specifying where everything belongs in the resulting Alembic archive.
Technical Discussion » Trouble exporting alembic file
- derrick
- 327 posts
- Offline
I see a few issues.
1) Alembic archives store data in a hierarchy. The Alembic ROP needs to express the data being exported as a hierarchy in the Alembic archive. In your example, the parameters on /obj/geo1/rop_alembic1 indicate the Alembic ROP should look for a primitive string attribute called “path” indicating where to place each shape in the hierarchy. However, if you look at the geometry fed into the Alembic ROP, there is no “path” attribute.
2) Shape nodes in an Alembic archive are things like polygons, curves, subdivision surfaces, etc. There cannot be a mix of subdivision surfaces and polygons in an Alembic shape node. If you want the inside to be a composed of subdivision surfaces and the exterior to be composed of polygons, the pieces need to be separated into multiple Alembic shape nodes.
3) Your geometry contains packed primitives. These contain both transform and shape data. You will want to tell the Alembic ROP how to export these two pieces of information. If you care about Alembic node names and keeping transform information separate from point positions, consider setting the “Packed Transform” parameter to “Merge With Parent Transform” and using the “path” attribute to specify where the shape node component should be placed in the Alembic hierarchy.
4) The Alembic ROP will export geometry attributes (used by materials) but does not support exporting materials (i.e. it will not generate material nodes in the Alembic archive).
Attached is a simple example of how to use the Alembic ROP.
The “abcecho” and “abcinfo” command line tools may be helpful if you are unsure about what actually was exported to the resulting Alembic archive.
1) Alembic archives store data in a hierarchy. The Alembic ROP needs to express the data being exported as a hierarchy in the Alembic archive. In your example, the parameters on /obj/geo1/rop_alembic1 indicate the Alembic ROP should look for a primitive string attribute called “path” indicating where to place each shape in the hierarchy. However, if you look at the geometry fed into the Alembic ROP, there is no “path” attribute.
2) Shape nodes in an Alembic archive are things like polygons, curves, subdivision surfaces, etc. There cannot be a mix of subdivision surfaces and polygons in an Alembic shape node. If you want the inside to be a composed of subdivision surfaces and the exterior to be composed of polygons, the pieces need to be separated into multiple Alembic shape nodes.
3) Your geometry contains packed primitives. These contain both transform and shape data. You will want to tell the Alembic ROP how to export these two pieces of information. If you care about Alembic node names and keeping transform information separate from point positions, consider setting the “Packed Transform” parameter to “Merge With Parent Transform” and using the “path” attribute to specify where the shape node component should be placed in the Alembic hierarchy.
4) The Alembic ROP will export geometry attributes (used by materials) but does not support exporting materials (i.e. it will not generate material nodes in the Alembic archive).
Attached is a simple example of how to use the Alembic ROP.
The “abcecho” and “abcinfo” command line tools may be helpful if you are unsure about what actually was exported to the resulting Alembic archive.
Technical Discussion » ROP Alembic Output Nodes gives a lot of warnings
- derrick
- 327 posts
- Offline
Alembic archives store data in a hierarchy. The Alembic ROP needs to express the data being exported as a hierarchy in the Alembic archive. In koberoels' scene, there appears to be an Object (/obj/ALEMBIC) containing a File SOP (/obj/ALEMBIC/file2).
When koberoels tried to export the scene with the Alembic ROP, it was told to create a transform node (/ALEMBIC) and a shape node (/ALEMBIC/file2). However, when the Alembic ROP converted the geometry into a form suitable for Alembic, it discovered the geometry requires multiple shape nodes (perhaps it contains a bunch of packed primitives, or a mix of polygons and NURBS surfaces). Only one shape node ended up being called /ALEMBIC/file2. The rest were named /ALEMBIC/file2_1, /ALEMBIC/file2_2, etc.
When koberoels tried to export the scene with the Alembic ROP, it was told to create a transform node (/ALEMBIC) and a shape node (/ALEMBIC/file2). However, when the Alembic ROP converted the geometry into a form suitable for Alembic, it discovered the geometry requires multiple shape nodes (perhaps it contains a bunch of packed primitives, or a mix of polygons and NURBS surfaces). Only one shape node ended up being called /ALEMBIC/file2. The rest were named /ALEMBIC/file2_1, /ALEMBIC/file2_2, etc.
Technical Discussion » alembic export of bgeo cache of rbd sim, about 37k pieces.
- derrick
- 327 posts
- Offline
Could you please post an example .hip file that causes Houdini to crash when using the Alembic ROP?
Technical Discussion » ROP Alembic Output Nodes gives a lot of warnings
- derrick
- 327 posts
- Offline
The warnings indicate the Alembic ROP needed to move items in the hierarchy – it should not prevent geometry from being exported. You can verify this by trying to re-import the geometry into Houdini. You can also use the “abcecho” command line tool to inspect the contents of the resulting Alembic archive.
-
- Quick Links