Пример #1
0
        internal Entity Import(UnityEngine.Object obj)
        {
            if (obj == null || !obj)
            {
                return(Entity.Null);
            }

            var entity        = Entity.Null;
            var assetImporter = m_AssetImporters.Values.FirstOrDefault(x => x.CanImport(obj));

            if (assetImporter != null)
            {
                entity = assetImporter.Import(this, obj);
                if (entity != Entity.Null)
                {
                    var guid = obj.GetGuid();
                    Assert.IsTrue(guid != Guid.Empty);
                    Assert.IsFalse(EntityManager.HasComponent <EntityGuid>(entity));
                    WorldManager.SetEntityGuid(entity, guid);

                    Assert.IsFalse(EntityManager.HasComponent <AssetReference>(entity));
                    EntityManager.AddComponentData(entity, obj.ToAssetReference());
                }
            }
            return(entity);
        }