Ejemplo n.º 1
0
        usdiSchema usdiFindOrCreateNode(Transform parent, usdi.Schema schema, ref bool created)
        {
            GameObject go = null;

            // find existing GameObject or create new one
            var name  = usdi.usdiPrimGetNameS(schema);
            var child = parent.FindChild(name);

            if (child != null)
            {
                go      = child.gameObject;
                created = false;
            }
            else if (go == null)
            {
                go      = new GameObject();
                go.name = name;
                go.GetComponent <Transform>().SetParent(parent);
                created = true;
            }

            // create USD node
            usdiSchema ret = usdiCreateNode(schema);

            ret.gameObject = go;

            return(ret);
        }
Ejemplo n.º 2
0
 public virtual void usdiOnLoad()
 {
     m_primPath     = usdi.usdiPrimGetPathS(m_schema);
     m_primTypeName = usdi.usdiPrimGetUsdTypeNameS(m_schema);
     m_master       = m_stream.usdiFindSchema(usdi.usdiPrimGetMaster(m_schema));
     usdiSyncVarinatSets();
     if (m_goAssigned)
     {
         var c = usdiSetupSchemaComponent();
         c.schema = this;
     }
 }
Ejemplo n.º 3
0
        usdiSchema usdiCreateNode(usdi.Schema schema)
        {
            usdiSchema ret = null;

            if (ret == null)
            {
                var s = usdi.usdiAsPoints(schema);
                if (s)
                {
                    ret = new usdiPoints();
                }
            }
            if (ret == null)
            {
                var s = usdi.usdiAsMesh(schema);
                if (s)
                {
                    ret = new usdiMesh();
                }
            }
            if (ret == null)
            {
                var s = usdi.usdiAsCamera(schema);
                if (s)
                {
                    ret = new usdiCamera();
                }
            }
            if (ret == null)
            {
                // Xform must be latter because some schemas are subclass of Xform
                var s = usdi.usdiAsXform(schema);
                if (s)
                {
                    ret = new usdiXform();
                }
            }
            if (ret == null)
            {
                ret = new usdiSchema();
            }
            ret.nativeSchemaPtr = schema;
            ret.stream          = this;
            return(ret);
        }