Приветствую, друзья!
Хочу сегодня рассказать вам про очень классную фишку для движка Unity. Так как я все время в поиске вариантов и методов как мне реализовать, все-таки, идею полноценного открытого игрового мира в своем проекте "Шмурдяк". Чтобы игрок мог попасть в абсолютно любую точку планеты с реальным ландшафтом.
Безусловно, что было понимание, что реализовать данную фичу можно только в тандеме с каким-нибудь онлайн сервисом спутниковых карт или подобных ресурсов, который неплохо было бы соединить сразу с игровым движком. Подобные разработки сейчас, например, активно происходят в Японии где есть свой сервис для построения виртуальных мегаполисов. Отчасти вопрос можно решить используя утилиты, например для 3д моделирования в Blender, наподобие OSM, когда можно в 3д пакет перенести кусок карты из Google Maps с данными высот и ландшафта, а потом перетащить все в Unity, что в плане эксперимента я делал и сам. В частности моделировал городской район Хибия в Токио с высотными зданиями, дорогами, растительностью и подземной станцией метро. К сожалению год работы отлетел в вакуум небытия из за умершего рабочего ноутбука. Да-да, знаю... gihub, сейвить проекты в облаках и все такое... Но вот так вышло, может поленился и не научен еще был горьким опытом. Теперь я все это знаю.
Я не спец в геймдеве и, тем более в технология Unity, потому многие понимающие и знающие, скорее всего знают много интересных и простых вариантов выполнения моей задачи. Но я нуб и у меня свой особый путь, а подсказывать и учить меня пока некому - все на своем опыте, как есть.
Да, я знаю про процедурную генерацию, про систему чанков и все такое, но, первоочередное, что мне нужно от игрового мира - это реализм ландшафта и простота его создания. Чтобы игрок просто офигел попав, например, в свою родную деревню и пройдя по улице увидел свой дом с занавесками на окнах, которые сшила его жена, и кучей кирпичей у забора, которые он ленится сложить уже второй год, и открыл рот с возгласом "до чего дошел прогресс!" Для местностей России, впрочем, с этим могут быть проблемы, так как для карт Гугл наша страна это на 90% темное пятно терра-инкогнита, и увидим мы только те места куда добралась их машинка с панорамной камерой.
Недавно, вроде в мае, Google анонсировала довольно интересную фишку с фотореалистичными 3д тайлами своих спутниковых карт для создания виртуальных иммерсивных миров с помощью своего API. Подробно об этом вы можете почитать непосредственно от Google здесь.
При помощи платформы 3д-геопространственных данных CESIUM и ключа API от Google вы интегрируете в Unity пакет инструментов, с помощью которых получаете рабочую 3д модель планеты Земля прямо в свой игровой движок и можете работать с ней по своему усмотрению.
В частности, создав подсцену при помощи пакета Cesium вы получаете сферическую область в желаемой точке карты и можете добавлять в нее игровые объекты и т.д создавая свою локацию как при обычном процессе создания игровой локации, быстро накидать левелаут, блокаут и тд. Карта имеет свою сетку и добавив персонажа с контроллером вы получаете уже своего главного героя, который способен исследовать и перемещаться в 3д визуализации. При этом здания и препятствия тоже будут иметь свои сетки и коллайдеры создавая преграду для передвижения игрока.
Проект еще экспериментальный и 3д визуализация не отличается правильной геометрией объектов, однако это неплохой шаблон и модель для работы с ней, она дает представление о масштабах и по сути это огромный референс для создания точных и реалистичных локаций, когда на карте планеты можно разместить и добавлять их по мере необходимости без особой нужды повторять и моделировать огромный объем работы.
Функциональность, например, личного транспорта для игрока в игре переходит на абсолютно новый уровень и не будет похожа на симуляторы дальнобойщиков и прочие автопокатушки с огромными пространствами, но тоже ограниченными только асфальтом трасс и заданием попасть из пункта А в пункт Б. Теперь игрок может ехать куда угодно и как угодно.
Единственная проблема таких игровых миров - это безжизненность и нарративная пустота, когда ничего не происходит. Однако для нашего "Шмурдяка" это не является острой проблемой, так как много геймплея будет происходить на пространствах безжизненных и малонаселенных - поля, леса и т.д. Крупные города и мегаполисы в игре не нужны и интерес в них могут представлять только исторические объекты в которых можно производить различные изыскания или придумать другой функционал - раскопки в Троице-Сергиевой Лавре или Александровской Слободе, виртуализация какого то музея и возможность его посетить - разве это не круто? Или переместиться в Гизу к пирамидам и пройтись по окружающей пустыне и обследовать завалы в Долине Царей? Вот такие пироги...
На этом разрешите раскланяться и до связи!
Если вы хотите наблюдать за моим проектом в Trello и видеть все правки и изменения в концепте игры, быть в курсе всех событий (в статьях будет не всё), то вы можете получить доступ к проекту "Шмурдяк" и получить статус участника со своей ролью в проекте - Наблюдатель. Заодно этим шагом вы окажете проекту посильную материальную помощь.
Стоимость доступа для участия в качестве Наблюдателя по индивидуальной ссылке - 500 рублей. (Если что, пишем заявку на почту с пометкой "Шмурдяк": dmitriymanakin1980@gmail.com).
Буду весьма благодарен за любую финансовую поддержку моему игровому проекту "Шмурдяк":
Через сервис Qiwi на никнейм: EVENN230
Если статья вам понравилась и вы хотите знать больше, я с удовольствием продолжу данную тематику в следующих своих рассказах. Предлагайте свои идеи для статей.
Подписывайтесь, ставьте лайки или дизлайки, комментируйте - мне важно ваше мнение. Ссылки на статьи в ваших соцсетях помогут развитию канала.
Всем спасибо за внимание. Особая благодарность тем, кто дочитал до конца - вы уже этим поддержали меня. Спасибо всем кто подписался и выразил свою точку зрения. Благодарю своих читателей за оказываемую помощь и поддержку