2015-02-07 44 views
0

我的pygame遊戲中沒有透明PNG圖像的問題。遊戲和blitted圖像不透明

我加載PNG圖像,並將它們blit到屏幕上。我有一個遊戲屏幕和圖像的白色背景的黑暗背景。雖然,blitting的圖像在白色背景下可見。我希望圖像是透明的,但我無法實現。

我無法在互聯網上找到準確的信息,並解決了我的問題。

有沒有什麼機會有人可以指引我進入正確的方向並審查我的比賽?如何實現圖像的透明度?

鏈接到Python代碼和圖片: https://www.dropbox.com/s/ng99rqg4ur76msp/game.7z?dl=0

圖片這說明我的問題: Picture1

遊戲背景顏色:黑色。圖像背景顏色:白色。如何讓圖像背景變得透明,因此無論遊戲背景顏色如何都不可見?

回答

2

我不明白你的問題,但如果你的形象有一個透明背景,你只需要使用

圖像= pygame.image.load( 「image.png」)。convert_alpha()

如果有你可能需要設置像

圖像= pygame.image.load( 「image.png」)colorkey的白色背景。()轉換

image.set_colorkey((255,255,255))

+0

在這兩種情況下,如果我有一個黑色的屏幕背景圖像加載一個白色背景可見。如果我使用convert_alpha()或set_colorkey((255,255,255)),這沒有幫助。請參閱此鏈接,看看有什麼問題:https://www.dropbox.com/s/ftz90nbgwaqa87w/problem.png?dl=0 – BlueTomato 2015-02-08 11:51:30

+0

我試過了:image = pygame.image.load(「image.png 「).convert()而不是convert_alpha()。我做了image.set_colorkey((255,255,255)),它的工作原理。 Keltusamor你指出我正確的方向,所以你的答案幫助我。謝謝。 – BlueTomato 2015-02-08 11:58:18

+0

是的,忘了提到這一點。如果你想設置一個colorkey,你只需要轉換()表面 – Keltusamor 2015-02-08 21:22:54