Наше оружие
Прислано Prorok June 17 2009 19:28:35
Появлению игр в формате «все как в жизни» применительно к оружию мешают три основных фактора. Два этих фактора на сегодняшний день являются непреодолимыми, но могут измениться в обозримом будущем. Третий преодолим в теории, но на практике стоит стеной не хуже первых двух.

Фактор №1, пока непреодолимый: недостаточная мощность современных компьютеров. Давайте представим, что в игру встроен баллистический калькулятор, который скрупулезно рассчитывает параметры внешней баллистики пульки, вылетевшей из ствола игрока, а также вычислитель сопромата для имеющихся в игре материалов.

Итак, выстрел. Небольшой остроконечный предмет исправно летит по параболической траектории. Постепенно под воздействием гравитации он снижается. Под воздействием сопротивления воздуха теряет скорость. Под воздействием деривации отклоняется в сторону, в которую направленны нарезы в стволе. Под воздействием ветра отклоняется в сторону направления ветра. Под воздействием встречного кустарника теряет скорость и дестабилизируется. Наконец, пулька попадает во врага, а вернее в его бронежилет. Томпаковая оболочка и свинцовая рубашка не пробивают бронепластину, а лишь деформируют ее, зато металлокерамический сердечник прошивает насквозь. Сердечник кувыркается в теле жертвы. создавая постоянный раневой канал и временную пульсирующую полость. Дробятся встречные кости, разрушаются ткани, и... «Остановись, сволочь! — сипит компьютер. — Я начал тормозить еще при обсчете пролета через ветки... Ты меня угробил... Памяти мне! Ах! Ох! Торможжж... (проходит 15 минут) жжжжууу...».

Компьютер, наконец, оживает. Он доволен собой, и не без оснований. Он не завис, а смог честно просчитать эту пулю от начала и до конца. Но в этот момент NPС отвечают на одинокую пулю игрока массированным автоматическим огнем...

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

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

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

Так, например, на форумах экшен-игр регулярно постятся вдумчивые сообщения от игроков типа «не, ну игра такая ничё вообще.... Только чего у вас калаш при стрельбе так болтает?!?! Я вот когда в армёжке стрелял, — у меня так не болтало!!!!».

При этом будьте уверены, если бы разработчики сделали, чтоб «калаш» подбрасывало меньше, сообщения от недовольных все равно были бы, только с обратным знаком «А чё не болтает???? Я вот когда был в армии, — у меня дрыгало так, шо еле держал!!!».

Игроки издеваются? Конечно нет.

Просто все люди разные. И если субтильный гражданин, будучи в армии, при стрельбе должен был упираться в стену, чтобы отдача не унесла его в страну Оз, то другой гражданин весом в 130 кг... Ему не то что отдача автомата пофиг, он и из полковой пушки наверно мог бы пульнуть не вздрогнув. Свой опыт граждане честно излагают разработчикам.

Человек при стрельбе из ручного оружия является его «станком». Оружие может быть одинаковым, но с разного станка оно дает разный результат. Условные цифры в игре эту антропо- и физиометрическую разницу между гражданами отразить, естественно, не в состоянии. Поэтому играть геймеру приходится не за себя, а за некого среднестатистического человека.

Максимум, что сегодня может сделать разработчик в своем стремлении к «реализму» — это составить некую «иерархию» в числовых значениях, которая соотнесет моделируемое в игре оружие по разным параметрам (точность, отдача и пр.) так, чтобы эта иерархия насколько возможно правдоподобно соотносилась с иерархией оружия в реальной жизни.

Приведу конкретный пример. Перенесемся на минуту в некий тир. Возьмем двух граждан с разной стрелковой подготовкой и физ. кондициями и дадим каждому из них поочередно пострелять из двух разных пистолетов. Ну, скажем, из пистолета Макарова и «Беретты 92FS».

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

И у того, и у другого стрелка, несмотря на их разные кондиции, ПМ всегда (!) будет лягаться сильнее, чем «Беретта», так как из-за конструкции его импульс отдачи значительно резче и жестче, несмотря на то, что он использует менее мощный патрон. Вот это мы и можем рассматривать как объективный фактор, который позволит нам расставить их в иерархической таблице по соответствующему параметру.

Однако даже если мы знаем, какое оружие в реальной жизни дрыгает больше, а какое меньше, как максимально корректно перенести их в условную систему игры?

Тут наступает время самого грустного фактора.

Фактор № 3 заключается в том, что большинство разработчиков имеет представление об оружии исключительно на основе вдумчивого просмотра голливудщины. К чему это приводит? Известно, что уже в момент освоения/разработки движка будущей игры, профильные сотрудники закладывают в него определенные программы, которые позволят выставлять оружию его игровые характеристики.

Даем зарисовку. Разработчик делает некую игру. Ну, скажем, «про спецназ». Геймдизайнер Вася справедливо решил, что у оружия, которое может лупить очередями, должен быть такой параметр как «темп стрельбы». Эту мудрую мысль Вася излагает в диздоке. Из диздока в нужный момент задание перетекает к программисту.

Программист — профессионал своего дела — создает программы для реализации оружейных параметров, интерфейс, в котором имеются окошки, где можно проставить все характеристики оружия в неких условных числовых единицах. Интерфейс этот, без дураков, весьма удобен в пользовании — знай, расставляй цифири.

Геймдизайнер, получив в свои трудолюбивые руки интерфейс, до ушей обкладывается оружейными справочниками и начинает радостно набивать всему оружию темп стрельбы:

АК-74 — 600 выстрелов в минуту;
М-16А2 — 800 выстрелов…

Характеристики набиваются бодро. Но тут очередь доходит до знатного советского автомата АН-94, и геймдизайнер Вася спотыкается. Почему?

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

Известно, что отдача крайне негативно влияет на точность стрельбы очередями. Если первый выстрел в очереди идет туда, куда целился стрелок, то все последующие — куда утащило ствол автомата отдачей. Для того чтобы этого избежать, конструктор АН-94 сделал так, что его автомат стреляет в сверхвысоком темпе (порядка 1800 выстрелов в минуту). При таком темпе и особенностях конструкции покинуть ствол АН-94 до того, как его начнет колбасить отдачей, успевает не одна пуля, а аж целых две. Но после этих первых двух пуль в очереди, выпущенных в темпе 1800, АН-94 в силу конструкционных особенностей резко снижает темп примерно до 600 выстрелов.

Темп стрельбы АН-94 и 1800 выстрелов, и 600 выстрелов. То есть темпа два. А вот окошко, что бы проставить темп, у геймдизайнера Васи только одно... Это засада.