Is it possible to extend the "Kind" registry in Omniverse?

The Pixar documentation pointed to by the Omniverse documentation regarding the “Kind” property discusses the ability to extend the “Kind” registry.

https://graphics.pixar.com/usd/release/api/kind_page_front.html

I have been unable to find where to edit the Kind Registry in Omniverse. My search has lead me to:

  • omni.usd.libs>pxr>Kind>kind.pyd, which is a binary file, and I don’t think there is a means for me to edit it.

  • omni.usd.libs>pxr>Kind>init.pyi, which has definitions for the Classes: Registry and Tokens. This looks like a potential file to access the Kind definitions, but I think it is just a python wrapper pointing to the C++ compiled binary.

I would like to extend the base kinds to have unique Kinds in the hierarchy in Omniverse. Is this possible? If so, can anyone help point me in the right direction?

Hi @john172. I would follow the similar steps to what we recommend for custom schema extensions: USD Schema — kit-sdk 103.1 documentation

I put together a sample extension based on the example provided in the Kind documentation: GitHub - mati-nvidia/custom-kinds-example: An example Omniverse Kit Extension showing how to add custom USD Kinds.

Let me know if you have any more questions.

Thank you mati! This worked well for me.