private void ExtractTextures() { try { // pause asset database refreshing AssetDatabase.StartAssetEditing(); foreach (var texture in _sourceContainer.Textures) { texture.WriteAsAsset(_assetsTextures, _options.SkipExistingTextures); } } finally { // resume asset database refreshing AssetDatabase.StopAssetEditing(); AssetDatabase.Refresh(); } // now they are in the asset database, we can load them. foreach (var texture in _sourceContainer.Textures) { var path = texture.GetUnityFilename(_assetsTextures, texture.IsWebp ? ".png" : null); var unityTexture = texture.IsHdr ? (Texture)AssetDatabase.LoadAssetAtPath <Cubemap>(path) ?? AssetDatabase.LoadAssetAtPath <Texture2D>(path) : AssetDatabase.LoadAssetAtPath <Texture2D>(path); _textures[texture.Name.ToLower()] = unityTexture; var legacyTexture = new LegacyTexture(texture.Data, unityTexture); if (texture.IsWebp) { legacyTexture.OriginalPath = texture.GetUnityFilename(_assetsTextures); } _tableComponent.LegacyContainer.Textures.Add(legacyTexture); } }
public ImageListData(LegacyTexture legacyTexture, bool inUse) { LegacyTexture = legacyTexture; InUse = inUse; }