Глава 20 · Станьте разработчиком игр с Pygame

Создаём персонажей на экране

Первые персонажи — простые фигуры, рисуемые заново на каждом кадре.

Персонажей и объекты в Pygame рисуют прямо на экране каждый кадр — простыми фигурами (кругами, прямоугольниками), как мы делали в Turtle, или готовыми изображениями. Начнём с фигур — они не требуют внешних файлов и отлично подходят для первых игр:

personazhi.py
CVET_IGROKA = (100, 200, 255)
CVET_VRAGA = (255, 80, 80)

x_igroka, y_igroka = 300, 350
x_vraga, y_vraga = 300, 50

# внутри игрового цикла, после screen.fill(...):
pygame.draw.rect(screen, CVET_IGROKA, (x_igroka, y_igroka, 40, 40))
pygame.draw.circle(screen, CVET_VRAGA, (x_vraga, y_vraga), 20)

pygame.draw.rect() принимает кортеж (x, y, ширина, высота)(x, y) это левый верхний угол, как у Canvas в главе 18, а не центр, как у circle().

Rect — прямоугольник как объект
Для более сложных игр Pygame предлагает класс pygame.Rect — он хранит позицию и размер вместе и умеет проверять пересечения (.colliderect()) — то, что понадобится для космического шутера в главе 21.
Практика в Jupyter Notebook
20-03-personazhi.ipynb · рисуем персонажей фигурами
Открыть ноутбук →