Je suis en train de blit une image PNG sur une surface, mais la partie transparente de l'image devient noir pour une raison quelconque, voici le code simple:Comment est-ce que je blit un PNG avec une certaine transparence sur une surface dans Pygame?
screen = pygame.display.set_mode((800, 600), pygame.DOUBLEBUF, 32)
world = pygame.Surface((800, 600), pygame.SRCALPHA, 32)
treeImage = pygame.image.load("tree.png")
world.blit(treeImage, (0,0), (0,0,64,64))
screen.blit(world, pygame.rect.Rect(0,0, 800, 600))
Que dois-je faire pour résoudre le problème ? L'image a une transparence alpha, je l'ai ouverte dans PhotoShop et l'arrière-plan devient transparent, pas noir ou blanc ou toute autre couleur.
Nous vous remercions pour votre soutien :)
pygame.image.load aura déjà alpha lorsqu'il est chargé à partir d'une image avec alpha. –
@PeterShinners, appelant 'convert()' ou 'convert_alpha()' est toujours préférable car ne pas le faire signifiera que les blits nécessiteront tous une conversion en format pixel, ce qui est extrêmement lent. – congusbongus