Авторы брутального блокбастера рассказывают о том, как реализована амбициозная система навигации на воде
Лодка стала одним из тех элементов игры, над которым было интереснее всего работать. Еще со времен God of War II Кори хотел видеть в игре лодку. Однако ни в одной из предыдущих игр не было подходящей возможности. Но в переосмыслении God of War упор был сделан на путешествия и сюжет… а когда озеро Кальдера стало центральной локацией, наконец-то появился смысл в наличии лодки в God of War.
Бог весла
Первый прототип был очень простым. Вокруг Кратоса была создана модель лодки, а затем его самого перевели в положение сидя. Затем изменили скорость, сопротивление и общую модель движения таким образом, чтобы это было похоже на управление лодкой в игре.
Когда прототип был готов, начались разнообразные исследования. С самого начала было решено, что Кратос будет использовать только одно весло для управления лодкой. Так что в качестве источника вдохновения было выбрано одноместное каноэ, по крайней мере, в отношении анимации. Просмотрев множество видеоуроков по управлению каноэ на YouTube, дизайнеры поняли, как нужно анимировать Кратоса. Пришло время приступить к проработке, для чего была создана картонная лодка в натуральную величину.
Сложность разработки гребли в одноместном каноэ в том, что требуется очень много анимаций. Кратос должен двигаться всегда, когда движется лодка. То есть повороты, движение вперед, назад или вращение на месте требовали отдельных анимаций для правой и левой стороны.
Еще было очень непросто сделать так, чтобы Кратос ествественно менял положение весла с левой на правую сторону и наоборот. Были установлены временные этапы, в которые Кратос мог прервать греблю и перекинуть весло на другую сторону, и каждый раз это выглядело очень реалистично. Качество этих переходов, то есть отклика на действия игрока – одна из тех мелких деталей, которыми создатели гордятся больше всего.
Праворульное управление
После окончания работы над визуализацией движения еще куча времени ушла на правильное «ощущение». Пришлось много экспериментировать с вариантами настроек. Долгое время, чтобы заставить лодку двигаться, нужно было нажать кнопку «газа». Это было интересно и давало простор для применения других механик – например, увеличение скорости лодки при своевременном нажатии кнопки. Но гораздо важнее было дать игроку возможность исследовать мир, ни на что не отвлекаясь.
Оказавшись в лодке, вы ожидаете инертность движения. К примеру, если Кратос сделал несколько взмахов веслом, лодка должна некоторое время сохранять свою скорость. Ушло много времени на настройку ускорения, замедления и движения по инерции. Управление лодкой должно было стать очень отзывчивым, но чтобы игрок также ощущал и ее вес. Важно было сделать так, чтобы ускорение и поддержание скорости приносили удовольствие.
Работа над поворотами также оказалась непростым испытанием. В новой God of War игрок видит только то, что находится перед Кратосом, чего не было в предыдущих играх серии. Эта механика идеально дополняет кинематографическую камеру и помогает точнее метать топор, но во время плавания игрок в основном должен занимается исследованием окружения, поэтому необходимость постоянно поворачивать лодку могла создать неудобства игрокам, которые желали осмотреться по сторонам и насладиться всеми красотами озера Кальдера. Осознав это, авторы полностью перенести управление лодкой на левый джойстик.
Когда схема управления окончательно зафиксировалась, продолжилась работа над поворотами. Самое интересное, игроки поначалу жаловались на то, что лодка поворачивается слишком медленно. Но стоило увеличить маневренность, как игроки начинали говорить, что лодка неуправляемая. В общем, при любой скорости поворотов находились недовольные.
Старший дизайнер боевой системы Дин Раймер вспоминает:
«Когда не работаю над игрой, я обычно провожу время за рулем, предпочитая живописные каньоны знаменитым пробкам Лос-Анджелеса. Конечно, я также выезжаю на трассы. Многие люди предпочитают заднеприводные автомобили для езды по трассе. Одна из причин в том, что опытные водители могут использовать крутящий момент задних колес для управления автомобилем. Такое явление называют заносом.
Сначала движущая сила “исходила” из центра лодки. По сути, наша лодка была “полноприводной”. Но потом мы попробовали сместить движущую силу так, чтобы она исходила из задней части лодки. Теперь лодку можно было назвать “заднеприводной”. Мгновенно мы начали получать отзывы от наших тестеров, что скорость поворота лодки увеличилась, как и ее маневренность. Теперь игроки могли использовать “занос”, чтобы развернуть судно в нужном направлении».
Камера, Кратос и отсутствие склеек
Но сложнее всего было реализовать то, как Кратос садится и вылезает из лодки. Эту проблему было очень трудно решить. Если игроки стоят лицом к лодке и находятся достаточно близко, игра сигнализирует, что в нее можно залезть. Камера находится очень близко к Кратосу, так что пришлось проработать визуальную сторону – ошибки невозможно было бы спрятать. Само собой, сыграл роль отказ от монтажных склеек. Авторы хотели, чтобы Кратос залезал в лодку плавно и размеренно, независимо от скорости движения и угла, под которым он расположен к лодке.
Чтобы Кратос мог сесть в лодку, дизайнерам пришлось потратить много времени на разработку системы, которая отвечала бы за правильное расположение игрока по отношению к объектам в игре (лодке, сундукам, дверьми и т. д.). Эта система отвечала за навигацию и вела игрока к его цели, всегда выбирая кратчайший путь и скорость следующего движения. После внедрения этой системы игрок мог плавно забраться в лодку, приблизившись к ней под любым углом и на любой скорости.
Посадить Кратоса в лодку, помня о свободе действий игрока, это одно, но что насчет его сына? Очевидно, если Кратос мог плавно забраться в лодку независимо от угла сближения и скорости, то это должно быть справедливо и для его сына. Причем он мог как следовать за Кратосом, так и вести его за собой по миру игры. Следовательно, нужно было разработать систему, позволяющую Атрею залезать в лодку при различных стартовых условиях.
На любом берегу или пристани есть зоны, куда Атрей не может заходить. Вы могли заметить, что, подбегая к лодке, мальчик немного задерживается. Как только вы нажимаете кнопку, чтобы залезть в лодку, вращение камеры ограничивается. На основании угла сближения и скорости Кратоса его сына размещается так, чтобы он органично садился в лодку вместе с вами.
Итак, герои оказываются в лодке. Но как они из нее выбираются? Это оказалось не менее трудно продумать. Пристань пристани рознь. Сложность в том, что таким же образом, как Кратос подходил к лодке, так и лодка могла подойти к пристани под разным углом и с разной скоростью. И все же высадка из лодки должна была быть убедительной и происходить максимально быстро. Чтобы добиться этого, пришлось произвести некоторые расчеты. Когда вы нажимаете кнопку, чтобы выбраться из лодки, система определяет угол и расстояние между лодкой и пристанью.
В зависимости от того, насколько сильно нужно повернуть лодку и с какой стороны берег, происходит выбор между 10 различными анимациями. Выбранная анимация обрабатывается собственной технологией – «стабилизатором движений», чтобы выровнять лодку и пристань.
В случае с пляжами было ничуть не легче. После того, как игрок подплывал к пристани и нажимал на кнопку, лодка пристыковывалась к конкретной точке. Но на пляже игрок мог уткнуться в берег практически в любом месте. Нужно было удостовериться, что лодка причаливает к песчаному берегу, а не скалам, и с этой задачей справились при помощи одного хитрого приема – проработали навигационную сетку. Обычно такие сетки используются при программировании ИИ персонажей, чтобы они знали, куда могут пройти в игровом мире. Дизайнеры уровней используют генерацию навигационной сетки для определения доступного персонажам пространства. Навигационную сетку можно накладывать на пространство, свободное от препятствий, так что на него можно было положиться при определении мест безопасной высадки на берег.
Расскажи историю, Мимир
Многие игроки высоко оценили беззаботные диалоги, которыми персонажи развлекают себя в лодке. Мимир оказался великолепным собеседником. Во время плавания он поведал Кратосу и его сыну множество легенд и фактов из истории Мидгарда. Но и здесь важно было продумать систему, чтобы игрок мог в любой момент покинуть лодку, не прерывая беседу на полуслове.
Система диалогов воспроизводит звуковые отрывки только в определенные моменты игры. Один такой отрывок состоит из нескольких маленьких отрывков, воспроизводящихся последовательно один за другим. Пока вы находитесь в лодке и слушаете Мимира, персонаж непрерывно и последовательно рассказывает историю. Если вы решаете выбраться из лодки, он заканчивает рассказ заготовленной фразой, пока группа выбирается из лодки. А когда вы вновь оказываетесь в лодке, Мимир продолжает мысль с того момента, где прервался в прошлый раз.
Заключение
Дизайнеры с самого начала осознавали, какая ответственность лежит на них из-за решения добавить в God of War возможность перемещения на лодке. Это сложный элемент с множеством мелких нюансов. Команда проделала великолепную работу… это стало возможным благодаря целеустремленности команды студии Santa Monica. Теперь они заслуженно и с большим удовольствием читают отзывы поклонников игры, особенно те, что связаны с лодкой.
Еще немного фактов о лодке
- Для лодки разработано более 600 уникальных анимаций.
- Для эпизодов с лодкой прописано более 750 строк диалога.
- В Альфхейме своя уникальная лодка, весло и фонарь.
- Анимации посадки и высадки меняются с появлением Мимира.
- На пристанях лодка знает, какой стороной она причалила, что влияет на анимацию посадки и высадки.
- Когда игрок забирается в лодку, световая панель контроллера DualShock 4 окрашивается в цвет морской волны.
- Хотя Кратос оставляет весло в лодке, движок игры определяет его как оружие.
- Один из багов тестовой версии игры заключался в том, что Кратос отказывался оставлять весло в лодке и выбирался вместе с ним.
Комментарии закрыты.