Pergunta

Alguém pode me dar algum código de exemplo que cria uma superfície com fundo transparente em pygame?

Foi útil?

Solução

Isso deve fazê-lo:

image = pygame.Surface([640,480], pygame.SRCALPHA, 32)
image = image.convert_alpha()

Certifique-se de que a profundidade de cor (32) estadias explicitamente definido o mais isto não vai funcionar.

Outras dicas

Você também pode dar-lhe um colorkey, bem como a transparência arquivo GIF. Esta é a maneira mais comum de fazer sprites. O bitmap original tem a obra de arte, e tem uma determinada cor como pano de fundo que não vai ser desenhado, que é o colorkey:

surf.set_colorkey((255,0,255)) // Sets the colorkey to that hideous purple

As superfícies que usos colorkey em vez de alfa são muito mais rápidos para blit uma vez que não requer qualquer matemática mistura. A superfície SDL usa uma simples máscara de bits quando se tem um conjunto colorkey, que blits praticamente sem sobrecarga.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top