0

What is the best file format in Maya to improve the playback speed in Maya ?

I read in the Maya Autodesk documentation that GPU cache files are optimized for fast playback performance in Maya.

Are GPU cache files the best for it ?

Thank you a lot

Caryluna
  • 87
  • 1
  • 1
  • 7
  • gpu caches are primarily intended for the baked results of simulation runs or super complex scenes. They are a way to save and re-play the results of something too complex to run in real time while doing other work in the scene. They're not a 'file format' on their own . – theodox Aug 08 '17 at 19:49

1 Answers1

2

In terms of playback, GPU caches will get you some of the fastest performance. This is because when creating the GPU Cache Maya will bypass the dependency graph and port directly to the graphics card. As mentioned in the comments, they are primarily used for simulations, but you can cache any geo - large sets, character animation, etc.

GPU caches are stored as an Alembic file (.abc). You can import the same file as either an Alembic cache, or a GPU cache.

In tests that I have run, using GPU cache often had an overheard cost of loading the cache onto the graphics card, but had much faster playback than using Alembic caches, and was certainly much faster than using the original rig/sim.

There are pros and cons to using GPU or Alembic, though. Since GPU caches primary benefit is playback optimization, there are a few things you lose by using them:

  • Limited material support: GPU caches only support basic Lambert and Phong materials. I believe these need to be present on the mesh before you export the cache, but I have not tested this. I know that assigning materials to the cache after the fact does not work.
  • Limited frame range: GPU Caches will only cache animation in the specified range of frames; it will not loop or allow changes to the cache speed and offset. When you import an Alembic file as an Alembic cache, it does have this functionality - but GPU caches will only play through cached frames and then stop.
  • No hierarchy information: GPU cache are created under a single node (and skips the dependency graph), so you will lose all hierarchy information upon import. Importing as an Alembic cache, on the other hand, will preserve that hierarchy.
  • Overhead Cost: In my tests, I found the more individual caches I was using in a scene, the longer it took to load more. You might be able to solve this by combining multiple GPU caches into a single GPU cache - I found that that was usually faster than loading lots of individual pieces.

In summary, GPU caches can be great for playback and visualization, but might be too limiting to actually use for final renders.

To read more, you can see Maya's documentation here. (This is for the Maya 2017, but most of the information is equally valid for previous versions. Make sure to check on Maya's site for the most accurate information regarding your version.)

beisbeis
  • 148
  • 9