2014-11-08 136 views
0

我正在用python编写一个简单的游戏,我需要从bmp/png文件加载一个图像并将其绘制到屏幕上。 我的代码的重要组成部分,是这样的:png在pygame中加载

temp = pygame.image.load("debris.bmp").convert() 
temp.convert_alpha() 
temp.blit(screen, (250,250)) 
pygame.display.flip() 
fps.tick(20) 

所以我期待有一个小砖出现在屏幕上。这不会发生。我让它在blit之后立即绘制一个小图形原语,并且看起来工作正常。这表明我没有绘制它,并且display.flip()运行良好。有什么想法吗?

+0

你转换'temp'两次的原因吗?你可能只需要执行'pygame.image.load(“debris.bmp”)。convert_alpha()'。 – 2014-11-09 11:54:47

+0

运行,但它并没有解决的问题是图像不会出现 – user3423925 2014-11-09 18:06:26

回答

0

好,一个原因,它可能无法正常工作是如何的blit图像在屏幕上,如果你的pygame的窗口被命名为“屏幕”,那么它会是这样

screen.blit(img, (coord1, coord2)) 

这样

0

我可能有点晚,但...

您正试图在您的临时窗口上blit屏幕。

更改行:

temp.blit(screen, (250,250)) 

到:

screen.blit(temp, (250,250))