Example #1
0
        static void ReadModelInfo(ref HierInfo info)
        {
            if (!info.prim)
            {
                return;
            }

            var modelApi = new UsdModelAPI(info.prim);

            if (!modelApi)
            {
                return;
            }

            var kindTok = new TfToken();

            if (!modelApi.GetKind(kindTok))
            {
                return;
            }

            if (KindRegistry.IsA(kindTok, KindTokens.assembly))
            {
                info.isAssembly = true;
            }
            else if (!modelApi.IsModel() || modelApi.IsGroup())
            {
                return;
            }

            var modelInfo = new VtDictionary();

            if (!modelApi.GetAssetInfo(modelInfo))
            {
                return;
            }

            info.isModel = true;

            var valName       = modelInfo.GetValueAtPath("name");
            var valVersion    = modelInfo.GetValueAtPath("version");
            var valIdentifier = modelInfo.GetValueAtPath("identifier");

            if (valIdentifier != null && !valIdentifier.IsEmpty())
            {
                info.modelAssetPath = UsdCs.VtValueToSdfAssetPath(valIdentifier).GetAssetPath().ToString();
            }

            if (valName != null && !valName.IsEmpty())
            {
                info.modelName = UsdCs.VtValueTostring(valName);
            }

            if (valVersion != null && !valVersion.IsEmpty())
            {
                info.modelVersion = UsdCs.VtValueTostring(valVersion);
            }
        }
Example #2
0
        public static KindRegistry GetInstance()
        {
            KindRegistry ret = new KindRegistry(UsdCsPINVOKE.KindRegistry_GetInstance(), false);

            return(ret);
        }
Example #3
0
 internal static global::System.Runtime.InteropServices.HandleRef getCPtr(KindRegistry obj)
 {
     return((obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr);
 }