Файл: Курсовая работа специальность 09. 02. 03 Программирование в компьютерных системах.pdf
Добавлен: 25.10.2023
Просмотров: 147
Скачиваний: 4
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
12
Microsoft Xbox (Xbox, Xbox 360, Xbox One).
Nintendo 3DS, Wii.
Мобильное устройство: телефон, планшет, карманный компьютер
Смартфон — это мобильный телефон, у которого есть позможности персонального компьютера. Уже сегодня смартфоны заменили многим людям персональные компьютеры, так как имеют практически все те же функции. Смартфон часто используется для выходя в интернет и развлечений.
Классификация по расположению игровой камеры
В зависимости от того как игрок видит игровой процесс, игру можно поделить на игры от 1-го, 3-го лица, а также на двумерные платформеры
(Двумерный вид сбоку)
Вид от 1-го лица (вид из глаз).
Вид от первого лица – это термин, использующийся в видеоиграх, когда игрок видит мир глазами своего персонажа. Игра с видом от первого лица может обеспечить более захватывающий игровой процесс, нежели вид от третьего лица, когда игрок смотрит из-за плеч своего героя.
Вид от 3-го лица (вид сзади).
Вид от третьего лица – это термин, использующийся в видео и компьютерных играх, когда игрок видит мир из-за плеч своего персонажа.
Таким образом, он виден в полном объеме, а не только его оружие или руки, как в виде от первого лица, когда игрок видит мир глазами персонажа.
Двухмерный вид сбоку
В играх с видом сбоку игрок видит игру в зафиксированном положение сбоку, благодаря чему игрок может видеть объекты находящиеся вне зоны его видимости из-за другого объекта. Используется в жанрах: платформер, головоломка, файтинг, 2D экшен.
Трехмерный вид сбоку (3D вид сбоку, псевдотрехмерность).
13
Используется в жанрах: платформер, файтинг, 2D экшен, квест, головоломка.
Двухмерный вид сверху (2D TopDown). Используется в жанрах: тактика, головоломка, стратегия, РПГ, логические игры.
Вид сверху часто используется в играх, в которых нужно следить за большим количеством игровых объектов. Вид сверху удобно использовать в динамичных играх для того чтобы игрок не потерялся в пространстве
Трехмерный вид сверху (3D TopDown, изометрия).
Используется в жанрах: РПГ, стратегия, головоломка, тактика, логические игры.
Классификация по технологии графики
Визуальное оформление важная часть игры. Не мало игроков, когда выбирают игру обращают внимание именно на графику в игре, поэтому существует разделение игр по графике.
- Двухмерная графика (растровая, векторная).
Это вид компьютерной графики, где изображение выглядит плоским.
При рисовании используется только два измерения – ширина и высота.
- Игры без графики (псевдографика, текстовые игры).
Эти игры создаются в большинстве случаев для слабых компьютеров имеют малую популярность и большинства игроков. Такие игры выглядят как большой текстовый файл, в котором развиваются события игры.
- Трехмерная графика.
Трёхмерная графика — это раздел компьютерной графики, специализирующийся на методах создания видео или изображений путём моделирования объектов в трёх измерениях.
- Дополненная реальность (мобильные устройства с камерой).
Дополненная реальность —последствия введения в видимое поле любых сенсорных данных с целью дополнения данных об окружении и изменения восприятия окружающей среды.
14
- Виртуальная реальность (шлем виртуальной реальности).
Виртуальная реальность – это трехмерная компьютерная среда, взаимодействующая пользователем: человек, погружается в среду благодаря различным устройствам (очки, шлемы и т.д.), является участником виртуального мира, управляет виртуальными предметами и объектами.
Классификация по жанрам
Игровой жанр - группа игр, которые имеют похожие правила игры и схожую игровую механику. Жанр игры определяет то, какие действия чаще всего необходимо выполнять игроку для победы. Например, хоррор цель которого пройти игру, во время которой игрока будут пытаться всячески напугать.
Существуют следующие жанры игр:
РПГ (RPG «Role—Playing Game») – знаменитый жанр компьютерных и видео игр, где основой игрового процесса является обыгрыванием определенной роли. Игрок берёт под контроль определённого героя или героиню, с набором стандартных навыков, характеристик и умений.
Платформер (разг. броди́лка; англ. platformer, platform game) — жанр компьютерных игр, в которых основу игрового процесса составляют прыжки по платформам, лазанье по лестницам, сбор предметов, необходимых для победы над врагами или завершения уровня.
Шутеры First-person Shooter, FPS) — жанр компьютерных игр, в которых игровой процесс основывается на сражениях с использованием огнестрельного или любого другого оружия с видом от первого лица таким образом, чтобы игрок воспринимал происходящее глазами протагониста.
Стратегия — жанр компьютерных игр, в которых игроку для победы необходимо применять стратегическое мышление.
15
Экономические стратегии (англ. business simulation games; tycoon) — стратегии, в которых игрок занимается созданием и управлением собственным бизнесом. В таких стратегиях обычно более проработана экономическая составляющая, на которой и делается основной акцент.
Военная стратегия — наука о ведении войны, одна из областей военного искусства, высшее его проявление. Охватывает вопросы теории и практики подготовки к войне, её планирование и ведение, исследует закономерности войны, составная часть военного дела.
MOBA (Multiplayer Online Battle Arena) – в последние годы необычайно популярный жанр. Большинство МОБА-игр объединены общими характеристиками геймплея: это сессионные командные поединки на различных картах/аренах, в процессе которых игрок выбирает себе одного из множества персонажей, имеющих свои навыки и особенности, и выполняет с его помощью поставленные задачи. Лучшие представители этого жанра игр Вы найдете в статье
Лучшие MOBA игры.
Королевская битва
— один из жанров массовых многопользовательских онлайн-игр, совмещающий в себе элементы симулятора выживания с режимом last man standing.
1.4 Анализ средств разработки игровых приложений
Наиболее популярными средами для разработки игр являются,
CryEngine, Unreal Engine, Unity 3D и Ren’Py.
Cry Engine 5.
Игровой движок с графикой нового поколения. Данный игровой движок был создан компанией Crytek. Первые версии были разработаны в
2002 году и использовались в компьютерной игре Far Cry. Изначально данный игровой движок планировался закрытым, но в данный момент он является коммерческим и предлагается для лицензирования другим
Наиболее популярными средами для разработки игр являются,
CryEngine, Unreal Engine, Unity 3D и Ren’Py.
Cry Engine 5.
Игровой движок с графикой нового поколения. Данный игровой движок был создан компанией Crytek. Первые версии были разработаны в
2002 году и использовались в компьютерной игре Far Cry. Изначально данный игровой движок планировался закрытым, но в данный момент он является коммерческим и предлагается для лицензирования другим
16 компаниям. С 30 марта 2006 года все права на этот игровой движок были переданы компании Ubisoft.
В последней версии игрового движка стали доступными новые технологии, такие, как:
- DirectX 12
- C#
- продвинутая волюметрическая система, адаптированная для работы над VR-проектами, которая позволит оптимизировать 3D-рендеринг и минимизировать просадки в производительности;
- новая система частиц. Теперь она позволяет сфокусировать всю нагрузку на GPU, что является улучшением в плане оптимизации;
- переделанный пользовательский интерфейс и новый лаунчер;
- добавлена поддержка FMOD Studio;
- выделенный канал CRYENGINE Q&A для общения разработчиков.
В данное время игровой движок является свободно-распространяемым.
Каждый желающий может пожертвовать любую сумму команде разработчиков. Исходный код игрового движка также стал открытым.
Пользователь также может поддержать не Crytek, а Dev Fund (фонд разработчиков). Разработчики дают ему право выбора, однако пользователь обязательно должен пожертвовать хотя бы 30% суммы именно Crytek (если пользователь все-таки решил заплатить).
Так же из особенностей данного движка можно отметить красивую графику, которую можно полностью настроить, не трудность в освоении, языки программирования C++ и Lua, а также возможность программировать логику графическими «нодами», которые называются FlowGraphs. В движке имеется возможность моделирования объектов из «примитивов», которые можно потом экспортировать прямо в редактор для 3D моделирования.
Unreal Engine.
17
Первая игра на первых версиях данного игрового движка была разработана в 1998 году. С того момента разные версии данного игрового движка использовались в более чем 100 играх. Движок написан языке C++ и имеет возможность создавать игры под такие устройства, как консоли Xbox,
Xbox 360, Xbox One, PlayStation 2, PlayStation 3, PlayStation 4, PSP, PS Vita,
Wii, Dreamcast, GameCube и операционные системы Windows, Linux, OS X и
Mac OS. Также на данном игровом движке имеется возможность создавать игры для мобильных устройств на базе iOS и Android.
Для упрощения портирования игр на различные устройства данный движок включает в себя модульную систему зависимых компонентов и поддерживает самые различные системы рендеринга, а именно: Direct3D,
OpenGL, Pixomatic. Первая игра на данном движке - Unreal, она была разработана в 1998 году.
Для онлайн игры данный игровой движок поддерживает различные технологии, такие как Windows Live, Xbox Live, GameSpy. Таким образом, этот движок адаптировали для применения в играх жанра MMORPG, примером этому является игра Lineage 2.
Данный игровой движок более сложный в освоении, нежели предыдущие, что значительно затрудняет обучения новичкам в разработке компьютерных игр. Из плюсов можно отметить его бесплатную лицензию.
Разработчик должен платить только проценты с прибыли своей игры. Так же в нем отличная изначальная графика, которую можно доработать с помощью различных шейдеров. Этот движок имеет открытый исходный код, что позволяет пользователям изменять его так, как они хотят, либо же изучать, как он устроен. На нем можно программировать на С++, а также на встроенном «нодовом» языке программирования BluePrint, аналогу
FlowGraphs на CryEngine.
Unity 3D.
18
Unity– это игровой движок, на котором строится большая часть современных игр на разных платформах. Посредством движка реально создавать игры, ориентированные на запуск на компьютерах (Windows,
Linux, MacOS), мобильных телефонах, планшетных компьютерах (Android, iOS, Windows Phone) и даже игровых приставках PlayStation, Xbox, Nintendo.
Создание игр на движке Unity невозможно представить без написания дополнительного кода. В Unity поддерживается два языка программирования
- JavaScript и C#. Раньше также поддерживался язык Boo, но позже от него отказались.
Вы можете самостоятельно выбрать на каком языке программировать в
Unity, так как особого значения это не имеет. Большинство разработчиков дают предпочтение языку C#, так как он более мощный и найти различную документацию намного проще, нежели для языка JavaScript.
Игровой движок предоставляет множество функциональных возможностей, позволяющих их задействовать в различных играх, Unity имеется два основных преимущества: наличие визуальной среды разработки и межплатформенная поддержка
Ren’Py
Ren’Py — это бесплатный, свободный и открытый движок для создания как некоммерческих, так и коммерческих визуальных романов (графических квестов с диалоговой системой) в 2D-графике.
Создание простых игр в данном конструкторе по сложности доступно для любого желающего, но для более сложных игр необходимо изучить и применять скриптовый язык Python: есть возможности для создания оригинальной манги, в том числе подключение видео и использование различных спецэффектов на движке; также можно подключать мини-игры, системы подсчёта параметров для усложнения игрового процесса. Есть возможность редактировать нетекстовый скрипт проекта прямо из игры при помощи внутриигрового инструмента Интерактивный Директор.
19
Из рассмотренных средств разработки Ren’Py имеет дружественный интерфейс, позволяет доступно и удобно создавать игры в классификации визуальных новелл, в том числе мобильных, предлагает бесплатную версию программы, а также имеет наибольшее количество обучающих материалов как на английском, так и на русском языках.
1.5. История создания среды разработки Ren’Py
Движок Ren’Py появился 24 августа 2004 года с версией 1.0.1. В январе
2006 года была выпущена версия 4.4.2, в которой были добавлены множество новых функций.
В декабре того же года разработчики выпустилиr Ren’Py 4.6, в котором появились встроенный скрипт управления персонажем, а также, расширены возможности редактора скриптов.
Через несколько лет, в 2008 году, в Ren’Py добавили возможность разрабатывать игры для Android. В версии движка 7.0 была добавлена многослойное изображение — это новый способ определения изображений для использования в Ren'Py. Он предназначен для использования со спрайтом, созданным в Photoshop или какой-либо другой программе в виде набора слоев. Многоуровневая система изображений может использовать атрибуты, с которыми отображалось изображение, и условия Python, чтобы определить, какие слои отображать.
Также в версии 7.1 была добавлена поддержка Ren'Py для Android значительно переработана, чтобы модернизировать ее. Это необходимо, чтобы игры Ren'Py можно было загружать в магазин Google Play. Некоторые из этих изменений могут потребовать обновления файлов игры. В частности, изменился формат иконок, поэтому иконки нужно будет переделывать.
Тысячи игр были выпущены с помощью Ren'Py, что делает его одним из наиболее широко используемых движков визуальных новелл в мире.
В настоящее время существует большое количество создателей с опытом работы с Ren'Py, многие из которых готовы помочь коллегам-
20 создателям. Лучшее место для получения поддержки — это форум Ren'Py на форумах Lemma Soft Forums, на котором размещено более 110 000 сообщений в более чем 20 000 темах. (Цифры точны на июнь 2019 года.)
1.6. Возможности Ren’Py
Ren'Py по умолчанию включает в себя все функции, которые пользователь ожидает от визуальной новеллы. Хотя большинство этих функций при желании можно настроить или отключить, по умолчанию каждая новая игра имеет:
Главное меню, которое позволяет пользователю начать новую игру, загрузить игру или настроить параметры.
Игровое меню, которое позволяет пользователю загружать, сохранять и настраивать параметры.
Автоматическое сохранение игр.
Откат, возможность вернуться в прошлое, чтобы увидеть ранее показанные экраны. Пользователь может даже сделать другой выбор во второй раз.
Предиктивная загрузка изображений, которая загружает изображения в фоновом режиме. Это избавляет пользователя от необходимости ждать, пока изображения загружаются с диска.
Поддержка управления игрой с помощью мыши, клавиатуры или геймпада.
Возможность выбрать, будет ли игра работать в полноэкранном режиме или в масштабируемом окне.
Возможность пропуска текста при повторном воспроизведении, в том числе возможность пропуска только прочитанного текста.
Возможность автоматического продвижения текста без нажатия на клавиатуру. Это настраивается на количество отображаемого текста, поэтому более длинный текст остается дольше.
21
Возможность скрыть текст, чтобы пользователь мог видеть картинки за ним.
Возможность самостоятельно менять музыку, звуковой эффект и громкость голоса.
Ren'Py может использовать аппаратное ускорение на поддерживаемых компьютерах, а в противном случае использовать поддержку программного обеспечения. Это ускорение позволяет применять сложные эффекты к изображениям высокой четкости.
Язык анимации и преобразования, входящий в состав Ren'Py, позволяет анимировать изображения, перемещать их по экрану, поворачивать, настраивать масштаб и прозрачность. Все это можно легко изменить со временем.
Ren'Py поставляется с десятками настраиваемых переходов, которые можно вызывать при изменении сцены. Помимо полного набора слайдов, вайпов и перемещений сюда входят:
Пиксельизация старой сцены и депикселизация новой.
Переходит к черному (или другому цвету), а затем к новой сцене.
Расплывается весь экран от одной сцены к другой.
Растворение, управляемое изображением, при котором изображение используется для управления тем, какие части экрана растворяются первыми. Это использовалось в качестве основы для множества мощных эффектов, от брызг крови до лучей транспортера.
Ren'Py также поддерживает воспроизведение файлов фильмов.
Одним из самых больших преимуществ Ren'Py является то, что он работает практически на каждом компьютере. Мы поддерживаем три основные платформы: