我想为自己的游戏制作一张背景图片,该图片始终位于玩家角色和敌人的后面。我刚刚输入:
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取决于键盘输入。
尝试添加转换方法:background = pygame.image.load("mypicture").convert()
。这将提高性能。更多信息在这里[https://www.pygame.org/docs/ref/surface.html#pygame.Surface.convert]如果您想刷新背景,则必须在循环中调用它。