private static void ExportTexture(Texture2D tex, string path, ImageFormatEnum format, object data, bool zeroAlpha) { string formatName = GetImageFormatName(format); using (Stream output = File.OpenWrite(path + formatName)) { TextureUtil.ExportTexture(tex, output, format, data, zeroAlpha); } }
private void ExportTexture(Texture2D texture, ExportTextureFormat format, AssetImage asset, bool canCopy) { // force PNG if alpha?? string sourcePath = AssetDatabase.GetAssetPath(asset.Texture); string sourceExtension = Path.GetExtension(sourcePath); bool forceConversion = room.TextureForceReExport && !JanusUtil.IgnoreReExport(sourcePath); string rootDir = room.RootFolder; if (!forceConversion && canCopy && JanusUtil.SupportsImageFormat(sourceExtension)) { asset.src = asset.src + sourceExtension; if (room.ExportOnlyHtml) { return; } string texPath = Path.Combine(rootDir, asset.src); File.Copy(sourcePath, texPath, true); } else { try { asset.src = asset.src + JanusUtil.GetImageExtension(format); if (room.ExportOnlyHtml) { return; } string texPath = Path.Combine(rootDir, asset.src); using (Stream output = File.OpenWrite(texPath)) { TempTextureData data = TextureUtil.LockTexture(texture, sourcePath); TextureUtil.ExportTexture(texture, output, format, room.TextureData, false); TextureUtil.UnlockTexture(data); } } catch { Debug.LogError("Failure exporting texture " + asset.id); } } }