Что такое физика в играх
Перейти к содержимому

Что такое физика в играх

  • автор:

Что такое игровая физика и какие виды бывают

Что такое игровая физика и какие виды бывают

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

Как создаются видеоигры от идеи до продажи

Разбор всех этапов разработки видеоигр начиная от цели будущего проекта и заканчивая старатом продаж.

Сегодня качественную физику в играх игроки принимают как должное. Они даже не понимают, что над каждым элементом трудятся десятки часов, чтобы он двигался как в реальной жизни. Банальный пример: если персонаж осуществил прыжок, то он должен приземлиться на землю, а не отправиться куда-то в стратосферу. Казалось бы, все просто, но нет. Даже такие элементарные правила приходится описывать длительное время.

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

Зачем в играх нужна физика?

У игровой физики много задач, но самая главная – это сделать игру интуитивно понятной и увлекательной. Когда объекты ведут себя непонятно, то геймер не понимает правила игры. Например, если во время удара мяча в FIFA он будет прыгать в разные стороны, то вряд ли у вас получится забить гол. Именно поэтому поведение мяча реализуется с учетом силы удара, скорости тела и траектории. Благодаря этому игрок легко понимает правила игры и знает, что делать, чтобы забить гол. К слову, в FIFA 20 создатели наворотили с физикой таких делов, что получили тысячи негативных отзывов только из-за кривой физики движения футболистов и мяча.

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

То есть без физики вообще некуда, и от ее качества зависит успех игры, но кроме прописанных правил, важно правильно сделать баланс, либо четко дать понять игрокам на что им рассчитывать.

Яркий пример — это гоночные симуляторы и аркадные гонки. Например, в сериях Forza Motorsport и Gran Turismo игроку предлагают реалистичное управление машиной. Он сразу понимает, чего ждать от проекта, и покупает его, если хочет ощутить себя за рулем реального автомобиля. В то же время серия Need for Speed – это аркадная гонка, где резкие повороты и касание препятствий практически не влияют на управляемость транспортным средством. Игрок прекрасно понимает, что потеть во время заезда ему не придется, он кайфует от сеттинга, трасс и крутых тачек. Идеальный вариант, когда гонка изначально делается как симулятор, но в ней есть аркадный режим для тех, кто с автомобилями на «ВЫ».

Физика твердого тела в 2D играх

Что такое игровая физика и какие виды бывают

Теперь разберем разновидности физики в современных играх и начнем с той, что используется для твердых тел. Именно про нее чаще всего говорят, когда речь идет о физике, и ярким примером можно назвать тот самый мяч из FIFA. К тому же, в зависимости от количества измерений, в игре есть небольшие отличия.

Физика 2D игр, как правило, делается максимально просто. Тем не менее разработчики прописывают законы для виртуальной гравитации, сопротивления, изменения скорости и многое другое. Если в игре есть чем стрелять, то отдельно программируют снаряды. Причем если обратить внимание, то стрела во время полета не меняют свою форму, а вот, например, ракета может, потому что ее плоскость меняется с увеличением скорости полета, как в реальной жизни.

Также стоит отметить, что от примитивных законов физики в 2D играх разработчики постепенно пришли к программированию гравитации, инерции и импульса. Впервые это появилось в Mario Bros, но в довольно топорном виде. Если бы веселый водопроводчик двигался по настоящим законам физики, то дальше первого обрыва никуда бы не убежал.

Как обстоят дела с физикой в 3D проектах?

Что такое игровая физика и какие виды бывают

С 3D физикой ситуация другая, потому что для ее реализации приходится делать больше вычислений, добавляется еще одно измерение – ось Z. При этом в 3D играх каждая модель состоит из набора твердых объектов, а не из одного, как в 2D. Именно поэтому часто возникают проблемы. Если в Марио нужно прописывать одно касание, например, он прыгает и кулаком бьет в блок из кирпичей. Во время прикосновения срабатывает команда, которая заставляет блок выплюнуть монетку. Монетка единожды касается Марио, он ее забирает, количество монет увеличивается. В 3D играх такое не прокатит. Возьмем, например, Tomb Raider, в котором Лара, когда забирается на скалу, касается ее одновременно руками и ногами. Все это твердые тела, которые взаимодействуют со скалой, а та в свою очередь состоит из десятков других твердых моделей.

В 3D проектах конечности персонажа состоят из нескольких твердых тел, которые соединяют суставами. Существует специальная система скелетной анимации, которая позволяет реализовать подобное. При этом все элементы, из которых состоит персонаж, еще и должны работать по определенному алгоритму. Сегодня их существует огромное количество, например, процедурная анимация использовалась в серии Medal of Honor, интегрирование Верле в Hitman, а для Halo и Half-Life применяют инверсную кинематику.

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

Если вы думаете, что серия Sniper Elite – это прям на 100% реалистичный симулятор стрелка, то очень сильно ошибаетесь. На самом деле игра упрощена до невозможности, во время выстрела не учитывается движение цели, температура воздуха, скорость и направление ветра, а также множество других факторов. Почему? Да потому что даже заядлым поклонникам реализма это не интересно. Никто не будет играть в подобное, поэтому геймеру лучше вообще не знать, что реальные снайперы учитывают все эти вещи, проще сделать реалистичный прицел и добавить пулю, которая летит в слоу-мо.

Мягкие тела в играх

Что такое игровая физика и какие виды бывают

К таким моделям в играх относятся волосы, одежда, вода, дым и многое другое. По сути, к этой категории можно отнести все элементы, которые могут деформироваться при воздействии внешних сил. Если представить, что твердое тело состоит из точек, то они всегда будут находиться на одном расстоянии друг от друга. Когда колесо движется, оно же не увеличивается в размерах, верно? А если представить, что мягкое тело состоит из точек, то во время движения или воздействия на него сторонних сил расстояние между ними будет меняться.

Даже сегодня реализация физики мягких тел сильно упрощена. Разработчики пытаются выдумывать новые подходы, чтобы получить достойный результат, но получается это далеко не всегда. Вся проблема в сложности создания физики мягких тел, и пока даже самые маленькие успехи, вроде поведения снега в Red Dead Redemption 2, уже считаются огромной победой.

Деформация виртуальных тел

Что такое игровая физика и какие виды бывают

Как правило, чтобы создать физику мягких тел, их перемещение ограничивают. Если такое тело состоит из точек – это значит, что расстояние между ними может меняться, но окончательно отделиться друг от друга у них не выйдет. Именно за счет ограничения и получается сделать более-менее реалистичную физику, но далеко не всегда. Разработчики, часто, используют зацикленную анимацию, но срабатывает она только для тех мягких тел, которые не в центре внимания. Если бы так делали физику, например, для плаща Бэтмана в серии Arkham, то вы бы уже давно заметили, что с ним что-то не так. Когда разработчики знают, что геймеры постоянно будут смотреть на игровой элемент или будут с ним взаимодействовать, то от трюков с зацикленной анимацией отказываются.

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

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

Надеемся, что эта статья стала для вас полезной, и вы узнали что-то новое об игровой физике. Если хотите углубиться в тему, то можете почитать документацию к таким игровым движкам, как Unity и Unreal Engine 4, у них есть огромные разделы про физику в играх, где все расписано более подробно.

8 доступных игровых движков, на которых можно сделать свою игру

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

Что такое игровая физика?

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

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

Физика в играх делится на физику твёрдого и мягкого тела. Первую применяют в 2D и 3D проектах, также она обращается почти что ко всем моделям. Вторая указывает на итог воздействия экзогенных сил на объект. К этому относится, допустим, поведение, развивающейся на ветру, накидки персонажа.

Для чего нужна физика в видеоиграх?

На самом деле физика выполняет множество задач и главная из них – это завлечь и удержать игрока. Благодаря физике игроки лучше воспринимают происходящее в виртуальном мире, а также с ней игра становится более захватывающей и интересной. Не менее важно сделать игру понятной любому человеку. Ведь если в игре происходит что-то необъяснимое, например, объекты ведут себя не так, как должны, то геймер не понимает, как ему поступить, чтобы продвинуться дальше.
Физику, полностью приближённую к реалиям, разработчикам создавать не нужно, так как игра – это в первую очередь развлечение. Если бы герой моментально умирал в любой аварии или же другом экстремальном моменте, даже лёгкой формы, то приходилось бы начинать задание заново и перепроходить его несколько раз. Физика в гейм индустрии важна, без неё не получится действительно стоящего проекта, поэтому разработчики стараются сбалансировать все алгоритмы, чтобы игроки понимали возможности игры и на что им, собственно, стоит рассчитывать.

Например, серия гоночных игр под названием “Gran Turismo” отличается реалистичным управлением машиной. Человек, который приобретает эту игру, хочет почувствовать себя на месте водителя авто. А вот серия “Need for Speed” – это больше аркадная гонка с резкими поворотами. Правда самым лучшим вариантом является игра представленная изначально симулятором, но с добавлением аркадного режима.

Физика мягкого тела

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

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

Физика твёрдого тела

Эта физика направлена на выполнение физических законов, применяемых к твёрдым массам вещества. Твёрдое тело не может изменять свою форму. К данной категории относятся: камни, снаряды, конечности человека и другое.
В 2D играх физика твёрдых моделей делается легко. Но разработчики продумывают законы для воображаемой гравитации, сопротивления, увеличения или уменьшения скорости.

Для того чтобы реализовать физику в 3D играх нужно посильнее напрячься, так как в этих проектах добавляется дополнительное измерение – ось Z. Также в таких играх у любой модели есть набор твёрдых объектов. Например, в серии игр “Tomb Raider” главная героиня, во время взбирания на скалу, хватается за неё не только руками, но и касается ногами. Конечности – это твёрдые тела, которые, в свою очередь, взаимодействует со скалой. И сама скала же сделана из других твёрдых объектов.

Итог

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

Физика в компьютерных играх. Как и с помощью чего реализуется?

Lorem ipsum dolor

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

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

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

Поэтому задумано так: когда «мягкий объект» является центром внимани я — применяют расчет деформации, когда «мягкий объект» является второстепенным планом, то применяют простое зацикливание его движений.

Напишем

Заключение

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

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

Мы будем очень благодарны

если под понравившемся материалом Вы нажмёте одну из кнопок социальных сетей и поделитесь с друзьями.

Мотор! или Что такое игровая физика

Разработчикам при создании игры приходится искать баланс не только в механиках, но и в физике. Реализм или аркада? В общем-то, кому что нравится. Главное — фан и удовольствие. Нужно создать фундаментальные законы своего мира, и объяснить, что возможность ходить по потолку — механика, а не баг.

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

Физика в видеоиграх часто воспринимается как должное. Если персонаж прыгает, он обязан приземлиться, а не улететь в космос (хотя при достаточно долгой игре в Skyrim, подобное все равно может случиться). Мы ждем, что объекты в игре будут вести себе как в жизни (баги в расчет не берем).

Программирование физики может сводиться к одному-двум методам с парой строчек кода. А может и к сложной системе с отдельным физическим движком (например, Havok или PhysX) с миллионами строк кода. Независимо от сложности игровая физика делится на две категории: физика твердого тела и физика мягкого тела.

Физика твердого тела необходима в большинстве 2D- и 3D-игр. Физика мягкого тела описывает действие сил на объект, который принимает различные формы (например, флаг). Отобразить мягкое тело намного сложнее, поэтому такой подход используют гораздо реже.

Важная роль игровой физики

Игровая физика служит разным целям, но самые главные — интуитивность и веселье. Если объект ведет себя непредсказуемо, будет сложно понять правила игры.

Если бы мяч в FIFA 20 каждый раз отскакивал в случайном направлении, было бы невозможно забить гол. Разработчики стараются воссоздать отскок мяча в зависимости от его траектории, скорости и других факторов, действующих в реальном мире. Чтобы игрок интуитивно понимал, как обращаться с мячом или другими объектами. К слову, у FIFA 20 куча плохих отзывов именно потому, что ее физика работает не так, как того ожидали фанаты.

При этом игры не обязаны строго соблюдать естественные законы природы. Главное — игра должна приносить удовольствие, а реализация реальных физических законов может уничтожить весь экспириенс. Представьте Grand Theft Auto V с суровой земной физикой (но если очень хочется, то можно поставить специальный мод). Даже легкая авария на высокой скорости закончилось бы фатально, убило бы темп и атмосферу. Не очень-то весело.

Разработчик должен найти нужный баланс между веселой игрой и игрой с реалистичной физикой. И он часто зависит от целевой аудитории. Хороший пример — гонки.

Многим нравятся аркадные гонки (Need For Speed), в которых касание отбойника или резкий поворот слабо сказываются на управлении машиной. Другие предпочитают реалистичные гоночные симуляторы (Gran Turismo).

Но даже создавая симуляторы, разработчики пытаются привлечь новую аудиторию — Gran Turismo делала ставку на фотореализм (и в какой-то мере это сработало). Но в итоге Polyphony Digital добавила аркадный режим, чтобы захватить рынок побольше.

Физика твердого тела

Говоря об игровой физике, мы обычно имеем в виду физику твердого тела (rigid body physics, RBP). Она описывает и воспроизводит физические законы, применимые к твердым массам вещества. Мяч в FIFA 20 — твердое тело, которым управляет физика игры.

Неважно рассматриваем мы 2D-тайтлы типа Pong или 3D типа Skyrim — в большинстве игр есть линейная физика твердого тела.

Физика 2D-игр

Возьмем Pong в качестве примера. Два твердых тела (мяч и ракетка) снова и снова сталкиваются друг другом. Звучит не слишком воодушевляюще. У дедушки видеоигр не было реалистичной физики.

Во-первых, программисты проигнорировали гравитацию, трение и инерцию. Был просто мяч, перемещающийся туда-сюда с постоянной скоростью.
Во-вторых, угол отскока мяча от ракетки был рассчитан неточно. Мяч полностью игнорирует закон отражения: если не учитывать вращение и прочие факторы, угол падения мяча на поверхность равен углу его отскока от нее. В Pong угол отражения определялся тем, насколько близко мяч был к центру ракетки в момент соприкосновения. Изначальная траектория не имела значения. Игроки могли полностью изменить инерцию мяча, несмотря на вектор его движения.

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

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

Поведение твердых тел (в первую очередь снарядов) зависело от нескольких сил. В соответствии с ними менялись анимации. Стрелы и ракеты — отличный пример анимации твердых тел в подобных играх. Плоскость снаряда могла измениться во время полета, а стрела так и оставалась прямой. Две точки на объекте в системе твердых тел всегда будут на одинаковом расстоянии друг от друга.

Игры типа Donkey Kong и Mario Bros. сильно повлияли на физику 3D-проектов. Марио подружился с основными физическими законами — гравитацией, импульсом и инерцией. Прыжок стал основной механикой и остался в игровой индустрии навсегда.

Подпрыгнувший объект должен упасть обратно. Вопрос только в том, насколько высоко он поднимется и насколько быстро упадет? И насколько реалистичной должна быть гравитация в игре?

Если бы Марио подчинялся реальным законам физики, он бы никогда не прошел первый уровень. Баланс пришлось менять в угоду веселого геймплея и ожиданий игроков.

Дальнейшие игры серии расширили эти границы — появился двойной прыжок. В этой франшизе его впервые добавили в Super Mario 64, но ранее его уже использовали в Dragon Buster в 1984 году.

Двойной прыжок стали активно использовать в платформерах (иногда даже слишком). И он до сих пор есть во многих современных проектах, включая 3D. Например, Devil May Cry и Unreal Tournament.

Физика 3D-игр

Физика в 3D-играх не сильно отличается от физики в 2D-проектах. Вычисления усложняются за счет третьего измерения (оси Z) и того, что объекты состоят из нескольких твердых тел.

В большинстве 2D-игр разработчикам нужно единовременно обрабатывать данные всего нескольких столкновений твердых тел. Например: Марио прыгает на Купу. Марио может дотронуться до любой части Купы. В зависимости от точки соприкосновения либо Купа прячется в панцирь, либо Марио теряет жизнь. В любом случае речь идет о единственном касании.

В 3D-играх одновременно сталкиваются сразу несколько твердых объектов. В Uncharted, когда Дрейк взбирается по скале, программа следит как минимум за его руками и ногами — отдельными твердыми телами. Он может подпрыгнуть и схватиться за лестницу одной рукой или двумя, и анимация будет разной.

В 3D-играх (и некоторых 2D) конечности персонажей разбиты на несколько твердых тел, которые соединены суставами. То есть модель человеческой руки состоит из предплечья и кисти, которые соединены запястьем и крепятся к плечу локтевым суставом. Это описывает рэгдолл-физика (от англ. ragdoll — тряпичная кукла).

Изображение: University of California, Riverside

Соединения твердых тел (суставы) создаются в системе скелетной анимации игрового движка. Каждое твердое тело должно двигаться по определенным правилам, чтобы выглядеть реалистично. Для просчета движений программисты используют различные техники. Самая известная — алгоритм Физерстоуна, ограничительный подход, который не дает конечностям болтаться как попало.

Есть и другие подходы к работе с рэгдоллом: интегрирование Верле (Hitman: Codename 47), инверсная кинематика (Halo: Combat Evolved и Half-Life), смешанный рэгдолл (Uncharted: Drakes Fortune и многие другие) и процедурная анимация (серия Medal of Honor).

Все эти техники направлены на то, чтобы тело не обмякло слишком быстро и не падало на землю, как тряпичная кукла. Движение твердых тел, объединенных в модель, ограничено, поэтому они ведут себя предсказуемо.

Напомню, всегда нужно искать баланс между реализмом и весельем. Даже если игра будет немного «читерить».

Возьмем серию Sniper Elite. В реальном мире стрелок должен принимать в расчет кучу переменных: скорость ветра, направление ветра, диапазон, перемещение цели, мираж, источник света, температура, давление и эффект Кориолиса.

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

В Call of Duty: Modern Warfare есть уровень, где нужно поразить цель с дальнего расстояния. Игрок должен учесть эффект Кориолиса, а также скорость и направление ветра. Некоторым нравится такой челлендж, но я ее забросил.

Гонки — еще один жанр, в котором требуется много вычислений по твердым телам и действующим на них силам. Колеса контактируют с дорожным покрытием, подвеска соприкасается с колесами, машины сталкиваются друг с другом. Еще другие объекты прямо или косвенно участвуют в столкновениях.

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

В симуляторах Gran Turismo и Assetto Corsa действуют более реалистичные силы. Например, Assetto Corsa Competizione (версия 1.0.7) использует пятиточечную модель шин. Она включает две точки на передней кромке шины, две на задней и одну посередине — все вместе действуют как объединенное твердое тело. Точки могут двигаться и изгибаться в трех измерениях, независимо реагируя на внешние силы и контакт с поверхностью. Дополнительные точки значительно увеличивают количество вычислений, которые выполняет движок.

Физические модели в 3D-тайтлах намного сложнее, чем в 2D. Приходится отслеживать больше переменных и точек соприкосновения. Но большинство вычислений линейные, поэтому такие модели гораздо проще, чем модели мягкого тела.

Физика мягкого тела

Физика мягкого тела (soft body physics, SBP) описывает деформируемые объекты. Она используется реже и сильно урезана в видеоиграх из-за огромного количества вычислений.

Мягкие тела — это одежда, волосы, скопления частиц типа дыма или тумана. Точки твердого тела всегда остаются на одном и том же расстоянии друг от друга. А мягкое тело может деформироваться и двигаться так, что расстояние между его точками будет меняться.

Деформируемые твердые тела

Движение мягкого тела может быть ограничено. Все точки флага всегда будут оставаться на флаге, они не могут отделиться. Диапазон отклонения точек друг от друга зависит от расстояния между ними на разглаженном флаге.

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

Количество вычислений для мягкого тела превосходят возможности CPU и GPU. Поэтому разработчики упрощают и хитрят. Например, используют зацикленную анимацию. Но такая картинка покажется неестественной через какое-то время. Лучше к такому лайфхаку не прибегать, если объект находится в центре внимания.

У одежды почти такие же свойства мягкого тела, как и у флага, но ее физика еще сложнее. Во-первых, потому что игрок точно обратит на нее внимание. Во-вторых, потому что она зачастую более динамична: игрок оказывает на нее собственное влияние. Отличный пример — плащ Бэтмена в серии Arkham.

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

Тут в дело вступают физические движки. В Batman: Arkham Knight студия Rocksteady использовала APEX Cloth PhysX. Этот инструмент позволяет создавать маску для тел, отображающих одежду, и настраивать параметры их движения. В зависимости от конфигурации можно отобразить все от шелка до мешковины.

Для улучшения производительности можно ограничить воздействие естественных сил на ткань. Например, Wind Method (Отображение ветра) можно установить на Accurate (Точное) или Legacy (Частичное). Частичное отображение игнорирует мелкие колебания, производится меньше вычислений.

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

Системы частиц мягкого тела

Отобразить дым или облака еще сложнее. Точки таких объектов могут перемещаться нелинейно относительно друг друга. Какие-то точки могут перемещаться за пределы образной границы объекта и даже формировать другие мягкие тела.

Физические движки значительно улучшили системы частиц за последние годы. Посмотрите на приветственный экран из Skyrim и насколько там реалистично выглядит дым.

У каждой частицы в системе мягкого тела статическая продолжительность жизни. Это период с момента ее возникновения до момента ее исчезновения (через какое-то время источник частиц создаст ее снова). В течение этого периода точка перемещается с учетом заданных параметров.

Рассмотрим дым от костра в качестве примера. Каждая частица перемещается вверх от источника: нелинейно, кружась и случайным образом меняя свое положение в пространстве. Так и поднимаются, пока не закончится их продолжительность жизни, а затем удаляются.

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

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

В самой игре дым от огня выглядит уже не так реалистично. Он все еще довольно убедителен, но стал проще: разработчики сократили время отображения частиц в симуляции. Есть и другие уловки. Например, наложение нескольких статических слоев дыма

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

Подытожим

Физика видеоигр — сложная область, в которой разработчики ищут баланс между реализмом и ограничениями вычислительных мощностей. Хитрости, упрощения и физические движки позволяют быстро создать довольно реалистичную физику, чтобы главное внимание уделить более важным аспектам игры.

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

Если хотите лучше разобраться в физике видеоигр, то посмотрите соответствующие разделы в руководстве Unity или руководстве Lumberyard.

  • Блог компании Playgendary
  • Разработка игр
  • Дизайн игр
  • Игры и игровые консоли

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *