Онлайн
библиотека книг
Книги онлайн » Домашняя » The Last of Us. Как серия исследует человеческую природу и дарит неповторимый игровой опыт - Николя Денешо

Шрифт:

-
+

Закладка:

Сделать
1 ... 23 24 25 26 27 28 29 30 31 ... 86
Перейти на страницу:
уже стараться сделать их умными.

Марк Ботта, «Infected AI in The Last of Us», Game AI Pro, Vol. 2.

Не будем лукавить. В The Last of Us искусственный интеллект – точнее то, что мы подразумеваем под этим понятием – очень далек от идеала. Можно даже честно заявить, что это одна из самых больших проблем игры. Из-за нее становится очевидно, что по убедительности геймплей недотягивает до сюжета, в который и правда вложено много работы. Но пусть это не помешает рассмотреть серьезную и актуальную проблему для всей индустрии, которая старается экспериментировать и проявлять всю возможную изобретательность, чтобы оживить бои в играх.

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

В играх серии Mario Bros. тоады и другие существа, преграждающие путь сантехнику, задуманы не как жестокие противники, а как препятствия. Ведь в первую очередь игра испытывает мастерство игрока. В Pac-Man наоборот – призраки неустанно преследуют нашего круглого героя и следят за каждым его движением благодаря алгоритму, который анализирует движения джойстика.

Вот более свежий пример – искусственный интеллект саранчи, чудовищных противников в игре Gears of War от студии Epic. Они запрограммированы постоянно наседать на игрока, а если и давать иногда слабину, то только чтобы спровоцировать игрока на риск. А что же The Last of Us? Вы вряд ли удивитесь, узнав, что технические специалисты Naughty Dog с самого начала разработки геймплея – в 2008 году – хотели использовать поведение неигровых персонажей на благо сюжета.

Трэвис Макинтош, один из главных программистов студии, подробно описал этот процесс в статье для специализированного журнала Game AI Pro[50]: «Когда мы начали разрабатывать первые прототипы ИИ врагов-людей, мы задались вопросом: „Как заставить игроков почувствовать, что противники достаточно человечны, чтобы убивать их стало неприятно?“ Ответив на этот вопрос, мы нашли нужное направление[51], которое определило весь дальнейший дизайн искусственного интеллекта. Набрать лучших актеров, лучших специалистов по графике, лучших аниматоров – всего этого недостаточно. Нужно, чтобы уровень искусственного интеллекта соответствовал всему этому».

Давайте перейдем к технической стороне вопроса – держитесь, это будет интересно! Модель, которой пользовались в Naughty Dog для создания искусственного интеллекта со времен Jak and Daxter, называется «машина с конечным числом состояний»[52].

Эта система стала популярной после выхода Half-Life от студии Valve в 1998 году и до сих пор широко используется в видеоиграх. Если коротко, это метод теоретического моделирования сложных математических задач. Для примера возьмем неигрового персонажа (NPC), функция которого заключается в охране некой двери. В исходном состоянии он блокирует доступ к ней. При приближении игрока он поднимает оружие и требует пропуск. Когда NPC показывают документ, он опускает оружие и отходит в сторону, пропуская игрока. Как только он проходит, привратник возвращается в исходное положение. Вот как выглядит схема его действий.

Это упрощенный пример, но по нему можно понять две особенности такого подхода. Каждое из «состояний» («NPC блокирует вход», «NPC отходит в сторону и пропускает игрока») должно быть предусмотрено заранее и проверено на реакцию со всеми возможными взаимодействиями, никаких неожиданностей здесь не предусмотрено. Иными словами, все прописано заранее.

С помощью этого примера можно понять, что использование термина «интеллект» во многих случаях лишь преувеличение. Разработчики The Last of Us немного переработали идею «состояний» и «взаимодействий» и назвали их «Навыки» и «Поведение» (Skills and Behaviours). Идея в следующем: сначала нужно определить полный перечень действий, которые способен выполнять NPC, а затем перечислить все возможные для него взаимодействия с окружающим миром. Например, человек способен исследовать, наблюдать, прятаться и стрелять, а зараженный – бродить и преследовать добычу. В Game AI Pro Марк Ботта так говорит об этой архитектуре: «Как правило, персонажам не нужна сложная система принятия решений, чтобы выглядеть убедительными и создавать иллюзию интеллекта. Им достаточно казаться реалистичными и правдоподобно реагировать на окружающий мир».

Хотя система «машина с конечным числом состояний» может показаться сложной и тяжеловесной из-за необходимости просчитывать все возможные взаимодействия, она дает разработчику определенную гибкость. Каждую идею можно протестировать и при необходимости добавить новый элемент («Навык» или «Поведение»). Его легко интегрировать без проблем для остальной части архитектуры искусственного интеллекта. А когда все возможные ситуации проработаны, дизайнер ИИ отправляет этот документ разработчику. Тому остается лишь переложить случаи, описанные в диаграмме, на язык программирования.

Организованная охота

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

Для обнаружения нападающих охотник использует два чувства. Во-первых, это зрение. Поле зрения у этих противников устроено довольно сложно и раньше в подобных играх не встречалось. Учитывая мир The Last of Us, наполненный руинами, охотники видят в открытом пространстве под углом 90 градусов на расстояние примерно десять метров. Затем угол зрения уменьшается до 45 градусов.

Эта система более сложная и реалистичная, чем, например, в Uncharted или Metal Gear Solid 3. Там поле зрения NPC составляет 45 градусов, поэтому они часто не видят вас, даже когда вы вплотную подходите к ним в ближнем бою.

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

Как только охотник узнает о присутствии игрока, он переходит в режим «поиска», пока не найдет бездыханное тело товарища. Затем он переключается в режим «исследование», в котором его слух и зрение обостряются. Столкнувшись с игроком лицом к лицу, охотник включает сложный алгоритм ведения боя. Большую часть времени этот процесс работает нормально, но ужасно зависимым от особенностей местности. На закрытых или относительно небольших локациях последовательность действий охотника реалистична, а сражения динамичны. Но на более открытой территории – к примеру, в Питтсбурге или среди маленьких домов в пригороде – охотники легко теряют игрока и через несколько секунд возвращаются к своим делам, как ни в чем не бывало. Не слишком эффективная система, но в последние полгода разработки ее подправили. Увы, в итоге она недотянула до изначальных требований и не соответствует уровню реализма, который задали себе разработчики Naughty Dog.

Интеллект зараженных

Теперь, когда мы рассмотрели довольно простую схему действий противников-людей, давайте изучим зараженных. Как уже упоминалось в четвертой главе, специфика этих врагов – разделение на несколько категорий. Помимо внешности, уровня смертоносности атак и их количества, у каждого типа зараженных свой ИИ. Они отличаются друг от друга степенью остроты слуха. К примеру, щелкуны слепы и реагируют только на звуки. Поэтому их слух в шесть раз острее, чем у охотника, что вынуждает игрока старательно использовать стелс. «Состояния» или «Навыки» зараженных также варьируются от вида к виду.

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

1 ... 23 24 25 26 27 28 29 30 31 ... 86
Перейти на страницу: