2017-10-23 2 views
2

파이 게임 (Pygame)에서 게임을 만들고 있는데, 이미지를 흰색 배경을 투명하게 만들기 위해 노력하고 있습니다. 연구를하고 set_colorkey 및 convert_alpha를 시도했습니다. 누군가가 왜 이것이 작동하지 않는지 말할 수 있습니까?pygame에서 내 코드에 colorkey 또는 setalpha가 작동하지 않는 이유는 무엇입니까?

class player(pygame.sprite.Sprite): 
def __init__(self,player): 
    super().__init__() 

    if player == 1: 
     self.image = pygame.image.load('Megaman.png') 
     self.image.set_colorkey(white) 

    elif player == 2: 
     self.image = pygame.image.load('Megaman2.png') 
     self.image.convert_alpha() 

이미지는 흰색 배경의 메가 막입니다. 그들은 png 이미지입니다. 색상 화이트

white = 255,255,255) 

이며,이 Megaman의 이미지입니다 : image of megaman

+0

'convert_alpha'의 목적은 이미 투명한 배경을 가지고있는 이미지의 블릿 성능을 향상시키는 것입니다. 이미지에 흰색 배경이있는 경우,'set_colorkey (white)'는 배경색을 제공하고'white' 변수는 실제로 같은 색상입니다. 이미지와'white' 변수를 추가하면 코드를 테스트 할 수 있습니다. – skrx

답변

1

이 사용할 수있는 것처럼 나는, 흰색 배경없이 사진의 .png 파일을 만들려고 제안 convert_alpha(). 나는 그때 더 많은 성공을 발견했다. setcolorkey

Megaman2.png의 흰색 backround을 제거하려면 색상을 제거하지 않으므로 convert_alpha을 사용하지 않는 것이 좋습니다.

편집 : 당신이 white = 255,255,255) 같은 코드가 쓰기나요? 그건 당신이 괄호를 잊어 버린 것처럼 문제를 일으킬 것입니다.

+0

감사합니다. 문제가 해결되었습니다. –

+0

당신을 도와 주어서 기쁘다! – Maximosaur

관련 문제