star smoothscale rectangle dirtysprite convert collide_rect python transparency pygame

python - smoothscale - Cómo hacer una superficie con un fondo transparente en pygame



pygame star (2)

¿Puede alguien darme un código de ejemplo que cree una superficie con un fondo transparente en pygame?


También puede darle un colorkey, muy parecido a la transparencia del archivo GIF. Esta es la forma más común de hacer sprites. El mapa de bits original tiene la ilustración, y tiene un cierto color como fondo que no se dibujará, que es la clave de color:

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

Las superficies que usan colorkey en lugar de alfa son mucho más rápidas de embrollar ya que no requieren ninguna combinación de matemáticas. La superficie SDL utiliza una máscara de bits simple cuando tiene un conjunto de teclas de color, que se mueve prácticamente sin gastos generales.


Esto debería hacerlo:

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

Asegúrese de que la profundidad de color (32) permanezca explícitamente establecida, de lo contrario esto no funcionará.