Министерство образования Республики Беларусь

Учреждение образования
БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ИНФОРМАТИКИ И РАДИОЭЛЕКТРОНИКИ


Факультет компьютерного проектирования


Кафедра проектирования информационных компьютерных систем

Дисциплина "Объектно-ориентированное программирование"


К защите допустить:

Руководитель курсовой работы
старший преподаватель кафедры

_______________ А.В.Михалькевич

18.05.2024

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

к курсовой работе
на тему

Разработка 2D игры

БГУИР КР 1-40 05 01-10 № 160 ПЗ







Студент
(подпись студента)


Курсовая работа
представлена на проверку
18.05.2024
___________________
(подпись студента)







2024




Реферат

БГУИР КР 1-40 05 01-10 № 160 ПЗ, гр. 814303

, Разработка 2D игры, Минск: БГУИР - 2024.

Пояснительная записка 7848 с., 0 рис., 0 табл.

Ключевые слова:

Предмет Объектно-ориентированное программирование, А.В.Михалькевич

Содержание

Введение

Ни для кого не секрет, что видео игры прочно заняли свою позицию в современной индустрии развлечений. Существуют попытки выделить компьютерные игры как отдельную область искусства, наряду с театром, кино и т.п. Разработка игр может оказаться не только увлекательным, но и прибыльным делом, примеров этому предостаточно в истории. Первые примитивные компьютерные и видео игры были разработаны в 1950-х и 1960-х годах. Они работали на таких платформах, как осциллографы, университетские мейнфреймы и компьютеры EDSAC. Самой первой компьютерной игрой стал симулятор ракеты, созданный в 1942 году Томасом Голдсмитом Младшим (англ. Thomas T. Goldsmith Jr.) и Истл Рей Менном (англ. Estle Ray Mann). Позже, в 1952 году, появилась программа "OXO", имитирующая игру "крестики-нолики", созданная А.С. Дугласом как часть его докторской диссертации в Кембриджском Университете. Игра работала на большом университетском компьютере, известном как EDSAC (Electronic Delay Storage Automatic Calculator). В настоящее время, разработка игры - это многомиллионный процесс, в котором задействована целая команда разработчиков, сложные современные технологии и даже маркетинговые ходы. Так как при написании курсовой работы в начале 2 курса мне пришлось познакомиться с таким языком программирования как Python и несколькими библиотеками, я решил для себя, что хочу попробовать себя в написании игры на Python (заранее понимал, что это достаточно сложная задача, т.к. до этого Python я не изучал). Цель курсовой работы состояла в создании 2D игры на Python при помощи библиотеки pygame. Суть игры состояла в том, что Волк должен бежать, прыгая через препятствия, попутно собирая жизнь и энергию (энергия дает возможность Волку выстрелить). Необходимо было реализовать красивый и простой интерфейс меню для пользователя, где будет кнопка, по нажатии которая запускается сама игра, и кнопка выхода из игры. Также требовалось создать красивый, удобный и интересный интерфейс главного окна самой игры. Согласно задачам, которые я себе поставил - необходимо написать игру «Ну Погоди» на языке Python. Игра должна быть разработана как приложение ОС Windows. Предполагаемый размер поля 800х600 пикселей. Необходимо создания двух окон (меню и главное окно игры), реализовать кнопки перехода с меню в основное окно игры и запуск игры соответственно. Стояла задача прорисовки анимации бега самого Волка, также добавление на экран фона, препятствий и доп. ресурсов. На экране должен был отображаться счет (количество пройденных препятствий), количество жизней и энергии. В ходе выполнения работы я решил добавить Зайца, который будет вылетать из верха экрана и атаковать Волка (на данный момент времени реализация убийства Зайца реализована, а отнимание жизни у Волка – нет). Также должно быть предусмотрено звуковое сопровождение в меню, игре, при ударе об препятствие, а также при получении жизни или энергии. Соответственно должна быть реализована пауза для остановки игры. В дальнейшем планируется улучшать игру допустим выбором персонажа, уровня, оружия и т.д. А также добавить таблицу рекордов, которые будут храниться в файле.

Заключение

Целью курсовой работы было создание 2D игры на языке программирования Python. В ходе выполнения проекта были изучен язык Python (ранее не был я ним хорошо знаком) и работы с ним в среде разработки PyCharm Community. Для разработки данной игры требовалось решить множество задач, вследствие чего было проанализировано и изучено большое количество информации об классах, объетах, логики реализация физического мира. Также была изучена информация о работе со звуком, изображениями и текстом. Подробно был изучен вопрос дополнительных библиотек и модулей (необходимых для работы с изображениями, звуком и т.д.), в частоности самой главной библиотекой для работы - Pygame. Также было установлена модель проекта и составлено его описание. Были изучены архитектурные шаблоны проектирования, в частности MVC. Также необходимо было изучить различный шаблоны проектирования в Python и определиться с выбором. Была установлена библиотека Pygame, позволяющая создание графического интерфейса, для моделирования 2D игры. В дальнейшем был разработан и реализован пользовательский интерфейс и функционал работы самой игры. Убедившись в корректности работы игры после пройденных тестов, можно сказать, что результат курсовой работы «Разработка 2D игры» полностью соответствует всем исходным требованиям.

Список использованных источников

1. [url] Ссылка на githib https://github.com/Valery228/game

Приложения

1. [электронный документ] 5ec7b29c65acb_Записка.docx
2. [электронный документ] 5ec7b44793675_Задание.docx