А.Ю. Гречишкин

ФГБОУ ВО «Липецкий государственный педагогический университет имени П.П. Семенова Тян-Шанского», кафедра информатики, информационных технологий и защиты информации

Email: aigutechishkin1998@mail.ru

Научный руководитель: Т.А. Золотарева, ст. преподаватель кафедры информатики, информационных технологий и защиты информации

Введение

Статистически доказано положительное влияние на детей развивающих игр. Но почему-то редко относят эти слова к компьютерным играм. Их можно отнести к новому жанру искусств. Использование красивой графики, литературных текстов, интересных и поучительных сценариев с элементами обучения – всё это делает компьютерные игры очень привлекательными в сфере образования.

Так игры-стратегии развивают логическое мышление, внимательность, память, скорость реакции. Они побуждают к изучению нового материала и закреплению имеющихся знаний. У подростков появляется желание самим создать компьютерную игру. Это будет прекрасным стимулом для изучения языков программирования.

Приступить к созданию своей игры можно и без навыков программирования, используя движки-конструкторы, например, Construct 2 и Construct 3.

Обзор игровых движков

Construct 2

Construct 2 – один из самых лёгких, простых игровых движков для создания игр, например, платформер, раннер, кликер, гонки. Имеется 20 встроенных заготовок: Platformer, 8-Direction, Bullet, Car, Pathfinding, Turret, Drag’n’Drop и т.д. В бесплатной версии существуют ограничения: 100 событий, 4 слоя, 2 эффекта, ограниченный экспорт игры [4]. Для хорошей графики можно использовать внешний бесплатный редактор Inkscape. Музыку можно взять с бесплатных источников, например, freesound.org, но большое количество звуковых эффектов притормаживают игру. Приложения, созданные в Construct 2, лучше всего работают на iPhone. В качестве инструмента экспорта игры с ПК на мобильный телефон можно использовать движок CocoonJS.

Плюсы:

  • Настройка аспектов игры, физики, управления с помощью "Behaviours"
  • Встроенный редактор анимаций
  • Частые обновления
  • Открытый исходный код
  • Большой выбор фонов и спрайтов
  • Простой интерфейс
  • Набор частиц (партиклов), OpenGL-эффектов
  • Создаваемый при помощи WebRTC мультиплеер
  • Полноценный отладчик с профайлером

Минусы:

  • Для создания более сложных игр требуется платная версия
  • IDE доступна только на Windows XP/Vista/7
  • Ограничение эффектов, событий, персонажей

Construct 3

Construct 3, так же как и предыдущая версия, служит для создания игр без особых знаний программирования, но поддерживает скрипты JS. При работе с Construct 2 некий объём предметов можно было создать, используя плагины или художественные приёмы, в новой версии для этого появились новые функции:

  • Z-Elevation – изменение расположения объектов по отношению к третьей оси
  • 3D Shape – трёхмерные кубы, призмы и другие геометрические фигуры
  • 3D Camera – возможность смотреть на сцену под некоторым углом, включить ортографический вид
  • Возможность использовать расширения и дополнения, написанные на JavaScript

К плюсам новой версии можно добавить: анимация в стиле пишущей машинки, расширение мультимедиа возможностей.

Из минусов стоит указать: описание меню и игры на английском языке (есть русский перевод, но он некорректен), мало возможностей для написания визуальной игры, недостаточная оптимизация

GameMaker Studio

GameMaker Studio – простой, кроссплатформенный конструктор для создания 2D игр. С помощью графической среды разработки Drag and Drop можно написать простую игру без знания программирования. Для создания более сложной игры понадобится GML, написанный на Delphi. Некоторую путаницу при использовании данного языка составляет то, что идентификатор ставится внутри скрипта. В платной версии добавляется: создание погодных эффектов, возможность подключиться к базе данных SQL, функции TestDatabaseConnection и ExecuteSQL.

Плюсы:

  • Простая установка, настройка и компиляция
  • Лёгкий для восприятия синтаксис
  • Нет нужды в написании больших блоков кода
  • Есть бесплатная версия
  • Возможность 3D-графики (но очень простой)
  • Создание собственных спрайтов, звуков, анимаций
  • Есть магазин спрайтов, звуков, карт анимаций
  • Интеграция со Steam
  • Возможность использования шейдеров
  • Редакторы кода, уравнений, а также визуальный и графический

Минусы:

  • Нет автоподстановки пользовательских переменных, за исключением стандартных и скриптов
  • Сложности в тех. поддержке
  • Нет возможности авто-рефакторинга
  • Наличие полного функционала только в платной версии
  • Интерфейс на английском языке

Godot Engine

Godot Engine – кроссплатформенный, мультифункциональный, оптимизированный движок с открытым кодом для создания 2D и 3D игр. Используется C++, С#, а также собственный язык программирования GDScript – гибрид Python и Lua. Работа движка основана на представлении игры как дерева узлов, группирующихся в сцены и взаимодействующие друг с другом. Узлы – “кирпичики” игры, причём каждый выполняет несколько специальных функций: представляет изображение, проигрывает звук и т.д. Соединяя узлы между собой можно получить дерево узлов, обладающее сложным функционалом. В этом заключается основной принцип разработки игры.

Плюсы:

  • Редактор скриптов и шейдеров
  • Большое количество плагинов, дополнений, внешних библиотек
  • Эффекты отражения, теней, постоянного и меняющегося освещения
  • Реалистичная физика (система частиц, динамика взаимодействия тел)
  • Сетка навигации
  • Использование мультимедиа (аудио и видео файлов)
  • Автоматическое создание внутриигрового наполнения с помощью скриптов
  • С помощью системы Visual Scripting можно программировать без кода, используя узлы
  • Полностью бесплатен
  • Многопоточность

Минусы:

  • Недостаточность проработки движка для создания 3D игр
  • Маленький набор для визуальной разработки
  • Нет встроенных инструментов для билда
  • Нет физики частиц при создании 2D игр
  • Нет встроенных шаблонов
  • Нет возможности редактировать меши и уровни сглаживания

Unity 3D

Unity 3D – один из самых популярных, гибких, кроссплатформенных игровых движков. Эта платформа представляет физическую модель, на которой взаимодействуют объекты на основе законов и правил физики (коллизия, физика твёрдых и мягких тел, жидкости, волос и т.д.). Движок работает с такими технологиями как: DirectX 12, VRWorks, Vulkan, LiquidVR. Для создания игр понадобятся знания одного из языков программирования: C++, С#, а также умение работать в 3Ds Max на базовом уровне. При работе с этим движком очень поможет книга “Game Development Essential” Джинни Новака.

Для экономии памяти процессора стоит основательно подумать о количестве сцен, разделить их на подсцены, чтобы больше действий происходило в одном пространстве. Очень экономно относиться к коллайдерам: например, для создания транспорта достаточно сгенерировать один коллайдер для всего объекта; а для мест, не посещаемых игроком, коллайдер можно не использовать.

Плюсы:

  • Многофункциональность и модульность
  • Много обучающих материалов
  • Большая библиотека ассетов и плагинов
  • Прост в понимании и освоении
  • Есть бесплатная версия (Personal)
  • Простой интерфейс
  • Сложная анимация
  • Встроенный отладчик, позволяющий изменять объекты, не выходя из сцены
  • Редакторы кода, текста, визуальной и графической составляющей проекта
  • Визуализация физических явлений: осадки, огонь и т.д.

Минусы:

  • Медлительность
  • Большой вес игры
  • Требуется оптимизация после разработки основы
  • Ограничения визуального редактора при создании многокомпонентного продукта
  • Внешние плагины нужно искать, устанавливать, настраивать
  • В шаблонных экземплярах сложно вносить изменения
  • Проблемы с реализацией сложных, масштабных сцен

Unreal Engine

Unreal Engine – кроссплатформенный игровой движок для создания 3D игр. Используя систему визуального создания скриптов Blueprints Visual Scripting, можно разработать игру без написания кода. С помощью Blueprints можно создавать объекты, их движение, строить логику игры. Есть готовые инструменты и системы: Behavior Trees – простые блок-схемы “дерево поведения” закладывается последовательность действий и принятие решений, Blackboard – хранение переменных, AIController – основной компонент для прописывания логики “чувств”, BT Task – небольшие задачи со своей логикой. При написании кода используется язык программирования C++.

Плюсы:

  • Есть бесплатная коллекция моделей и материалов, анимаций, мешей, плагинов, локаций, готового кода
  • Открытый исходный код
  • Большой выбор шаблонов и демоверсий
  • Редакторы кода, текста, анимаций, визуальной и графической составляющей проекта
  • Гибкий и мощный функционал
  • Анимирование персонажей без использования кода с помощью Animation Blueprint
  • Звуковое оформление, диалоги, модуляция тона, звуковые эффекты
  • Можно смоделировать базовый мир с предметами
  • Инструменты для прототипирования
  • Система визуальных эффектов

Минусы:

  • Большая цена в магазине на контент
  • Нагромождённый интерфейс
  • Сильная нагрузка на компьютер, особенно при работе со светом
  • Много багов, частые вылеты
  • Медлительность движка
  • Примитивный ландшафт
  • Резкая смена LOD-ов

Выводы

Таким образом, можно сделать вывод, что для написания компьютерной игры без особых знаний языков программирования больше подходят конструкторы Construct 2 и Construct 3. Более сложные платформы GameMaker Studio и Godot Engine, где помимо кода можно использовать визуальные инструменты программирования. И бесспорные лидеры Unity 3D и Unreal Engine, с помощью которых можно создавать достойные 3D игры.

Литература

  1. Абдуллатипова, А.А. Влияние компьютера на жизнь человека / А.А. Абдуллатипова, Р.Ш. Камилова // Международный научно-исследовательский журнал. – 2013. – № 5–3. – С. 94.
  2. Каляков, И.В. Компьютерные технологии и их влияние на современного человека / И.В. Каляков, З.Р. Слесаренко // Научный аспект. – 2017. – № 2–2. – С. 172–177.
  3. Ракитов, А.И. Философия компьютерной революции / А.И. Ракитов. – М.: Политиздат, 1991, – 287 с.
  4. Обзор конструктора игр Construct 2 [Электронный ресурс]. – URL: https://gamedevmania.ru/engines/construct-2 (дата обращения: 12.11.2022).
  5. Функционал игрового движка Construct 3 [Электронный ресурс]. – URL: https://construct3.ru/funkczional-igrovogo-dvizhka-construct-3/ (дата обращения: 12.11.2022).
  6. Game maker Studio — обзор программы [Электронный ресурс]. – URL: https://public-pc.com/game-maker-studio-obzor-programmyi/ (дата обращения: 11.11.2022).
  7. Москалев, А.Н. Обучение по аналогии компьютерным технологиям / А.Н. Москалев, Г.А. Никулова // Информатика и образование. – № 6. – М.: Информатика и образование, 2001. – С. 81-83.
  8. Godot Engine [Электронный ресурс]. – URL: https://blog.skillfactory.ru/glossary/godot-engine (дата обращения: 13.11.2022).
  9. Движок Unity – особенности, преимущества и недостатки [Электронный ресурс]. – URL: https://cubiq.ru/dvizhok-unity/ (дата обращения: 14.11.2022).
  10. Куксон, Арам. Разработка игр на Unreal Engine 4 за 24 часа / Арам Куксон, Клинтон Крамплер, и Райан Даулингсока; [пер. с англ. М. А. Райтман]. – М.: Бомбора, 2019. – 528 с.