gpt4 book ai didi

ios - 提高透明图像绘制性能

转载 作者:行者123 更新时间:2023-12-01 15:45:59 27 4
gpt4 key购买 nike

我的目标我想利用图像之外的背景在动画过程中不发生变化这一事实来提高动画中透明图像的绘制性能。

背景我需要构建 100 张图像的动画(~5 秒)。我无法使用 UIImageView 的 startAnimating 函数,因为 100 张图像太大而无法放入内存。所以我决定使用计时器并直接更改 UIImageView 中的图像。问题是对于透明图像,绘图速度太慢(全屏透明图像为 5 FPS;无透明图像为 22 FPS)。

当动画启动时,我知道我的图像之外的像素在动画结束之前不会改变。

问题有没有一种方法可以利用图像之外的背景在动画期间不发生变化这一事实来提高我的透明图像的绘制性能?

请注意,在我启动动画之前,图像之外的背景可能会发生变化,因此我无法将背景直接放入我的图像中。

最佳答案

不幸的是,您的选择会有些受限。因为您无法提前知道背景(即在动画运行之前),所以需要在动画运行时将透明图像合成到背景之上。我认为没有办法解决这个问题。

您应该能够使用 UIImageView-animationImages 功能,因为它不应该加载并将所有图像保存在内存中,而是在需要时加载它们被显示。您尝试过这种方法吗?如果尝试过,结果如何?

我能想到的唯一其他选择是使用 OpenGL 纹理,可能使用占用较少内存的 PVRTC 压缩纹理,这样您就可以加载更多纹理,并避免在动画时由于图像解压缩而导致速度减慢正在运行。

关于ios - 提高透明图像绘制性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6942388/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com