Гра на Pygame з нуля / Урок #1 – Розробка ігор на Python для початківців
Відеоурок
Корисні посилання:
- Курс з мови ;
- Офіційний сайт ;
- Встановлення .
Інформація про Pygame
Сама бібліотека вперше опублікована у 2000 році. Задум бібліотеки полягав у тому, щоб дати змогу будь-якому розробнику створити свою гру за допомогою мови програмування Python.
З плином часу можна сказати, що бібліотека виправдала очікування і зараз на її основі ви дійсно можете створити гру, причому зробити це відносно швидко і якісно.
Додатки, написані на PyGame, можуть спокійно працювати на Android та ПК. Підтримки iOS тут немає через закритість самої платформи iOS для сторонніх розробників. Ви можете написати код один раз, створити гру і пізніше запускати її як на комп’ютері, так і на Android-пристроях.
Як роблять ігри?
Оскільки в курсі ми будемо розробляти ігри, то логічно спершу зрозуміти, як взагалі працюють ігри на ПК, телефонах чи інших пристроях.
Раніше ми вже робили відео з детальним розбором того, як працює комп’ютер і яким чином він дозволяє відобразити зображення на екран, а згодом — відео і саму гру. Якщо вас цікавить детальніший розбір, то можете переглянути це відео:
Щоб зрозуміти, що таке гра — потрібно зрозуміти, з чого вона складається. Класична 2D-гра складається з безлічі зображень. Наприклад: основний гравець, задній фон, вороги тощо. Якщо ви почнете динамічно змінювати ці картинки, то отримаєте анімацію, а якщо почнете рухати їх за координатами — отримаєте пересування. Тобто в базовому розумінні гра складається з картинок, які або змінюються, або переміщуються.
Також до картинок додаються обробники подій. Таким чином ви можете натиснути на картинку, навести на неї мишку чи зробити якусь іншу дію. Відстеживши дію, ви можете виконати будь-який функціонал при взаємодії користувача з об’єктом у грі.
Це і є базовий опис процесу відображення ігор комп’ютером.
На що здатен Pygame?
Pygame дозволяє будувати ігри різного жанру з різним набором функцій. Головне, що робить бібліотека – дозволяє вам відобразити зображення на екрані вашого ПК. Відобразивши якесь зображення, ви можете почати рухати його за координатами — і отримаєте ефект руху в грі. Або ж ви можете почати динамічно змінювати зображення одне за одним — і отримаєте ефект анімації.
Отже, основна функція – вона дозволяє зручно і швидко показати зображення на екрані, а далі дозволяє виконувати дії з цим зображенням.
Це, звісно, лише частина того, що вміє Pygame. Крім цього, ви можете додавати звуки, створювати тверді об’єкти, додавати фізику до об’єктів, відстежувати зіткнення, виводити текстову інформацію і виконувати безліч інших операцій, необхідних для побудови гри.
Приклади ігор
Починати вивчення якоїсь бібліотеки без розуміння того, що ви зможете на її основі створити – справа не мотивуюча. Тому спершу пропонуємо подивитися на приклади тих ігор, що були розроблені на основі мови Пітон і бібліотеки Pygame.
Такі проєкти не можуть похизуватись графікою і функціями як в іграх класу ААА, але попри це вони можуть бути цікавими з точки зору свого функціоналу та дій у грі. Однією з таких ігор є Historical Wargame Simulator. Це гра в жанрі стратегії, де у вас набір із безлічі функцій і дій. Дивлячись на цю гру, навіть складно усвідомити, що вона створена лише завдяки мові Python.
Таких проєктів дуже багато. Усі вони в основі своїй є простими іграми.
Наведемо приклад кількох:
- гра TRUNKMAN з реально крутою графікою та цікавою ідеєю;
- гра Necrostation, виконана в дусі класичних олдскульних ігор із купою анімацій;
- гра Gleamshroom, де вам належить грати за гриб. У грі потрібно долати різні перешкоди і в кінці дістатися до кінцевої точки;
- гра Planyt – класичний платформер із безліччю анімацій, гарним дизайном і цікавою ідеєю;
- гра Explon’t, яка схожа на жанр платформера. У ній також багато графіки, гарний дизайн, цікавий функціонал і насичене зображення.
І от подібних проєктів, створених на Pygame, дуже і дуже багато. Багато з них представлені на самої бібліотеки Pygame, тож можете зацінити всі ці ігри там.
План курсу
Протягом курсу ми з вами з нуля почнемо вивчати бібліотеку Pygame. Ми вивчимо весь процес створення ігор: від порожнього екрана і до створення гри з графікою, анімаціями, дизайном, звуками та механікою.
У підсумку ви розробите невелику мобільну гру, де у вас буде основний гравець, вороги та безліч ігрових дій.
Перш ніж перейти до вивчення самого курсу, вам варто . Без базових знань цієї мови вам буде складно зрозуміти код. Вам не потрібно досконало знати мову. Навпаки, ви можете знати її зовсім поверхнево — і цих знань вам вистачить для проходження курсу з Pygame.
Додаткові курси
На нашому сайті ви знайдете додаткові курси з теми мови Python. Якщо вас цікавить повне вивчення мови та її фреймворків, то рекомендуємо вашій увазі програму навчання: «».
У ході програми ви вивчите саму мову Пітон, навчитеся працювати з базами даних, створювати застосунки з графічним інтерфейсом, працювати з даними, створювати телеграм-ботів і будувати повноцінні вебсайти на базі фреймворку Django.
Завдання до уроку
На що здатна бібліотека PyGame? Які функції вона надає і що ви можете отримати під час її використання?
Бібліотека PyGame дає можливість вам створювати ігри як під ПК, так і під Андроїд.
Ви можете прописати весь інтерфейс програми, всю анімацію, а також весь функціонал самої гри використовуючи лише одну цю бібліотеку.
Велике завдання за курсом
Вам необхідно оформити передплату на сайті, щоб мати доступ до всіх великих завдань. У завдання входить методика рішення, а також готовий проект з відповіддю до завдання.
PS: подібні завдання доступні при підписці від 1 місяця
Також варто подивитися