No Man's Sky
Команда программистов разработала саморазвивающийся космос, но даже сами создатели не догадываются, что прячется в его бескрайних просторах.
Во вселенной каждая частица на счету. Вычислены точная форма и месторасположение каждой травинки на каждой планете. Каждая снежинка и капля дождя пронумерована. На экране перед нами горы быстро растут и уменьшаются до мягко перекатывающихся холмов, прежде чем превратиться в пустыню. Миллионы лет пролетают в одно мгновение.
Здесь, в полутемной комнате в получасе езды к югу от Лондона, группа программистов склонилась над компьютерами, создавая необъятный цифровой космос. Или лучше так: с помощью процедурной генерации они делают программу, которая позволяет вселенной создавать саму себя.
Амбициозный проект будет выпущен в качестве видеоигры под названием No Man’s Sky в июне этого года. В игре случайно размещенные космонавты, отделенные друг от друга миллионами световых лет, должны будут найти собственную цель существования, бороздя галактику из 18 446 744 073 709 551 616 уникальных планет.
«Физика в других играх — подделка. Когда находишься на планете, ты окружен „небесной коробкой“ — кубом, на гранях которого кто-то нарисовал облака и звезды. Если день и ночь сменяются, то это происходит потому что они медленно перемещаются между коробками», — объяснил главный архитектор проекта Шон Мюррей. Небесная коробка — это также и барьер, который игрок пересечь не может. Звезды — лишь пучки света. Однако в No Man’s Sky каждая звезда открыта для посещения. Эта вселенная бесконечна. Ее края простираются в безжизненную бездну, в которую можно погружаться вечно.
«У нас, когда вы находитесь на планете, — продолжает Мюррей, — то можете видеть настолько далеко, насколько позволяет ландшафт. Если идти несколько лет, то можно обогнуть ее и оказаться в той же точке, откуда начали. У нас день сменяется ночью потому, что планета поворачивается вдоль своей оси, обращаясь вокруг ее звезды. Это реальная физика. У нас есть люди, которые прибывают на планету с космической станции и, когда они летят обратно, станцию на том же месте не находят — планета повернулась. Некоторые посчитали, что это баг».
На мониторе перед нами мелькают зашифрованные фрагменты исходного кода. Пока земные физики никак не могут найти математическую систему для описания всех феноменов Вселенной, ее эквивалент в No Man's Sky уже существует. Перед нами законы природы для целого космоса, уместившийся в 600 тысяч строк.
Вселенная начинается с единственного ввода, субъективного числового семечка — телефонного номера одного из программистов. Этот номер математически мутирует в большее количество семян при помощи каскадной серии алгоритмов — компьютеризированного генератора псевдослучайных чисел. Семена определяют характеристики каждого игрового элемента. Машины, безусловно, не способны на истинную случайность, так что генерируемые числа только кажутся случайными, потому что процессы, которые их создают, слишком сложны для понимания человеческим разумом.
Физики до сих пор спорят, определено все в нашей Вселенной все или случайно. Пока некоторые ученые верят, что квантовая механика практически точно подразумевает неопределенность, Альберт Эйнштейн, как известно, предпочитал противоположную позицию, сказав: «Бог не играет в кости». No Man's Sky тоже не играет в кости. Как только первое «семенное» число занесено в пустоты программы, вселенная задана — создание звезд, планет и организмов уже не обратить. Прошлое, настоящее и будущее зафиксированы, и только внешняя сила способна на изменения в системе — игрок.
С одной стороны (из-за процедурного дизайна игры), вся вселенная уже существует в момент ее создания. С другой, поскольку игра изображает только мир, непосредственно окружающий игрока, ничего не существует, пока человек это не увидит.
«На самом деле, не имеет значения существует ли то, что вокруг тебя или нет, потому что даже вещи, недоступные взгляду, постоянно занимаются своими делами. Существа на далекой планете, которую никто никогда не посещал, собираются на водопой или засыпают, так как живут по формуле, которая определяет куда им идти и что делать; мы просто не включаем эту формулу для места, пока не доберемся до него», — размышляет Мюррей.
Существа генерируются по процедурному искажению архетипов, и каждое из них наделяется уникальным поведенческим профилем. «Есть список объектов, о которых знают животные. Определенные животные схожи с некоторыми объектами и не похожи на другие, что является частью процесса придания им личных качеств и индивидуального стиля. У них есть друзья и лучшие друзья. Это всего лишь метка на куске кода, но другое существо такого же типа, находящееся рядом — его потенциальный друг. Они телепатически связываются с друзьями, спрашивают куда те направляются, и так координируют свои действия», — объясняет программист искусственного интеллекта Чарли Тангора.
Хоть и базовое поведение существ само по себе просто, их взаимодействие может впечатлить своей комплексностью. Арт-директор Грант Дункан вспоминает, как однажды бродил по незнакомой планете, стреляя от скуки по птицам: «Я попал в одну, и она упала в океан. Ее покачивали волны на поверхности, когда вдруг появилась акула и съела ее. Когда такое случилось в первый раз, мой мозг взорвался».
Команда запрограммировала часть физических законов из эстетических соображений. Например, Дункан настоял на том, чтобы орбиты спутников пролегали ближе к их планетам, чем позволяет ньютоновская физика. Когда он пожелал создать зеленое небо, команда была вынуждена переосмыслить периодическую таблицу, чтобы разработать атмосферные частицы, который преломляют свет при самой подходящей длине волны.
«Природа видео-игр — это конфликт, — настаивает Мюррей, — интересно поразмыслить над тем, к чему мы пришли. В нашей игре людям дается контроллер, они прилетают на планету, они видят инопланетянина, и если они играют в первый раз, скорее всего, они его застрелят, несмотря на то, что они только что проделали огромный путь, добравшись сюда. Но вот что мне действительно нравится, так это то, что 9 из 10 людей жалеют о содеянном. Ты не получаешь очки за убийство. Нет никаких золотых монет. Ты просто сделал это».
У игрока также нет никакого альтер-эго, за которым можно спрятаться.
«В большинстве игр ты начинаешь с выбора персонажа, — описывает Мюррей, — зачастую ты будешь играть за малоприятного персонажа с тонной броских фразочек. Твоим ником будет что-то вроде Айриша или Текса. В самом начале ты должен решить кто ты, и это может быть даже прежде, чем ты поймешь, как ты действительно хочешь играть. Мы хотим, чтобы люди пользовались своим воображением. Они могут быть кем хотят. Они могут быть пришельцами, если они хотят в них верить. Мне это очень нравится»
Во вселенной, где нет зеркал, как в этой, единственный способ увидеть себя — это попросить другого персонажа посмотреть на тебя и описать, что он увидел. Но, учитывая невообразимый простор этого космоса, случайно натолкнуться друг на друга — почти невероятное событие, достойное настоящего восхищения.
Для команды No Man’s Sky это чувство восхищения и есть сама суть.
Комментарии: pikabu.ru/story/_4019425