Что делают «.subsurface ()», «.convert_alpha ()» и «%»?
Я пытаюсь изучить Pygame, и в учебнике, которому я следую, есть раздел, объясняющий, как анимировать спрайты. Это дает мне спрайт лист, который имеет 8 изображений размером 128x128 каждое, а весь лист размером 1024x128.
Затем он представляет следующий код:
#! /usr/bin/env_python
import pygame, sys
from pygame.local import *
pygame.init()
ZONE = pygame.display.set_mode((400,300))
pygame.display.set_caption("Game Zone")
RED = (255,0,0)
clock = pygame.time.Clock()
counter = 0
sprites = []
sheet = pygame.image.load("spritesheet.gif").convert_alpha()
width = sheet.get_width()
for i in range(int(width/128)):
sprites.append(sheet.subsurface(i*128,0,128,128))
while True:
pygame.display.update()
ZONE.fill(RED)
ZONE.blit(sprites[counter],(10,10))
counter = (counter + 1) % 8
clock.tick(16)
for event in pygame.event.get():
if event.type == QUIT:
pygame.quit()
sys.exit()
Урок очень расплывчат в отношении того, что делают эти строки, поэтому мне интересно:
Что значитsheet.subsurface()
делать? И что означают эти четыре параметра? (Я считаю, что третье и четвертое относятся к ширине и высоте отдельных изображений.)Что значит.convert_alpha()
делать? В учебнике говорится, что он «сохраняет прозрачность», но мне это показалось странным, поскольку я уже использовал изображения с прозрачным фоном, и никому из них не требовалось такое преобразование.Что значит%
делать? я уже знаю, что/
обозначает разделение, но учебник никогда не объяснял%
.