Программирование на Python. Знакомство с модулем Pygame. Урок 6 презентация

Содержание

Слайд 2

Что будет на уроке сегодня?

Знакомство с новой библиотекой для создания игр —

pygame
Создание и настройка игрового окна
Игровой цикл
Основные составляющие игрового цикла
Спрайты и графика
Отрисовка и анимация

Программирование на Python | Знакомство с модулем Pygame

Слайд 3

Знакомство с pygame

Слайд 4

Установка модуля pygame

Программирование на Python | Знакомство с модулем Pygame

Pygame — это точно

такой же модуль, как и все остальные. Но, в отличие от turtle или random, pygame отсутствует внутри нашего проекта и его мы должны сначала установить! Чтобы это сделать, кликните по вкладке Python Packages внизу вашей среды разработки:

Слайд 5

Установка модуля pygame

Программирование на Python | Знакомство с модулем Pygame

После этого уже можно

будет подключать установленный модуль к нашему проекту с помощью знакомой вам команды import:

import pygame

Напишите в поиске pygame, нажмите на 1 результат и затем на кнопку Install package. Через некоторое время он установится.

Слайд 6

Подключение модуля pygame

Программирование на Python | Знакомство с модулем Pygame

Далее мы должны включить

(или правильнее будет сказать — инициализировать) наш модуль pygame.
Потому что сам по себе просто подключенный к проекту с помощью команды import он пользы не принесет :) Это все равно что купить компьютер и просто поставить его на стол. Пока вы его не включите, он не начнет что-то делать.

pygame.init() # Инициализируем модуль pygame

Слайд 7

Создание и настройка игрового окна

Слайд 8

Параметры игрового окна

Программирование на Python | Знакомство с модулем Pygame

Параметры игрового окна —

это обычные переменные, которые хранят в себе значения. Нам потребуются такие значения, как: ширина и высота окна, частота обновления экрана, и название самого экрана:

Слайд 9

Создание окна с параметрами

Программирование на Python | Знакомство с модулем Pygame

screen — это

просто переменная в которой мы будет хранить наш экран (она нам еще пригодится, поэтому важно сохранить наш экран в переменной, чтобы иметь возможность к нему обращаться потом и производить какие-нибудь действия)
pygame.display.set_mode() — это конструкция, которая создает экран с указанными размерами width и height.

Слайд 10

Заголовок окна

Программирование на Python | Знакомство с модулем Pygame

gameName — это наша переменная

в которой хранится наименование игры (её мы создали уже ранее)
pygame.display.set_caption() — это функция, которая выводит указанное наименование в заголовке

Слайд 11

Иконка окна

Программирование на Python | Знакомство с модулем Pygame

Ищем нужную иконку на сайте:

https://www.klipartz.com/ru
Cкачиваем с размером 64px по высоте! Это важно сделать, потому что бóльший размер иконки у нас не установится:
Переименовываем иконку, чтобы было проще:
Перемещаем иконку в папку с нашим проектом.

Важно! Иконка должна располагаться в той же папке, что и файл с кодом!

Слайд 12

Иконка окна

Программирование на Python | Знакомство с модулем Pygame

pygame.image.load() — сохраняет указанный в

скобках файл в переменную
pygame.display.set_icon() — загружает картинку иконки в заголовок программы

Слайд 13

Перерыв 10 мин

Слайд 14


Игровой цикл

Слайд 15

Зачем нужен игровой цикл

Программирование на Python | Знакомство с модулем Pygame

Именно в игровом

цикле у нас и будут происходить все действия и вся логика игры. Любая игра в принципе представляет из себя один огромный бесконечный цикл. Да-да именно бесконечный!
Конечно, мы будем иметь возможность выйти из неё в любой момент. Но так как никто не знает, когда это произойдет, потому мы изначально и пользуемся бесконечным циклом.

Слайд 16

Создаем игровой цикл

Программирование на Python | Знакомство с модулем Pygame

Создадим переменную, в которую

запишем значение True. А в цикл While поставим эту переменную:

Пока в переменной run будет True (правда), весь код, который будет написан ниже будет работать.
Но как только мы в переменную run поместим значение False (ложь) то наш игровой цикл сразу завершится!

Слайд 17

Контроль времени

Программирование на Python | Знакомство с модулем Pygame

Скорость цикла необходимо контролировать. Поэтому

до цикла создадим таймер, а внутри цикла мы его запустим:

fps — это переменная, которая была создана в параметрах игрового окна

Слайд 18

Игровые события

Программирование на Python | Знакомство с модулем Pygame

События происходят постоянно. Что, если

игрок нажимает кнопку прыжка, а персонаж не прыгает? Это нельзя игнорировать, иначе игрок будет разочарован. Для этого pygame сохраняет все произошедшие события в специальной переменной. А так как данная переменная может содержать в себе много событий, то чтобы пройтись и проверить все из них, нужно воспользоваться циклом for:

Слайд 19

Игровые события

Программирование на Python | Знакомство с модулем Pygame

Внутри данного цикла for проверим

есть ли в переменной event событие закрытия экрана. И если есть, то просто корректно завершим игру:

pygame.QUIT() — это событие, которое происходит, когда мы кликаем по крестику нашего окна. Поэтому, как только оно произойдет, нам нужно завершить игровой цикл — записать в переменную run значение False

Слайд 20


Спрайты и графика

Слайд 21

Цветной задний фон

Программирование на Python | Знакомство с модулем Pygame

Чтобы наш экран

выглядел интереснее давайте зальем его одним из созданных цветов и включим его обновление:

Слайд 22

Переменные с цветами

Программирование на Python | Знакомство с модулем Pygame

Для большего удобства заранее

создадим переменные с основными цветами. Коды цветов можно найти по ссылке

Слайд 23

Загружаем спрайт

Программирование на Python | Знакомство с модулем Pygame

Сначала необходимо загрузить картинку со

спрайтом внутрь нашего проекта:

Затем добавляем код для загрузки спрайта в игру до игрового цикла

Слайд 24

Рамка спрайта

Программирование на Python | Знакомство с модулем Pygame

Обратите внимание, что мы загрузили

картинку, а потом отдельно определили её рамку с помощью функции: get_rect() Потому что всё взаимодействие происходит именно через рамку.

Внимание! Вне зависимости от того, будет ли спрайт круглым или квадратным или иметь сложные формы, рамка спрайта всегда будет прямоугольной! Её размеры будут иметь максимальную ширины и максимальную высоту самого спрайта!

Слайд 25

Отрисовка спрайта

Программирование на Python | Знакомство с модулем Pygame

Спрайты отрисовываются уже внутри

игрового цикла. Так как многие спрайты будут находиться в движении, то каждый раз необходимо будет их отрисовывать в новом месте. Также важно команду для отрисовки спрайта разместить после заполнения заднего фона цветом:

Слайд 26

Полный код программы

Программирование на Python | Знакомство с модулем Pygame

Сюда не влазит, поэтому

посмотреть можно по ссылке :)

Слайд 27

Итоги

Программирование на Python | Знакомство с модулем Pygame

Познакомились с модулем для создания игр

— pygame
Узнали про необходимые элементы для любой игры на pygame
Научились создавать и управлять игровым циклом
Загрузили иконку в нашу игру
Узнали что такое спрайт и как добавить его в игру
Написали код, который запускает игровое окно с нашими настройками

Слайд 28

На следующем занятии:

Добавим анимацию в нашу игру
Научим спрайт двигаться по экрану и отскакивать

от его краев
Изучим, что такое координаты и для чего они нужны в игре
Добавим второй игровой объект в игру и научимся управлять им с клавиш клавиатуры

Программирование на Python | Знакомство с модулем Pygame

Слайд 29

Немного повторим

Слайд 30

С помощью какой команды можно установить сторонний модуль в нашу программу?

Слайд 31

Что такое fps и для чего он нужен?

Слайд 32

Какие действия нужно сделать, если хотим загрузить дополнительный файл в нашу игру?

Слайд 33

Почему спрайт нужно отрисовывать после заливки фона?

Слайд 34

Ваши вопросы

Слайд 35

Спасибо за внимание

Слайд 36

Домашнее задание

Слайд 37

Заполни, пожалуйста, форму обратной связи по уроку

Имя файла: Программирование-на-Python.-Знакомство-с-модулем-Pygame.-Урок-6.pptx
Количество просмотров: 4
Количество скачиваний: 0