Openpype Publish process - Development guide

This is actually a long standing pet peeve of mine. We should not be embedding the representation information like this into a creator, but instead the user should choose to create Point Cache and then enable/disable representations in the instance options.

Thank you, the differentiation of product type and representation you put down is almost perfect. There is one extra caveat though that, conceptually, doesn’t fit those descriptions, but in practice is almost unavoidable.

Representations of a. single product do not need to contain all data of that product type. A common example is a model product type. It could very well have 3 representations

  • ma (geometry data as maya ascii)
  • abc (geometry data as maya alembic)
  • mov (turnaround video of the model)

The key point is that the video doesn’t contain practically any of the actual model data, yet it accurately “represents” it in a different way. Keeping this in mind is crucial and is the main reason why it is called representation and not a file format.

Another example is with plates or render. plateMain coming from set, could be published as representations

  • exr (raw exr sequence for comp and further work)
  • h264_noHandles (preview with handles cut off, for easier online preview)

That noHandles representation is actually crucial to have because it is not possible to automatically hide handles in the online review tools like ftrack review or syncsketch and by keeping them there, the director will just be annoyed and not seeing the shot hookups correctly. However, those two clear don’t hold the same data anymore. Instead they merely represent the state of work at a given point in time in some useful fashion.

1 Like