Загрузил Леся Грачева (L i t t L e _ B 1 t c h)

Проект Создание Компьютерных игр

реклама
СОЗДАНИЕ КОМПЬЮТЕРНОЙ ИГРЫ
Автор: Богатырёв Иван
МКОУ Ярковская СОШ им. Романова К.Г.
10 класс,
Научный руководитель:
Адаменко Галина Васильевна,
МКОУ Ярковская СОШ им. Романова К.Г.
Учитель информатики и математики
С. Ярки, 2019
Оглавление
Введение ................................................................................................................... 2
Глава 1. История и основные понятия компьютерных игр ................................. 4
1. 1. История появления компьютерных игр...................................................... 4
1.2. Что же такое компьютерная игра ................................................................. 6
Глава 2. Практическая часть................................................................................... 7
2.1. Движок Unreal Engine ................................................................................... 7
2.2. 3D Rad ............................................................................................................. 8
2.3. Kodu Game Lab ............................................................................................ 12
Заключение............................................................................................................. 14
Список источников ...................................... Ошибка! Закладка не определена.
Приложение ........................................................................................................... 16
Приложение 1...................................................................................................... 16
Приложение 2...................................................................................................... 16
Приложение 3...................................................................................................... 17
Приложение 4...................................................................................................... 17
Приложение 5...................................................................................................... 18
Приложение 6...................................................................................................... 18
Приложение 7...................................................................................................... 19
Приложение 8...................................................................................................... 19
Приложение 9...................................................................................................... 20
Приложение 10.................................................................................................... 20
Приложение 11 .................................................................................................... 21
Приложение 12.................................................................................................... 21
Приложение 13.................................................................................................... 22
Приложение 14.................................................................................................... 22
Приложение 15.................................................................................................... 23
Приложение 16.................................................................................................... 23
Приложение 17.................................................................................................... 24
1
Введение
Люди никогда не проявляли большего таланта, чем в изобретении игры.
Готфрид В. Лейбниц
В нашей школе уже несколько лет подряд проходит Всероссийская
акция "Час кода", в этом году она называлась "Урок Цифры".
В ней
школьники узнают, как цифровой мир меняет профессии, почему уметь
программировать так же важно, как уметь читать. Акция направлена на
популяризацию изучения информатики и программирования, а также
повышения престижности IT-профессий, которые уже сегодня вошли в число
наиболее востребованных и высокооплачиваемых на рынке труда.
Мне было интересно на этом уроке, ведь я управлял роботом, который
выполнял команды, которые я ему давал. Я легко прошел 10 уровней,
которых мне не хватило на урок. Мне стало интересно смогу ли я сам создать
игру, которая была бы интересна не только мне, но и моим сверстникам.
Актуальность: в наши дни огромное количество самых разных по
интересам людей частенько поигрывают в компьютерные игры, причем это
не только скучающие школьники или прогульщики-студенты. Среди игроков
встречаются и бизнесмены, и политики, и домохозяйки, и инженеры, и
художники - в целом абсолютно разные люди. Всех их объединяет одно желание испытать в виртуальных мирах что-то новое, неизведанное,
попытать удачу и получить наслаждение как от игрового процесса, так и от
достигнутых в игре результатов.
Проблема: современные дети увлечены различными компьютерными
играми, и не задумываются над тем, где они могут применить свой
накопленный опыт.
Гипотеза: Я предполагаю, что любой школьник может создать свою
игру, при этом он может не знать азов программирования.
2
Цель исследовательской работы: создать свою игру, интересную
сверстникам.
Задачи:
1.Узнать историю возникновения компьютерных игр;
2. Рассмотреть технологию создания компьютерной игры;
3. Сравнить и выбрать для себя приложение для создания игр;
4. Изучить выбранную программу и создать в ней игру;
5. Протестировать игру среди своих друзей и одноклассников;
6. Провести опрос;
7. Сделать вывод о подтверждении или опровержении выдвинутой
гипотезы.
Метод
проведения
систематизация
компьютерных
исследования:
материала:
играх
научных,
(книги,
сбор,
анализ,
обобщение
научно-популярных
журналы,
интернет-сайты),
статей
и
о
просмотр
обучающих видеороликов, создание своей игры, опрос учащихся, обработка
данных.
3
Глава 1. История и основные понятия компьютерных игр
1. 1. История появления компьютерных игр
Компьютерные игры стали настоящим культурным феноменом возникнув как незамысловатый плод творческой мысли программистов, они с
каждым годом приобретали всё большую популярность - и развились до того,
что
стали
отдельной
специфической
спортивной
дисциплиной
-
киберспортом. По всему миру выросли компании по разработке игр, а работа
в этой сфере стала розовой мечтой для многих юных умов, желающих
создавать любимые компьютерные игрушки. Некоторые игровые серии стали
культовыми - например, DOOM, Fallout, Драгон Квест, Final Fantasy, Контра,
WoW, Starcraft, NFS, GTA. Как минимум про одну из них наверняка слышал
любой человек, который хоть раз сталкивался с компьютером.
Попытки
создать
простенькие
игры
на
цифровых
устройствах
предпринимались ещё до начала Второй Мировой войны, а в 1947 уже была
запрограммирована первая электронная игра, монитором для которой служил
экран военного радара - это был симулятор вражеских ракет. Однако
считается, что первой компьютерной игрой стала игра "Крестики нолики",
которую в одиночку сделал А.С. Дугласом в 1952 году, с минимально
возможным полем 3х3 клетки (Приложение 1). Сегодня это может показаться
смешным, но в тот момент это было революционным новшеством. Крестики
нолики - одна из самых популярных игр для маленьких детей.
В 1958 году в Нью-Йорке Уильям Хигинботэм порадовал пользователей
новым опытным образцом. Им стала видеоигра «Теннис на двоих».
Посетители его лаборатории могли поиграть в теннис на цифровом корте,
управляя своими "ракетками" с помощью джойстиков. Несмотря на простоту
функционала, эта игра стала очередным прорывом в нарождающемся мире
геймеров.
Однако настоящий виртуальный взрыв произошел в 1962 году. Компания
DEC разработала игровой контроллер и вместе с компьютером PDP-1 стала
распространять как тестовую программу не имеющую прежде подобий игру
4
SpaceWar. Это была первая компьютерная игра, ставшая по-настоящему
популярной.
Компьютеры в то время были еще громоздкими. Прошло почти 10 лет до
того момента, когда возникли компактные платы на транзисторных схемах. В
мае 1972 года была представлена Magnavox Odissey — первая игровая
приставка для телевизора.
С этого момента игровой компьютерный мир стал продвигаться
семимильными шагами. Развитие шло в четырех основных направлениях:
непосредственно
компьютеры,
телевизионные
игровые
приставки,
электронные игровые автоматы и карманные электронные игры.
В 1979 году американской компанией Milton Bradley была выпущена
первая карманная игровая консоль, в которую было вложено сразу 12 игр. В
1980 году японская Nintendo, модернизировав игры на калькуляторе,
осуществила массовый выпуск простейших монохромных консолей с серией
игр Game&Watch. В Советском Союзе эти консоли стали прототипом
продукции фирмы «Электроника» — игр «Тайны океана» и «Ну, погоди!»
(Приложение 2), которыми были увлечены буквально все.
По мере развития технологий, виртуальный мир наполнялся звуком,
совершенствовалась графика, добавлялось видео. Сегодня каждый желающий
может скачать и установить игры на любой вкус: стрелялки и драки; гонки и
спортивные
игры,
симуляторы;
аркады,
стратегии
и
приключения;
логические, обучающие и развивающие игры.
Подобрать игру можно как для взрослого, так и для подростка, или даже
для ребенка, который едва научился сидеть.
Процесс развития компьютерных игр уже нельзя остановить. Они
становятся все более разнообразными и захватывающими. На смену
персональным играм пришли игры браузерные, где в онлайн-режиме можно
общаться, сообща решать пусть виртуальные, но важные задачи. Такие игры,
помимо развлечения, дают возможность осваивать и развивать навыки
общения, социализации, расширять кругозор. Мир компьютерных игр по5
прежнему дает больше положительных эффектов, нежели отрицательных.
Важно лишь правильно выбирать для себя подходящие игры и верно
дозировать количество времени, проведенного у монитора.
1.2. Что же такое компьютерная игра
Компьютерная игра —это компьютерная программа, которая служит для
организации игрового процесса (геймплея), связи с партнёрами по игре, или
сама выступает в качестве партнёра.
В настоящее время в ряде случаев вместо "компьютерная игра" может
использоваться "видеоигра", то есть данные термины могут употребляться
как синонимы и быть взаимозаменяемыми. В компьютерных играх, как
правило, игровая ситуация воспроизводится на экране дисплея или обычного
телевизора (в этом случае компьютерные игры одновременно являются и
видеоиграми), но в то же время компьютерная игра может быть звуковой.
Видеоигры могут создаваться на основе фильмов книг; есть и обратные
случаи. С 2011 года компьютерные игры официально признаны в США
отдельным видом искусства.
Компьютерные игры оказали столь существенное влияние на общество,
что в информационных технологиях отмечена устойчивая тенденция к
геймификации для неигрового прикладного программного обеспечения.
Игровой процесс или геймплей (англ. gameplay) — компонент игры,
отвечающий за интерактивное взаимодействие игры и игрока. Геймплей
описывает, как игрок взаимодействует с игровым миром, как игровой мир
реагирует на действия игрока и как определяется набор действий, который
предлагает игроку игра.
6
Глава 2. Практическая часть
Первый вопрос, которым был я озадачен: "В какой же программе мне
начать создавать свою игру?". Ответ на него я узнал, посмотрев рейтинги
лучших программ для разработки игр (Приложение 3), я выбрал Unreal
Engine 4 так как в настоящее время это один из наиболее мощных движков
для разработки игр любых жанров, начиная от простых 2D и до консолей
нового поколения.
Второй: "В каком жанре и какой сюжет выбрать для видеоигры". Для
ответа на него, я провел опрос среди школьников с 5-11 класс, что бы
выяснить в какие игры они играют, так как хотел, чтобы и моя игра
пользовалась спросом. Из опроса выяснил, что большинство играют в
шутеры (стрелялки) и гонки.
2.1. Движок Unreal Engine
Итак, Unreal Engine 4 — это набор инструментов для разработки игр,
имеющий широкие возможности. В настоящее время Unreal Engine 4 один из
наиболее мощных на рынке инструментов для создания видеоигр.
Доказательством этого является то, что его использовали наиболее
популярные коммерческие игры, такие как Daylight, Dead Island 2, Space
Hulk: Deathwing, Fable Legends, и Tekken 7 и т.д.
Зайдя на официальный сайт https://www.unrealen gine.com/en-US/what-isunreal-engine-4, я скачал программу-ланунчер Epic Games Launcher Unreal
Engine 4. Нажал кнопку Get Started Now. Затем завел аккаунт в Epic Games.
После того, как она была скачена, установил программу и запустил, ввел
данные от аккаунта и нажал кнопку Sign In. После входа выбрал вкладку
Unreal Engine и запустил процесс загрузки файлов движка с их последующей
установкой, выбрав соответствующую кнопку в диалоговом окне. Во вкладке
магазин Unreal Engine 4 можно приобрести и загрузить множество
дополнений к ней, как бесплатно, так и платно (Приложение 4).
И вот программа Unreal Engine скачена и установлена. Я начал создавать
свой первый проект, нажал на кнопку Launch. Началась загрузка игрового
7
движка и подготовка к работе (у меня это заняло около 10 минут). По
окончанию загрузки появилось окно менеджера проектов (Приложение 5).
Из обучающих видео я узнал, что чтобы создать свою первую игру, не
используя программирования, нужно переключиться на вкладку Blueprint.
Далее, не стал трогать настройки, нажал кнопку Create Project. И вот меня
постигло разочарование. Мой компьютер загудел, как самолет, а затем завис.
Пробыв в таком состоянии примерно полчаса, я сделал вывод, что мой
старенький компьютер не потянет это мощное и тяжелое приложение. Очень
жаль, ведь в нем очень качественная и профессиональная графика
(Приложение 6).
Я не унывал, и решил, что всё же добьюсь поставленной цели, поэтому
выбрал сразу две программы: 3D Rad и Kodu Game Lab, которые во многом
уступают Unreal Engine 4.
2.2. 3D Rad
В программе 3D Rad я захотел сделать гонки так, как в них играют
большинство. В этом приложении тоже можно создавать качественные
трехмерные
игры.
В
распоряжении
утилиты
имеется
множество
интегрированных текстур и моделей (Приложение 7), тени и эффекты, с
помощью которых можно создавать качественные продукты. При этом
знание языков программирования и скриптов не требуется.
Приложение я опять же скачал с официального сайта производителя,
http://3drad.org/.
Приложение обладает довольно понятным интерфейсом, но все же для
начала я познакомился с несколькими видеоуроками, а так же с пошаговыми
уроками в интернете.
Рабочее окно приложения разделено на несколько частей. В верхней
части размещено меню команд. Сразу под ним находятся редактор и окно
объектов. Программа располагает встроенными демо-примерами, с которых
лучше начать ознакомление. Для этого нужно перейти в меню Project и
выбрать команду Open. Здесь следует открыть демо-трек с расширением
8
3DR. Чтобы запустить, необходимо нажать на пробел. Для остановки следует
воспользоваться кнопкой Escape.
Для создания своего проекта, запускаем приложение добавляем объект
"Terrain" (территория, местность). Открываем меню "Object", в нем находим
кнопку "Add" или с помощью горячих клавиш Ctrl+A. Должно открыться
окно с выбором нужного объекта (Приложение 7). Выбираем "Terrain",
добавляем. В правой части экрана есть список объектов, "Terrain" должен там
появится. Нажимаем на него 2 раза, откроется окно со свойствами объекта:
есть группа "Position", там определяется позиция объектов.
И группа галочек: "Visible at start" - отвечает за видимость объекта при
старте.
 "Fast Rendering" - Как я понял, изменение качества на более плохое, для
слабых компьютеров.
 "Cast Shadows" - объект будет иметь нормальную тень.
 "Receive Shadows" - объект будет пропускать сквозь себя тени, т.е
игнорировать тени.
 "Igrone point lights" - объект будет игнорировать точечные источники
света (будет игнорировать объект "Point Lights").
 "Visible in reflections" - объект будет виден в отражениях (воды, машин
и т.д).
 И "Collision detection" - объект не будет пропускать других объектов
сквозь себя (будет иметь столкновение при контакте).
Есть кнопка под рисунком модели объекта "Change", можно изменить
модель объекта.
Для перемещения объектов есть стрелки, нажимаем на них и двигаем
объекты.
Создал объект "Car".
Теперь нужно привязать объекты "G-Force" и
"Car", что бы машина ездила, для этого нажал один раз на один из этих двух
объектов и поставил галочку на второй, не выделенный объект. Таким
образом я привязал объект "Car" к "G-Force".
9
Что бы машина не пролетала сквозь "Terrain", в свойствах поставил
галочку "Collision detection", и привязал "Terrain" к "Car" (Приложение 8).
Далее нужно привязать камеру к машине и к территории. В свойствах
камеры, есть группа "Filter", в которой указываются эффекты для камеры,
например, яркость (bloom). И есть главная группа - "Parametrs" с помощью,
которой можно настраивать то как камера будет следовать за вами, на сколько
сильно будет крутится, отдалятся от вас. Есть группа настроек "ViewPort",
имеет много интересных возможностей, можно, например, сделать для
машины зеркало заднего обзора. Группа "Shaking\itensity" отвечает за
поведение камеры, можно сделать, чтобы камера тряслась или крутилась. Для
того чтобы камера "летала" за машиной нужно привязать ее к машине, и в
настройках камеры вписать в "Translation speed" цифру 1. После чего камера
стала "ездить" за машиной.
Далее для объекта колесо, с помощью клавиши Shift и курсора мыши
выбрав центр колеса, добавил "SkinMesh". В настройках выбрал модель
объекта колесо. Привязал его к машине. И так со всеми колесами. После
этого при запуске игры, колесо будет крутится. После чего в настройках
машины, поставил галочку "Hide wheels geometry". Колеса машины исчезли,
остались только объекты "SkinMesh", для того чтобы "надеть" его на саму
машину, точно также как с колесом, зажал Shift и выбрал мышкой на "тело"
машины, добавил "SkinMesh" и в его настройках изменил его модель на
машину, после так же привязал "SkinMesh" машины к самой машине. Если
"SkinMesh" машины встал не той стороной, нужно просто повернуть его с
помощью стрелок, так же можно менять размер "SkinMesh" машины с
помощью стрелок с надписью "Scale".
Добавил и соединил все детали для трассы и финиша (Приложение 9).
Еще я научился добавлять туман, пускать огонь и другие спецэффекты. Очень
долго разбирался с меню для самой игры, так как нужно было добавить
таймер, счет количества кругов, управление. Для помощи, я воспользовался
готовым проектом меню, которое идет с самой программой 3D Rad. Вот игра
10
была готова, я сохранил свой проект. Осталось теперь его переформатировать
в игру. Для этого запустил второй ярлык, который устанавливается с 3D Rad это 3D Rad Compiler (Приложение 10). Нажал на Add Project, выбрал свой
готовый проект и открыл его, далее выбрал кнопку Compile. Нажал на
выскакивающих меню, куда нужно сохранить, затем вышло окно, в котором
нажал "Да", и мне открылась папка, в которую сохранилась игра. Для запуска
нужно нажать на Untitled, затем "Ок" и вот пошел запуск игры. Поиграв сам и
проверив, всё ли правильно сделано, я предложил опробовать ее свои
однокласникам (Приложение 11). Мне было приятно слышать их вопросы,
как и в какой программе она сделана, а так же восторенные отклики, что им
моя версия «Гонок» понравилась.
После работы в этом приложении, я сделал выводы: что интерфейс
программы довольно простой по структуре. Из отрицательных моментов
можно выделить тот факт, что программа способна работать только на одной
операционной системе. Кроме того, приложение не способно создавать
профессиональные игры, поскольку располагает ограниченным набором
функций для этих целей. Еще мне было очень сложно работать в приложении
без русскоязычного меню.
Плюсы в 3D Rad:
1.
Небольшой размер установочного файла;
2.
Развитые средства моделирования анимации;
3.
Глубокая настройка текстур локаций и объектов;
4.
Содержатся готовые шаблоны с локациями и персонажами;
5.
Среда разработки 3D игр любого жанра для Windows и Mac OS;
6.
Поддержка внешних звуковых эффектов, скриптов и дополнений.
В общем, 3D Rad – одна из самых простых в использовании утилит для
создания игр для компьютера. Рекомендуется начинать реализовывать себя в
качество монтажера игр именно с нее. После этого можно переходить к
использованию более продвинутых программ.
11
2.3. Kodu Game Lab
Ну и третья программка, которой стала Kodu Game Lab. Это отличный
вариант для создания компьютерных игр разных жанров без наличия
специфических знаний. Отличается наличием мощного конструктора
локаций, уровней и объектов. Обеспечивает комфортный процесс разработки
двумерных и трехмерных моделей.
В ней я захотел попробовать сделать стрелялку. Программу также
скачал в интернете. Запустив ее, выбрал готовый мир Shooting Fish
(Приложение 12), в нем уже были добавлены объекты рыбки, но я еще
добавил пару штук и дописал, что они должны делать, после добавил объект
Kodu (Приложение 13), можно было выбрать любой другой, например
робота, это роли не играет. Затем, нажав на Kodu и выбрав из списка меню
«Программа» (Приложение 14), прописал для своего объекта команды
(Приложение 15). Теперь мой Kodu может двигаться вперед, вправо, влево, а
еще он может стрелять в рыбок ракетами. Проверил все ли правильно
(Приложение 16). Ошибок не было, поэтому я экспортировал этот мир. На
рабочем столе появился ярлычок на саму игру Shooting Fish, by Guest, теперь
не нужно заходить в Kodu, а сразу запускать игру.
Результат своего творения, я решил дать протестировать учащимся с 5-7
классы. Так как она очень простая и примитивная. Дети легко справились с
поставленной задачей, особенно мальчики (Приложение 17)
В работе с этой программой я сделал следующие вывод: она больше
подходит для младших школьников, простая для обучения, опять же
большой минус, что она работает только на одной системе.
Плюсы в Kodu Game Lab:
1.
Интеграция с Visual Studio 2010;
2.
Хранение данных в облаке Kodu;
3.
Наличие удобной таблицы событий;
4.
Обладает открытым исходным кодом;
5.
Современный русскоязычный интерфейс;
12
6.
Поворот камеры (управление видом сверху, сбоку);
7.
Экспорт мультиплатформенных игр на PC, Xbox и Zune;
8.
Использование высокоразвитого искусственного интеллекта;
9.
Поддержка современных технологий XNA Microsoft Game Studio.
13
Заключение
Итак, мои предположения подтвердились.
Выводы:
Действительно можно научиться создавать компьютерные игры, при
этом не обязательно быть экспертом в программировании. Исходя из
изложенного материала, я пришёл к выводу, что действительно любой
ребёнок может научиться этому. При большом желании можно добиться
результатов.
Из своего опыта, могу сказать, что лучше начинать процесс разработки
видеоигр с программ по проще и легче, которые имеют русскую версию.
Процесс разработки видео игры увлекательный и интересный, развивает
способность лучше запоминать и обрабатывать информацию, учит находить
нестандартные решения сложных задач, развивают интеллект и умственные
способности.
Таким образом, потратив немного времени, у меня получилось создать
не одну, а две игры, при этом я профессионально программированием не
владею. В дальнейшем я хотел бы создать развивающую игру, в которую
могла бы играть моя племянница. Так же я планирую усовершенствовать
свои навыки и продолжить свою работу в более сложных программах.
14
Список источников
1. Дашко Ю.В., Заика А.А. “Основы разработки компьютерных игр” —
М.: “Форум” 2009.-350с.
2. http://nenuda.ru/научная-работа-по-информатике-тайнывидеоигр.html
3. http://makegames.ru/publ/konstruktory_igr_sistemy_razrabotki_igr/3d_rad/serija_urokov_po_
3d_rad/33-1-0-96
4. https://onlimegames.ru/blog/gamesgoodorbad
5. https://ru.ostrog.com/1261/
6. https://ru.wikipedia.org/wiki/Компьютерная_игра
7. https://www.progamer.ru/dev/engine2015.htm
8. https://www.ronl.ru/kursovyye-raboty/informatikaprogrammirovanie/103331/
9. https://www.stevsky.ru/starie-igri/istoriya-razvitiya-igr-ot-pervich-igr-dovirtualnoy-realnosti
10. http://softcatalog.info/ru/obzor/programmy-dlya-sozdaniya-igr#collection59286
11. https://uznayvse.ru/interesting-facts/pochemu-na-samom-dele-videoigrypolezny.html
12. https://unreal-engine.ru.uptodown.com/windows
13. https://vawilon.ru/statistika-gejmerov/
14.http://bezwindowsa.ru/programmy/3d-rad-prilozhenie-dlya-sozdaniyaigr.html
15
Приложение
Приложение 1
Первая в мире компьютерная игра "Крестики-нолики"
Приложение 2
16
Приложение 3
Рейтинг программ по созданию игр
Приложение 4
Магазин Epic Games - Unreal Engine 4
17
Приложение 5
Создание нового проекта в Unreal Engine 4
Приложение 6
Графика в Unreal Engine 4
18
Приложение 7
Выбор готовых объектов в 3d RAD
Приложение 8
Свойства объекта 3D RAD
19
Приложение 9
Мой проект в 3D RAD
Приложение 10
Компилятор в 3D Rad
20
Приложение 11
Тестирование игры одноклассниками
Приложение 12
Выбор миров в Kodu. Shooting Fish
21
Приложение 13
Добавление объекта Kodu
Приложение 14
Выбор из списка меню программы
22
Приложение 15
Код программы "Рыбки" в Kodu Game Lab
Приложение 16
Игра в Kodu Lab. Робот Коду попал в рыбку
23
Приложение 17
Ученик 6 класса играет в игру «Рыбки»
24
Скачать