2024-04-19 09:17:18 发布
网友
我正在努力减少我比赛中的滞后,因为这是无法忍受的。我知道当blitting大图像时,我应该期待一些延迟,但我看不到任何方法来减少它。我这里有代码:https://gist.github.com/Mrmeguyme/ce1a844af21695d1b853ef88fe8de5aa
背景是1280x720px,地面是1280x100px,我的角色是50x50px。在
你的图像可能有每像素的透明度。将它们转换为不透明。在
faster_surface = surface_loaded_directly_from_png.convert()
当然,这不适用于角色,但对于背景来说,它会使事情有所改善。在
编辑:我也注意到你没有打电话时钟滴答声()任何地方。这应该可以使事情变得平顺,并消除那些实际上只是CPU自然地加速和减速的慢操作。在
见http://www.pygame.org/docs/ref/surface.html#pygame.Surface.convert_alpha
这是我为我所有的程序所做的:
def loadify(img): return pygame.image.load(img).convert_alpha()
我只是替换pygame.image.load用loadify保存输入。这会将图像转换为正确的像素格式,以便更快更容易地进行blitting。在
你的图像可能有每像素的透明度。将它们转换为不透明。在
当然,这不适用于角色,但对于背景来说,它会使事情有所改善。在
编辑:我也注意到你没有打电话时钟滴答声()任何地方。这应该可以使事情变得平顺,并消除那些实际上只是CPU自然地加速和减速的慢操作。在
见http://www.pygame.org/docs/ref/surface.html#pygame.Surface.convert_alpha
这是我为我所有的程序所做的:
我只是替换pygame.image.load用loadify保存输入。这会将图像转换为正确的像素格式,以便更快更容易地进行blitting。在
相关问题 更多 >
编程相关推荐