Добавить в корзинуПозвонить
Найти в Дзене
Old Programmer

Python. Программирование с использованием библиотеки pygame. Спрайты

Это канал Old Programmer, доброго дня. Тематическое оглавление найдете здесь. А здесь все мои материалы о языке программирования Python. Здесь раздел о библиотеках Python. И, наконец, раздел о библиотеке pygame. Другие статьи о библиотеке pygame Пример использования простейших спрайтов в pygame Спрайтами обычно называют некоторое изображение на экране, управляемое с помощью программы. Спрайт не обязательно должен быть не большой фигуркой или изображением. Любое изображение может рассматриваться как спрайт. Важно лишь то, что это изображение рассматривается как единое целое. На самом деле, мы уже использовали спрайты в предыдущих наших статьях. Для имитации движения использовались возможности pygame, когда содержимое экрана формируется на теневом экране, а потом быстро отображается на видимый. Но сегодня мы рассмотрим специальные средства для управления спрайтами. Это группировка и возможность обработки взаимодействия спрайтов друг с другом. Для это используется класс pygame.s
Оглавление

Это канал Old Programmer, доброго дня. Тематическое оглавление найдете здесь. А здесь все мои материалы о языке программирования Python. Здесь раздел о библиотеках Python. И, наконец, раздел о библиотеке pygame.

  • Список разделов канала Old Programmer, канала о программировании и программистах

Другие статьи о библиотеке pygame

Пример использования простейших спрайтов в pygame

Спрайтами обычно называют некоторое изображение на экране, управляемое с помощью программы. Спрайт не обязательно должен быть не большой фигуркой или изображением. Любое изображение может рассматриваться как спрайт. Важно лишь то, что это изображение рассматривается как единое целое. На самом деле, мы уже использовали спрайты в предыдущих наших статьях. Для имитации движения использовались возможности pygame, когда содержимое экрана формируется на теневом экране, а потом быстро отображается на видимый.

Но сегодня мы рассмотрим специальные средства для управления спрайтами. Это группировка и возможность обработки взаимодействия спрайтов друг с другом. Для это используется класс pygame.sprite.Sprite и метод pygame.sprite.Group().

Рисунок 1. Используемая в программе шаблон для спрайта - мяча.
Рисунок 1. Используемая в программе шаблон для спрайта - мяча.

Программа, демонстрирующая движение множества мячей в заданных границах (см. Рисунок 2) представлена в pg4005.py. В качестве шаблона используется изображение мяча (см. Рисунок 1), который мы уменьшаем с помощью pygame.tranform.scale.

В первую очередь обратим внимание на то, что спрайты можно объединять в группы. Это очень удобно, так как позволяет выполнять однотипные операции сразу над несколькими спрайтами. В нашей программе три группы спрайтов: all_sprites - все мячи, движущиеся по экрану, v_border - две вертикальные границы, h_border - две горизонтальные границы области. Для проверки столкновения мячиков с границами используется метод spritecollideany . Еще один важный момент

all_sprites.draw(sc) # отрисовка всех спрайтов - мячей на теневом экране
all_sprites.update() # обработка движения и столкновения спрайтов

Все остальные механизмы, имеющиеся в программе для вас уже знакомы и не требуют особых пояснений, кроме комментариев в самой программе.

Пока любители языка Python. Подписываемся на мой канал Old Programmer. И не забывайте ставить лайки.

Рисунок 2
Рисунок 2