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

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

В игре про селекцию пчел можно разбить на следующие части:

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

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

3. Производит процесс скрещивания пчел.

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

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

 

3.7. Описание взаимодействия игрока с миром

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

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

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

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

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

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

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

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

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

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

Перемещение с телепортацией является одним из наиболее комфортных для игроков, когда нет необходимости часто перемещаться в пространстве. А также является реализованным исходно в базовом примере в Unreal Engine.

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

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

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

 

3.8. Выводы

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

4.   ОПИСАНИЕ РАЗРАБОТАННОЙ ИГРЫ

 

4.1. Описание интерфейса генов пчелы

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

Рисунок 6 – Пример москитной сетки в шлемах виртуальной реальности

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

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

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

Рисунок – Отображение генов пчелы в игре

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

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

 

4.2. Модель для улья

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

Midjourney – это программа и сервис генеративного искусственного интеллекта, созданная и размещенная в Сан-Франциско независимой исследовательской лабораторией Midjourney, Inc. Midjourney генерирует изображения на основе описаний на естественном языке, подобно DALL-E и Stable Diffusion от OpenAI. [14]

Первые результаты генерации в виде четверок изображений были получены в виде запроса со словесным описанием «hive lowpoly» и «langstroth hive lowpoly» соответственно, изображенных на рис. .

Рисунок – Пример генерации запросов

Из результатов генерации можно понять, что были сгенерированы ульи, которые можно считать вариантом естественной среды обитания, которые никак не подходят для цели размещения ульев на фермерском участке. Поэтому было произведено уточнение запроса к нейросети. Были получены новые результаты генерации для запросов «modular beehive with 3 hive frame that holds the honeycomb for apiary lowpoly» и «modular beehive with hive frames that holds the honeycomb for apiary lowpoly» изображенные на рис. .

Рисунок – Пример генераций запросов

Полученные генерации были близки к желаемым результатам, также для большей выборки были еще изменения запросов в виде следующих вариантов: «vertically modular beehive with frames lowpoly» и «vertically modular beehive with 3 frames for apiary lowpoly». Результаты генерации можно увидеть на рис. .

Рисунок – Пример генераций запросов

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

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

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

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

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

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

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

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