有没有办法加快kivy加载动态gif的速度?Kivy是否有内置的压缩或其他选项?我正在将动态gif用作应用程序主屏幕的背景。这是矩阵,其中有大约30个不同的帧来创建所需的效果。由于有30个帧,我并不指望它非常快,但是单个动态gif加载需要5-10秒似乎有点太长了。
有没有办法加快kivy加载动态gif的速度?Kivy是否有内置的压缩或其他选项?我正在将动态gif用作应用程序主屏幕的背景。这是矩阵,其中有大约30个不同的帧来创建所需的效果。由于有30个帧,我并不指望它非常快,但是单个动态gif加载需要5-10秒似乎有点太长了。
我相信这会对你有所帮助,我有一系列的png文件,想把它们制作成爆炸效果,并在不断发生爆炸的游戏中使用。最初,每次播放动画时,游戏都会卡顿和出现明显的延迟。以下是我为了让我的游戏运行流畅所采取的措施。我将png文件压缩,并使用以下代码进行预加载,这些代码我放置在图像所在的Screen
小部件的__init__
方法中。
load_zipped_png_files = Image(
source = 'explosion.zip',
anim_delay = 0,
allow_stretch = True,
keep_ratio = False,
keep_data = True)
我认为 keep_data
选项允许将图片预加载到缓存中(我想是缓存在本地),这样可以避免程序在每次使用它们时重新加载。
现在可能我对于 keep_data
在这里的作用有所误解(如果有人读到这篇文章并知道更好的,请纠正我),但通过将文件压缩并以这种方式使用,确实使动画变得流畅。你可以测试一下是否启用了 keep_data = True
并自行找出答案。
对于我而言,这很简单,因为我需要GIF格式的图片扩展:
Image(
source= 'image.gif',
anim_delay= 0,
mipmap= True,
allow_stretch= True)
新增了mipmap,使用OpenGL增强纹理效果。