User guide

205
As its a single string, an Asset ID can be passed as part of an argument string to a subprocess, such as a shell
command or a procedural. It is important therefore that the format of an Asset ID is such that it can be easily found
in a larger string and parsed.
Asset Fields
The fields of an asset are the key components needed to retrieve an asset from an asset management system.
Katana assumes that an asset has a name field and - if provided - also uses a version field.
Asset Attributes
An asset can optionally have attributes where additional metadata is stored, such as comments, or information
about the type of asset.
Katana does not rely on particular attributes to exist, but it presumes that there is a mechanism in place for this
additional data to be read from and written to.
NOTE: It is fine to leave these methods unimplemented if your asset management system has no use for
them.
Asset Publishing
Assets are published by users. When an asset is published it is in a finalized state, accessible to other users.
Publishing can involve incrementing the asset version.
NOTE: Any change that alters the project's katanaSceneName whilst saving a scene will trigger a call to
SyncAllOutputPorts(). This ensures render outputs affected by this change are correct.
Transactions
A Transaction is a container for submitting multiple publish operations at once. Rather than submit one publish
operation per asset, operations can be grouped. This means that if an error occurs whilst publishing many assets, the
whole operation may be aborted.
beginTransaction (createTransaction)
publish asset A
publish asset B
publish asset C
endTransaction (commit)
27 ASSET MANAGEMENT SYSTEM PLUG-IN API |