Введение
Компьютерные игры стали частью нашей жизни. В них играют как взрослые, так и дети. У каждого свои намерения в играх: провести свободное время, отвлечься от реальности, погрузиться в интересные миры и т.п. С каждым годом игры становятся всё интереснее и качественнее в плане сюжета, геймплея, графики и физики, перенесённой из реальности в игру.
Но даже простые явления физики в трёхмерном пространстве на деле оказываются длинным и сложным программным кодом, на который у программистов уходит не одна неделя. С первого взгляда кажется, что физика нашего мира и игрового кардинально отличается, выглядит коряво, но это всего лишь ошибки в программном коде, которых не избежать, но в конечном результате некоторые игры не отличить от реального мира и в графике, и в физике.
Поэтому я поставил перед собой следующую цель: изучить физические явления из реального мира, которые можно заметить в игре в качестве геймплейного элемента и понять, как это делается.
Для достижения этой цели я поставил перед собой следующие задачи:
- Разыскать информацию о начале развития компьютерной физики в играх.
- Рассмотреть и проанализировать физические явления в играх.
- Указать, какие физические законы из реальности присутствуют в играх и объяснить их.
Начало развития физики в компьютерных играх
Физический движок-компьютерная программа, которая производит компьютерное моделирование физических законов реального мира в виртуальном мире, с той или иной степенью аппроксимации. Говоря проще, это программа, благодаря которой в играх существует физика.
Все физические движки условно делятся на два типа: игровые и научные.
Первый тип используется в компьютерных играх как компонент игрового движка. В этом случае он должен работать в режиме реального времени, то есть воспроизводить физические процессы в игре с той же самой скоростью, в которой они происходят в реальном мире. Вместе с тем от игрового физического движка не требуется точности вычислений. Главное требование — визуальная реалистичность, и для его достижения не обязательно проводить точную симуляцию. Поэтому в играх используются очень сильные аппроксимации, приближенные модели и другие приёмы.
Научные физические движки используются в научно-исследовательских расчётах и симуляциях, где крайне важна именно физическая точность вычислений. Вместе с тем скорость вычислений не играет существенной роли.
Современные физические движки симулируют не все физические законы реального мира, а лишь некоторые, причём с течением времени и прогресса в области информационных технологий и вычислительной техники список «поддерживаемых» законов увеличивается. На начало 2010 года физические движки могут симулировать следующие физические явления и состояния:
- динамика абсолютного твёрдого тела;
- динамика деформируемого тела;
- динамика жидкостей;
- динамика газов;
- поведение тканей;
- поведение верёвок (тросы, канаты и т.д.).
История физики в компьютерных играх
«Игровая физика» появилась в 1998 году в игре Jurassic Park: Trespasser. Это был такой Crysis 90-х, который пробил стену в яркое будущее новых технологий, но геймплей был очень скучным потому, что основной упор был сделан на полноценные физические модели объектов и их разрушаемость. Но сильная тяга к реализму была в ущерб увлекательности геймплея, от чего Jurassic Park: Trespasser не изменила игровую индустрию одним махом, т.к. была мало успешной коммерчески. Игра заставила разработчиков игр присмотреться к перспективам реалистичной физики.
Half Life 2-это то, что компания Valve смогла реализовать.
Игры
2.1. Half Life 2.
Valve создали специальный движок для игры Half Life 2 и также Counter-Strike, который называется Source.
Source на самом деле не был оригинальным движком. Разработчики не стали рисковать и разделили движок на GoldSrc и Src. Таким образом, название Source стали использовать для описания нового движка, а GoldSource стало названием предыдущего поколения технологии. С помощью этого движка создавались различные головоломки, основанные на физические законы реального мира.
Важная особенность движка стала анимация персонажей, особенно лицевая, которую разработчики очень реалистично разработали. Source одним из движков, где применялись сложные шейдерные эффекты.
Физический движок был создан на основе Havok, который рассчитывает многие физические объекты. Также с помощью него создавали транспорт. Также, чтобы придать реалистичность телодвижений, использовали «тряпичную куклу», которая может смешиваться с физикой нашего времени.
2.2. Little Nightmares.
Tarsier Studios решила использовать в своей игре движок Unreal Engine 4. В игре нужно совершать большое количество различных действий, где нужно вовремя нажимать кнопки и проявлять смекалку. Героиня в этой игре выглядит очень маленькой на фоне разных существ, но на взгляд можно судить, что ей примерно семь лет, что позволяет ей спокойно перепрыгивать препятствия, двигать предметы и использовать инерцию.
В одной из локации прохождения главная героиня прыгает, берётся за фонарь и, раскачиваясь, прыгает на другую поверхность. Здесь показана сила инерции. Если у героини не хватает скорости, или она не раскачается на фонаре, то тогда героиня упадёт и игра окончится. (Сила инерции показана следующей формулой F=ma, где a- ускорение тела, а m- масса тела.)
2.3. Portal 2.
Valve разработал продолжение Portal- Portal 2. В этой игре всё также используется движок Source, который был разделён на физический и графический, и также использовалась физика «тряпичной куклы».
Portal 2 состоит в основном из инерции и на этом строится игра. Особенно когда героиня использует порталы, там уже работает закон сохранения энергии. На простом языке определение закона сохранения энергии звучит так: «Что быстро влетает, то быстро и вылетает».
Также там присутствует отражение. Отражение-физический процесс взаимодействия волн или частиц с поверхностью, изменение направления волнового фронта на границе двух сред с разными свойствами, в котором волновой фронт возвращается в среду, из которой он пришёл. Короче говоря, этот закон отражения света, говоря простым языком угол падения равен углу отражения, но эта формулировка не указывает точное направление отражения луча. В игре очень хорошо на некоторых уровнях показан этот закон.
Заключение
На сегодняшний день физика используется в играх не только для создания реалистичной графики, но и для более реалистичного поведения различных объектов в игре. Знание физики может помочь в прохождении сложного уровня или испытания в игре.
Сегодня главным инструментом в создании игр является физический движок, благодаря ему любое физическое явление и любой физический закон можно воплотить в игре. Физика может не только сделать красивые и плавные движения героям, но и сделать игру интереснее за счёт реалистичности геймплея. Она непредсказуема и влезает в ход вещей, но это не делает её нечестной. Разработчик Олифьер объясняет: «В физике есть некий обуславливающий аспект, который игроки расшифровывают на подсознательном уровне».
Физика больше не является чем то новым для игр, и игроки ожидают от неё многого. Нам интересно, что случится в тех или иных ситуациях в игре. Каким образом сделают разработчики и представят нам, используя не только систему игровой физики, но и физику нашего мира.