Материал: РАЗРАБОТКА ИГРЫ В ВИРТУАЛЬНОЙ РЕАЛЬНОСТИ НА ТЕМУ СЕЛЕКЦИИ ПЧЕЛ НА ОСНОВЕ СТОХАСТИЧЕСКИХ ПРОЦЕССОВ

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Данный признак наименее корректный с точки зрения реальной жизни. И имеет больше ценность сделать в игре некоторую прогрессию для игрока.

Признак скорости описывается 4 парами генов. Итоговое значение этого признака формируется по правилу полимерии, т.е. по количеству доминантных генов. Таким образом, доминантных генов может быть от 0 до 8. В зависимости от значения признака скорости устанавливается множитель, который влияет на количество продукции, которую производит пчела. Распределение коэффициента от значения признака можно увидеть в табл. 2.

Таблица 2 – Распределение коэффициента продуктивности

Признак

0

1

2

3

4

5

6

7

8

Коэфф.

0.0

0.5

1.0

1.5

2.0

2.5

3.0

3.5

4.0

Признак плодовитости описывается 5 парами генов. Причем можно считать, что каждая пара генов определяет может ли пчела воспроизвести потомство. Т.е. если в паре генов есть хотя бы один доминантный ген, то данная пара увеличивает значение плодовитости пчелы на единицу. Из этого следует, что пчела может родить до 5 новых пчел.

 

2.4. Проектирование модели пчел

В ходе работы над данной ВКР была разработана модель пчелы, которая используется в игре. Исходный код см. приложение А.

Для перечисления всех видов пчел используется enum. В структуре пчелы хранится два поля, которые отвечают за основной и вторичный ген вида пчелы.

Гены признаков скорости и плодовитости кодируются по одному целочисленному полю. Такой подход позволяет использовать меньше данных для признаков. В данном случае каждый ген кодируется 0 или 1. 0 является рецессивный ген, а 1 доминантный. Все манипуляции с данными полями производятся за счет побитовых операций. С их помощью возможно производить большое количество операций в процессе скрещивания.

Для того чтобы фиксировать какие виды были исследованы был добавлен контейнер TMap с ключом в качестве вида пчелы и значением лжи или истины. Для базовых пчел Лугового, Лесного и Речного видов были добавлены соответствующие методы для быстрого создания объектов.

Стоит также отметить, что в исходном коде модели пчелы можно увидеть упоминание других полей с признаками. Такие как цвет глаз пчел, их эффект и радиус действия эффекта. Данные признаки находятся в разработке и не были реализованы до конца на момент написания данной ВКР. О планах на эти признаки можно будет узнать из последнего раздела данной работы.

 

2.5. Логика скрещивания

Логика скрещивания основывается на основных законах Менделя. При скрещивании используется две пчелы. Первая пчела считается маткой, а вторая трутнем. После скрещивания пчела, которая была трутнем умирает, а матка поселяется в улей и начинает производить потомство.

В игровом цикле матка рождает новую пчелу каждые 10 секунд. Набор новых генов генерируется с использованием стохастических процессов, при помощи которых происходит выбор какие гены достанутся потомкам и будет ли осуществлена мутация.

Процесс скрещивания одной пары генов можно описать следующим алгоритмом. При создании нового объекта пчелы на вход подается информация двух наборов хромосом родителей. Далее в цикле берется две пары родительских генов. На основе стохастических процессов в каждой паре выбирается по одному гену. Далее рассматривается есть ли доминантный ген в паре, если есть, то он будет основным, а рецессивный вторичным. В случае, если оба гена имеют равный вес, то выбор какой ген будет основным, а какой вторичным выбирается случайно.

В данной модели 3 признака описываются 10 парами генов, каждая пара независимо друг от друга проходит процесс скрещивания.

Также в процессе скрещивания возможна мутация. В случае генов, которые кодируют признаки скорости и плодовитости, то стохастически возможна ситуация, когда ген меняет свою аллель. В данном случае ген может быть доминантным или рецессивным, т.е. возможна замена доминантного гена на рецессивный и наоборот. Мутация для генов вида имеет свои особенности. Так, если от родителей были выбраны по одному гену одного вида, то шанс мутации ниже, чем если бы они были разными. В случае успешного события мутации для определения нового вида происходит следующий процесс: у исходного гена берется значение к какому тиру относится данный вид, далее возможно изменение этого тира от -2 до +2 с некоторым распределением. При определении тира происходит случайный выбор вида в рамках этого тира. Таким образом, игрок может открыть новый вид еще невиданного пчелозавра.

Исходный код скрещивания представлен в приложении Б. В качестве констант было задано, что мутация в генах происходит с шансом в 5%. А для генов, которые отвечают за признак вида в случае, если они одинаковые, то 10% и 40%, если они различны. Изменение тира при мутации распределяется следующим образом: 10% шанс, что тир изменится на +2 или -2, 20% шанс, что тир изменится на +1 или -1, и 40% шанс, что он не изменится.

 

2.6. Выводы

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

 

 

3.   ГЕЙМДИЗАЙН ИГРЫ И РАЗРАБОТКА ДИЗАЙН-ДОКУМЕНТА

 

3.1. Основные понятия

Игровой дизайн (Геймдизайн) – это процесс создания общей структуры, механики, правил и эстетики видеоигры. Он включает в себя определение целей, задач и взаимодействий, которые игроки будут испытывать на протяжении всей игры. Геймдизайн очень важен при разработке игр, поскольку он служит основой для создания увлекательного и приятного игрового процесса.

Геймдизайн необходим при разработке игр по нескольким причинам:

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

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

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

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

Дизайн-документ – это полный документ, в котором подробно описываются детали и спецификации дизайна игры. Он служит чертежом для команды разработчиков, обеспечивая централизованную ссылку на все аспекты дизайна игры. Как правило, документ включает в себя:

Концепция и обзор – описывает концепцию игры, основные игровые механики и целевую аудиторию. В нем содержится обзор уникальных особенностей игры и точек продаж.

Сюжет и персонажи – если применимо, то в дизайн-документ включаются элементы повествования игры, в том числе сюжет, обстановка и персонажи. В нем описывается сюжет игры, предыстория персонажей и их роли в игре.

Механика игрового процесса – подробно описывает основную механику игрового процесса, включая элементы управления, действия и взаимодействия, доступные игроку. Здесь определяются правила, цели, условия победы/поражения и системы развития.

Уровни и окружение – описывает различные уровни, окружения или этапы игры. В нем содержится информация о планировке, дизайне и ключевых особенностях каждого уровня.

Рекомендации по художественному и звуковому оформлению –содержит рекомендации по визуальным и звуковым элементам игры, включая художественный стиль, дизайн персонажей, окружение, музыку и звуковые эффекты.

Пользовательский интерфейс – определяет расположение, функциональность и визуальное оформление пользовательского интерфейса игры, включая меню, элементы HUD и интерактивные компоненты.

Технические требования – описывает технические характеристики, такие как поддерживаемые платформы, целевые показатели производительности, а также любые конкретные технологии или инструменты, необходимые для разработки.

Проектные документы различаются по длине и уровню детализации в зависимости от масштаба и сложности игры. Они служат справочником для команды разработчиков, обеспечивая четкое понимание целей и требований к дизайну игры.

 

3.2. Основа игры – игровые столпы

В разработке игр игровые столпы означают основные принципы или ключевые элементы, которые определяют основу и идентичность игры. Это основные концепции, особенности или аспекты, которые определяют дизайн и разработку игры. Игровые столпы служат направляющей основой и помогают команде разработчиков сосредоточиться на создании целостного и убедительного игрового процесса.

Вот несколько ключевых моментов, которые необходимо понимать в отношении игровых столпов:

Основной фокус дизайна – игровые столпы представляют собой центральное направление дизайна или основные области, на которых делается акцент в игре. Они выделяют ключевые аспекты, которые делают игру уникальной, приятной и отличают ее от других игр того же жанра или категории.

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

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

Рамки для принятия решений: Игровые столпы обеспечивают основу для принятия дизайнерских решений на протяжении всего процесса разработки. Они служат точкой отсчета для обеспечения того, чтобы все дизайнерские решения соответствовали основным принципам и поддерживали согласованность с предполагаемым опытом игрока.

Коммуникация и фокус: Игровые столпы помогают донести видение игры и цели дизайна до команды разработчиков и заинтересованных сторон. Они обеспечивают общее понимание идентичности игры и служат компасом, позволяющим команде сосредоточиться на создании задуманного игрового процесса.

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

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

В процессе разработки игры были выделены следующие столпы:

1. Собери их всех – продвижение и открытие новых видов пчел побуждает в том, чтобы найти всевозможные комбинации для скрещивания. В игре игрок может отслеживать свой прогресс при помощи специального справочника