See also ebooksgratis.com: no banners, no cookies, totally FREE.

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
Физика Ragdoll — Википедия

Физика Ragdoll

Материал из Википедии — свободной энциклопедии

Ранний пример использования физики Ragdoll, 1997 год.
Ранний пример использования физики Ragdoll, 1997 год.

Физика Ragdoll (рэгдо́лл) — вид процедурной анимации, пришедший на замену статичной, пререндеренной анимации. Название произошло от английских слов rag (русск. тряпка) и doll (русск. кукла), в силу чего в русском языке укоренилось выражение «тряпичная кукла».

Содержание

[править] Развитие

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

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

Первой игрой, использовавшей физику ragdoll, стал проект по мотивам вселенной Парка Юрского периода, игра Jurassic Park: Trespasser, вызвавшая диаметрально противоположные мнения, большинство из которых были отрицательными. Но хотя в Trespasser было множество программных ошибок, игра запомнилась как первопроходец в физике компьютерных игр. Сейчас же «тряпичная кукла» применяется не только для отображения смерти: существуют файтинги, в которых игрок управляет одной конечностью, а остальное тело двигается за ней (Rag Doll Kung Fu); или даже гоночные игры, где в случае серьёзного столкновения модель водителя вылетает через лобовое стекло и далее ведёт себя в соответствии с законами физики (серия FlatOut). Современные технологии процедурной анимации (например те, на которых основано подпрограммное обеспечение Euphoria от NaturalMotion), позволяют разрабатывать игры, заставляющие поверить в происходящее на экране благодаря имитации как мышц, так и нервной системы. Если сравнивать подобное с архаичной рукотворной анимацией, то можно сказать, что был совершён значительный шаг в развитии компьютерных и видеоигр.

Использование новейших технологий, основанных на ragdoll-анимации, можно увидеть в таких играх, как Grand Theft Auto IV от Rockstar Games, Indiana Jones и Star Wars: The Force Unleashed от LucasArts.

[править] Схожие технологии

Технология ragdoll работает, основываясь на принципах на алгоритма Физерстоуна и пружинно-амортизаторных контактов.[1] Существует также альтернативное решение, использующее систему ограничений и идеализированные контакты.[2] В то время, как ограниченно твёрдые тела достаточно близки к «тряпичной кукле», существуют и «псевдо-ragdoll» технологии.

Интегрирование Верле 
Использовалось в игре Hitman: Codename 47 и стало распространено благодаря Томасу Якобсону (Thomas Jakobsen)[3]. В этой технике каждая кость персонажа моделируется как точка, соединённая с произвольным числом других точек через простые ограничения. Ограничения Верле намного проще и гораздо быстрее вычисляются, чем те, которые используются в системе полностью смоделированного твердого тела, что выражается в меньших затратах процессора.
Инверсная кинематика 
Относится к технологиям пост-обработки (англ. post-processing) и использовалась в Halo: Combat Evolved. Используя заранее созданную анимацию смерти, игровой движок просчитывает финальное положение тела, которое удовлетворяло бы реалистичному отображению. В случае применения инверсной кинематики умирающие персонажи могут частично проходить сквозь геометрию мира, однако в итоге все кости модели будут лежать на допустимом месте.
Смешанный Ragdoll 
Данная техника совмещает предварительно сделанную анимацию с системой ограничений. Таким образом, смерть персонажа отображается зарание продуманной, но физический движок проверяет допустимость каждого движения. Смешанный Ragdoll оказывается гораздо затратнее в плане вычислительных ресурсов, чем обычная «тряпичная кукла», но превосходит её на порядок повышенной реалистичностью отображения. Пример применения можно увидеть в игре Halo 2.
Процедурная анимация NaturalMotion 
Изначально подобные технологии использовались в создании фильмов, рекламных роликов и телепрограмм, но со временем нашли своё применение и в компьютерных играх. Ключевым элементом этой процедурной анимации является расширенная симуляция человеческого тела. Технология Euphoria при обработке анимации воспроизводит не только кости, но и мускулы и нервную систему, добавляя в сцену правильное взаимодействие с окружающим миром. За счёт этого, каждый новый показ сцены отличается от предыдущего, что повышает увлекательность повторного прохождения игры. Действие технологии NaturalMotion можно увидеть в GTA IV и Star Wars: The Force Unleased

[править] Преимущества и недостатки

Поскольку просчёт физических параметров в реальном времени отнимает значительную часть вычислительной мощности процессора, многие игры используют упрощённую структуру скелета «тряпичной куклы». В частности:

  • Кости конечностей, таких как пальцы, обычно не анимируются;
  • Вместо реальных допустимостей человеческого тела используются упрощённые суставы (к примеру, изображение человеческого колена ограничено сгибанием и разгибанием, хотя реальный коленный сустав в некоторой степени позволяет повороты);
  • Упрощённая модель столкновений лучше определяет взаимодействие с другими твёрдыми телами, чем столкновения с геометрией игрового мира.

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

[править] См. также

[править] Примечания

  1. 6067096 (англ.) "Method and system for generating realistic collisions in graphical simulations" (русск. «Методика и система создания реалистичных столкновений в области симуляции графики»)
  2. (1997) "Physically Based Modeling: Principles and Practice" in SIGGRAPH 97. Proc. SIGGRAPH '97, Los Angeles: Association for Computing Machinery Special Interest Group on Graphics. 
  3. Продвинутая Физика Персонажа (англ. Advanced Character Physics), доклад Томаса Якобсона на GDC'01

[править] Ссылки

[править] Статьи

[править] Примеры

На других языках


aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -