为什么我的游戏(使用pygame)在为背景设置图像后就这么迟钝?

问题描述 投票:2回答:1

我想为自己的游戏制作一张背景图片,该图片始终位于玩家角色和敌人的后面。我刚刚输入:

background = pygame.image.load("mypicture")

在我的代码顶部,在我的运行循环之前。然后输入以下内容来使图像变暗:

screen.blit(background, (0, 0))

如果我在运行循环之前将图像涂黑,则游戏一点也不迟钝,但是在​​玩家角色移动的任何地方,它都会留下轮廓,永远不会消失,as shown但是,如果我在运行循环中对图像进行涂色,则不会发生前面提到的跟踪器效果,而是使游戏者的运行速度异常缓慢。

值得一提的是我的玩家角色的一些代码:

def Player(x, y):
    screen.blit(PlayerImg, (x, y))

我在运行循环的结尾处调用函数,就在前面

pygame.display.update

。播放器放置在坐标x,y上,坐标x,y取决于键盘输入。

pygame lag
1个回答
1
投票

尝试添加转换方法:background = pygame.image.load("mypicture").convert()。这将提高性能。更多信息在这里[https://www.pygame.org/docs/ref/surface.html#pygame.Surface.convert]如果您想刷新背景,则必须在循环中调用它。

© www.soinside.com 2019 - 2024. All rights reserved.