コード例 #1
0
        protected override void OnUpdate()
        {
            Entities.ForEach((UnityEngine.Texture2D texture) =>
            {
                var entity               = GetPrimaryEntity(texture);
                string textPath          = AssetDatabase.GetAssetPath(texture);
                TextureImporter importer = (TextureImporter)TextureImporter.GetAtPath(textPath);
                TextureImporterSettings textureImporterSettings = new TextureImporterSettings();
                importer.ReadTextureSettings(textureImporterSettings);
                DstEntityManager.AddComponentData(entity, new Image2D()
                {
                    imagePixelWidth  = texture.width,
                    imagePixelHeight = texture.height,
                    status           = ImageStatus.Invalid,
                    flags            = Texture2DExportUtils.GetTextureFlags(textureImporterSettings, texture)
                });

                DstEntityManager.AddComponent <Image2DLoadFromFile>(entity);

                var exportGuid = GetGuidForAssetExport(texture);

                DstEntityManager.AddComponentData(entity, new Image2DLoadFromFileGuids()
                {
                    imageAsset = exportGuid,
                    maskAsset  = Guid.Empty
                });
            });
        }