Возможно, эта статья содержит . |
Физический движок (англ. physics engine) — компьютерная программа, которая производит компьютерное моделирование физических законов реального мира в виртуальном мире, с той или иной степенью аппроксимации. Чаще всего физические движки для ( физического моделирования) используются не как отдельные самостоятельные программные продукты, а как составные компоненты (подпрограммы) других программ.
Все физические движки условно делятся на два типа: игровые и научные.
- Первый тип используется в компьютерных играх как компонент игрового движка. В этом случае он должен работать в режиме реального времени, то есть воспроизводить физические процессы в игре с той же самой скоростью, в которой они происходят в реальном мире. Вместе с тем от игрового физического движка не требуется точности вычислений. Главное требование — визуальная реалистичность, и для его достижения не обязательно проводить точную симуляцию. Поэтому в играх используются очень сильные аппроксимации, приближённые модели и другие приёмы.
- Научные физические движки используются в научно-исследовательских расчётах и симуляциях, где крайне важна именно физическая точность вычислений. Вместе с тем скорость вычислений не играет существенной роли.
Современные физические движки симулируют не все физические законы реального мира, а лишь некоторые, причём с течением времени и прогресса в области информационных технологий и вычислительной техники список «поддерживаемых» законов увеличивается. На начало 2010 года физические движки могут симулировать следующие физические явления и состояния:
- динамика абсолютно твёрдого тела
- динамика деформируемого тела
- (динамика жидкостей)
- динамика газов
- поведение верёвок (тросы, канаты и т.д.)
В августе 2009 года англоязычный журнал [англ.], посвящённый разработке компьютерных игр, опубликовал статью о современных игровых движках и их использовании. Согласно данным журнала, наиболее популярным среди разработчиков является движок (nVidia PhysX), который занимает 26,8% рынка. На втором месте находится (Havok), который занимает 22,7% рынка. Третье место принадлежит движку (Bullet Physics Library) (10,3%), а четвёртое — (Open Dynamics Engine) (4,1%).
Использование
Описание
Физический движок позволяет создать некое виртуальное пространство, которое можно наполнить телами (виртуальными статическими и динамическими объектами), и указать для него некие общие законы взаимодействия тел и среды, в той или иной мере приближённые к физическим, задавая при этом характер и степень взаимодействий (импульсы, силы и т. д). Собственно расчёт взаимодействия тел движок и берёт на себя. Когда простого набора объектов, взаимодействующих по определённым законам в виртуальном пространстве, недостаточно в силу неполного приближения физической модели к реальной, возможно добавлять (к телам) связи. Рассчитывая взаимодействие тел между собой и со средой, физический движок приближает физическую модель получаемой системы к реальной, передавая уточнённые геометрические данные средству отображения (рендереру).
Тело
Тело (англ. body) — объект игровой физики, который определяется:
- его формой (есть простые формы: шар, куб, цилиндр; есть сложные формы, набор которых в разных движках может различаться);
- неким набором параметров (масса, упругость, коэффициент трения, инертность по осям).
Связь
Связь (соединение; англ. joint) — ограничения объектов игровой физики, каждое из которых может накладываться на одно или два тела.
Взаимодействие
Как правило, физический движок и решает проблему взаимодействия тел. Тем не менее, может появиться необходимость использования собственного алгоритма взаимодействия, и, как правило, движки предоставляют такую возможность.
Известные физические движки
Список примеров в этой статье не основывается на , посвящённых непосредственно предмету статьи. |
Игровые проприетарные
- (Havok) — некогда самый популярный и распространённый физический движок, используемый в более чем в 100 играх. На данный момент немного уступил своему конкуренту;
- (Digital Molecular Matter)
Игровые свободные
- (PhysX) — основной конкурент Havok, единственный в мире физический движок, имеющий (см. (Физический процессор)). Покупка Ageia компанией (nVidia) привела к переименованию движка в nVidia PhysX. В 2015 году NVIDIA опубликовала исходный код PhysX для пользователей Unreal Engine. На данный момент PhysX занимает первое место по популярности среди физических движков;
- (Bullet Physics Library) — второй по популярности среди свободных физических движков.;
- (Open Dynamics Engine) — третий по популярности среди свободных физических движков;
- (Tokamak) — физический движок с открытым исходным кодом.
- (Newton Game Dynamics) — изначально проприетарный, а с февраля 2011 года — свободный физический движок.
- (Box2D) — мультиплатформенный движок для симуляции физики твёрдых тел.
Ныне несуществующие
- (NovodeX) — физический движок, приобретённый компанией Ageia и преобразованный в PhysX.
- (Meqon) — физический движок, приобретённый компанией Ageia и интегрированный в состав её движка PhysX.
- (Ipion Virtual Physics) — физический движок, приобретённый компанией (Havok) и интегрированный в состав её движка Havok Physics;
- (Karma) — коммерческий движок от ныне закрытой компании , интегрирован в Unreal Engine 2.0/2.5.
Другие
См. также
- (Физический процессор)
- (Физика Ragdoll)
Примечания
- Bullet ranked third physics library at 10% in Game Developers Magazine survey (англ.). официальный сайт движка (Bullet Physics Library) (3 сентября 2009). Дата обращения: 24 сентября 2009. Архивировано 16 февраля 2012 года.
Ссылки
- Physics Engine — общая информация о физических движках на сайте (GameDev.ru)
- Программирование игр: Физика — список терминов и понятий, относящихся к программированию физических движков на сайте (GameDev.ru)
- Lentyay. оригинала 26 июня 2010 года. . gamesector.org (23 октября 2006). Дата обращения: 7 июля 2009. Архивировано из
- Lentyay. оригинала 26 июня 2010 года. . gamesector.org (2 ноября 2006). Дата обращения: 7 июля 2009. Архивировано из
- Lentyay. оригинала 25 июня 2010 года. . gamesector.org (16 мая 2007). Дата обращения: 7 июля 2009. Архивировано из
- Andretti. Эволюция воды в играх . ITC.ua (3 декабря 2007). — Подборка (скриншотов) из компьютерных игр, которая демонстрирует развитие визуализации воды. Дата обращения: 2 августа 2009. Архивировано из оригинала 8 июля 2013 года.
- Zogrim. Popular Physics Engines comparison: PhysX, Havok and ODE (англ.). PhysXInfo.com (7 декабря 2009). Дата обращения: 11 марта 2010. Архивировано 16 февраля 2012 года.
- Наталья Зайцева. Разработка физической модели разбиения твердого тела для игрового движка . (Intel Software Network) (6 октября 2009). Дата обращения: 21 марта 2010. Архивировано 16 февраля 2012 года.
Википедия, чтение, книга, библиотека, поиск, нажмите, истории, книги, статьи, wikipedia, учить, информация, история, скачать, скачать бесплатно, mp3, видео, mp4, 3gp, jpg, jpeg, gif, png, картинка, музыка, песня, фильм, игра, игры, мобильный, телефон, Android, iOS, apple, мобильный телефон, Samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Сеть, компьютер