Jump to content
substep

alembics for rendering

Recommended Posts

Hey all,

I've been doing a bit of caching lately, both bgeo's and alembic, and had a few questions about where other people where using them in the pipeline.

Alembic obviously works great for getting data in/out of other apps. But for just houdini, is it better to use bgeos?

Also, is it better to be rendering bgeo's instead of alembic files? If I have a couple 80gb alembic files in a scene, and I shoot that over to a render farm, is each render node loading each entire alembic file per frame? I'm fairly certain that a render node will keep the scene open inbetween frames, so does it only load them once? It seems a bgeo sequence would be better, since it only is loading what it needs per frame/per render node?

Thanks for any info!

Share this post


Link to post
Share on other sites

This is ongoing discussion on what is actually better for a network: single random access huge files (alembic), or a series of smaller files without random access possibility (bgeo). I haven't seen any definite arguments although my guts tell me there is a bit of stress for a file system when caching huge files (and this is what concerns about Alembic lots' of clever people, but it apparently wasn't a concern for its developers who are also clever people, so...).

Nice thing about Alembic is that it's a procedural understood both by Houdini viewport and Mantra, so it's an effortless delay load infrastructure. If you load in an alembic file into Houdini session, its geometry won't be placed inside the IFD file, but rather referenced from disk - similar to Delayed Load geometry shader. With bgeo this would need a setup (not a big deal but always some work in complicated scenes).

Alembic was designed to efficiently load only part of a file into memory, so this is not a problem. That bothers network administrator is how file-system on a file-servers and appliances deal with that (we know it deals great with smaller files).

Share this post


Link to post
Share on other sites

Thanks Szymon, that makes a lot of sense. I think I need to research alembic a bit more. I wonder why they decided to keep alembic self contained, as opposed to a file sequence. This get's me pointed in the right direction though.

Best!

Share this post


Link to post
Share on other sites

I wonder why they decided to keep alembic self contained, as opposed to a file sequence.

Because they were after reducing data redundancy. Attributes that don't change over time are not repeated in alembic's frames stream, but referenced from a single memory location.

  • Like 1

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×