В чем суть SpatialOS

Новый движок Хэллидея, ответственный за моделирование OASIS Reality Engine, произвёл несколько технологических прорывов. Он сумел преодолеть ограничения, от которых страдали предыдущие симуляторы. Помимо ограничений на размер виртуальной окружающей среды, старые ММО были вынуждены контролировать популяцию, не пуская больше нескольких тысяч людей на один сервер. Если одновременно логинилось слишком большое количество людей, симулятор начинал тормозить, а персонажи застывали на ходу, пока система изо всех сил пыталась не зависнуть. Но ОАЗИС использовал новый вид отказоустойчивых серверных массивов, которые извлекали дополнительные мощности из каждого подключенного к ним компьютера. Во время первого запуска ОАЗИС мог обслуживать до пяти миллионов одновременных соединений без заметных лагов и падений сервера.

Это цитата из книги Эрнеста Клайна “Первый Игрок, приготовьтесь”. Фантастика. Вымысел. Даже для игрока, разбирающегося в реалиях ММО. Разработчики SpatialOS с удовольствием цитируют эту книгу сегодня, чтобы рассказать о том, для чего нужна их платформа. После того, как третья анонсированная MMO объявила об использовании этой “операционной системы”, кажется, пришло время поговорить о том, что же она из себя представляет.

Суть технологии

SpatialOS — технология симуляции действий, потребностей, состояний и взаимодействия заданных сущностей. Эта специализированная оболочка может использоваться как Amazon Web Services и также базируется на облачных технологиях. SpatialOS располагается на самом базовом уровне, где игровые движки и другие инструменты расположены выше, как программы в операционной системе. Собственно, SpatialOS и есть специализированная серверная операционная система для симуляции сложных виртуальных миров.

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

Сущности (Entities) — базовые блоки системы. Например, люди, лисы и кролики в экосистеме.

Каждая сущность наделена набором компонентов (components). Компоненты описывают функциональность сущности через Свойства, События и Команды (Properties, Events, Commands), которые можно задать. В предложенном примере с экосистемой сущность “Лиса” обладает компонентом “Охота”, который зависит от привязанных к нему параметров “Голод” и “Здоровье”.

Логика поведения (behaviour logic) сущности зависит от свойств, которые меняются со временем. Это также задается разработчиками. Так во время охоты лиса может повредить свое здоровье, но начинает охотиться, когда параметр “голод” достигает определенной отметки.

Шестеренки (Workers) отвечают за симуляцию всех компонентов на двух уровнях: логическом и физическом. Логика и Физика конкретного мира задается создателями этого мира. Затем все это обсчитывается под управлением SpatialOS при помощи облачных технологий. SpatialOS берет на себя управление динамическим перераспределением нагрузок. Логические шестеренки приказывают лисе преследовать кролика, но если в азарте преследования лиса подбежит к слишком большому оврагу, физические шестеренки просчитают возможность перепрыгнуть овраг и повреждения в случае неудачи.

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

Для чего это

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

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

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

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

Нравится5
Комментарии (1)
B
i
u
Спойлер