Python 如何使精灵图像背景显示为透明?
我试图使精灵在我的pygame代码中显示为图像。下面是一个精灵:Python 如何使精灵图像背景显示为透明?,python,pygame,Python,Pygame,我试图使精灵在我的pygame代码中显示为图像。下面是一个精灵: class Enemy(pygame.sprite.Sprite): def __init__(self): super(Enemy, self).__init__() self.surf = pygame.Surface((20, 10)) self.surf = pygame.image.load("Rocket 1.png").convert()
class Enemy(pygame.sprite.Sprite):
def __init__(self):
super(Enemy, self).__init__()
self.surf = pygame.Surface((20, 10))
self.surf = pygame.image.load("Rocket 1.png").convert()
self.rect = self.surf.get_rect(
center=(
random.randint(SCREEN_WIDTH + 20, SCREEN_WIDTH + 100),
random.randint(0, SCREEN_HEIGHT),
)
)
self.speed = random.randint(5, 10)
def update(self):
self.rect.move_ip(-self.speed, 0)
if self.rect.right < 0:
global score
score += 1
self.kill()
类敌人(pygame.sprite.sprite):
定义初始化(自):
超级(敌人,自己)。\uuuuu init\uuuuuuu()
self.surf=pygame.Surface((20,10))
self.surf=pygame.image.load(“Rocket 1.png”).convert()
self.rect=self.surf.get_rect(
居中=(
random.randint(屏幕宽度+20,屏幕宽度+100),
random.randint(0,屏幕高度),
)
)
self.speed=random.randint(5,10)
def更新(自我):
自校正移动ip(-自校正速度,0)
如果self.rect.right<0:
全球得分
分数+=1
self.kill()
它可以工作,但图像显示为黑色背景。图为:
如您所见,图像没有背景,但当我运行代码时,它仍然显示为黑色背景。我使用@mkrieger1给出的第一个链接,发现
.convert\u alpha
有效。谢谢 这回答了你的问题吗?它仅说明如何在该问题中创建具有透明背景的曲面。我正在试着制作一个有图像的。是的,是透明的而不是黑色的。这不是你需要的吗?你试过了吗?你也检查过这些吗,不,self.surf=pygame.Surface((20,10))
,因为在下面的行中,您将self.surf
设置为其他内容。