В данной статье речь пойдет о 3d-программах, позволяющих имитировать различные физические законы и явления. Будут рассмотрены принци - umotnas.ru o_O
Главная
Поиск по ключевым словам:
страница 1
Похожие работы
Название работы Кол-во страниц Размер
В этой статье речь пойдёт об Компьютерных технологиях (в дальнейшем... 1 339.65kb.
Заметки о классической технологии Формула Сутр Патанджали «йогаш-читта-вритти-ниродха» 2 446.57kb.
Как стать звездой в своём классе 1 154.34kb.
Аннотации, ключевые слова, литература 2 419.89kb.
Разработка урока по физике «Физика в гостях у поваров. Способы сохранения... 1 117.79kb.
В данной памятке речь пойдет о том 1 23.53kb.
Лабораторная работа №1 Законы сохранения в механике 2 612.89kb.
Антропологический смысл философского дискурса 1 168.45kb.
Православная антимусульманская полемика в россии второй половины... 1 251.25kb.
В. А. Ядов1 становление личности: общественное и индивидуальное 1 170.92kb.
Розділ 1 Стратегічні питання розвитку національної економіки 1 174.87kb.
Закон всемирного тяготения. Вес тела. Невесомость. Трение. Сила трения. 1 71.38kb.
Викторина для любознательных: «Занимательная биология» 1 9.92kb.

В данной статье речь пойдет о 3d-программах, позволяющих имитировать различные физические - страница №1/1

Аннотация

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



Введение

Работа программ по созданию 3d-анимации, описываемых в данной статье, основана на физике. Физика - одна из удивительнейших областей науки. Она связана с изучением основных законов, которые управляют движением и взаимодействием объектов. Чтобы реалистично имитировать движение и взаимодействие объектов, аниматорам особенно важно понимать и использовать физические законы. Чем конкретно могут быть полезны знания физических законов? Во-первых, такие знания повысят реализм создаваемых сцен. Во-вторых, это позволит эффективно использовать продукты различные программные продукты, в которых применяются физические законы. В этой статье речь пойдет о нескольких таких программах, а конкретней – о способах реализации физических свойств объектов в них.



Reactor

Технология физики компании Havok, используемая в средстве reactor, содержит в своей основе процесс, известный как физическое моделирование, чтобы обеспечить динамическую среду для объектов в сцене. Физическое моделирование - процесс, который автоматически определяет движение объектов согласно их физическим свойствам. Это достигается формированием некоторых физические законов, таких как законы Ньютона для движения.

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

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

Механизм физики ничего не знает о том, как моделируемые объекты отображены в сцене. Он моделирует движение и взаимодействие этих объектов, основываясь на физическом(не графическом!) описании объектов, и эта информация может использоваться, чтобы генерировать изображение, которое "отслеживает" процесс моделирования.

Большинство объектов в reactor имитируются как твердые тела. Твердое тело - объект, геометрия которого не изменяется в течение имитации. Можно моделировать любой реальный объект, который не изменяет свою форму, от ручки до валуна, падающего со склона горы, как твердое тело. Моделирование объектов таким способом облегчает физическую имитацию в режиме реального времени; механизм физики может сделать определенные предположения, обнаруживая столкновения, основанные на факте того, что формы объектов не изменяются от начала до конца имитации.

Чтобы моделировать ткань, веревку, или другой материал, форма которого изменяется в течение долгого времени, необходимо использовать другой тип объекта: деформируемое тело. С деформируемыми объектами проверка на столкновение становится намного более трудной, при условии, что объект может изменить форму резко в течение короткого промежутка времени и может также попытаться столкнуться сам с собой. Поэтому имитация поведения деформируемых тел гораздо более ресурсоемкий процесс. [1,2,3]

AfterBurn

AfterBurn - этот дополнительный модуль является одним из самых мощных средств для 3ds max, помогающим создавать эффекты взрыва, огня и дыма.

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

Рассмотрим вкратце поведение частиц в 3ds Max. В общих чертах, поведение частицы складывается посредством использования определенной системы частиц и ее преобразования во что-то абсолютно другое. Когда к созданным в сцене частицам добавляется эффект AfterBurn, его механизм создает объемную "затяжку", окружающую каждую отдельную частицу в пределах выбранной системы частиц. (Проще представить это, как своего рода сферическое облако.)

В примере ниже, можно видеть отдельную частицу (слева), представление объемной “затяжки”, определенной пользователем (в центре), объемный эффект, созданный при рендеринге частицы (справа).

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

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

При работе с AfterBurn можно использовать как глобальное применение эффекта, то есть ко всем частицам в сцене, так и локально, придавая отдельным системам создании смерча необходимо применить эффекты AfterBurn к трем системам частиц: к облакам, непосредственно к торнадо и к пыли.

Также в AfterBurn предусмотрено три различных технологии рендеринга: Raymarcher, Octane Shader и HyperSolids. Raymarcher - механизм фотореалистичной визуализации, в то время как OctanShader осуществляет ультрабыстрый рендеринг для систем, подобных пыли, и более прозрачных эффектов. HiperSolids - специальный мехнизм для создания органических форм и бесформенных (нечетких) объектов.[1,4]

FumeFX

FumeFX - этот плагин предназначен для реалистичного моделирования огня и дыма и их взаимодействия со сценой.

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

У текучих газообразных сред, таких как огонь и дым, нет фиксированного размера или формы. Так, в физике текучие среды вообще расценены как континуум, а не как связка индивидуальных молекул. FumeFX рассматривает их с той же самой точки зрения; это воздействует на адаптивную трехмерную сетку вокселей(объемных пикселей), которая подражает континууму жидкости. Эта сетка расширяется и сжимается в зависимости от движения или недостатка текучей среды. Кроме того, в реальном мире сгорание - комбинация топлива, температуры, дыма и скорости; соответственно это те же самые свойства, которые влияют на имитацию в FumeFX. Их значения определены в каждом вокселе сетки FumeFX. Внешние силы, такие как сила тяжести, или твердые объекты, могут также оказывать влияние на создаваемые эффекты. Эти комбинации параметров определяют, как поведет себя модель текучей среды.

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

Конечно, независимо от физики, FumeFX также включает широкий набор настроек, которые позволяют управлять моделированием. Они включают такие параметры, как цвет, прозрачность, тени и т.д.

Основной элемент FumeFX – адаптивная воксельная сетка. Она состоит из области вокселов, которые будут затронуты моделированием. При выборе размера этой сетки, устанавливается максимальные значения для области моделирования. В пределах границ этого пространства адаптивная сетка расширяется и сжимается, чтобы содержать только те воксели, которые образуют текучую среду. [5]

RealFlow

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

С помощью RealFlow можно имитировать такие эффекты, как расширение газов в трубе или их движение через систему клапанов, наполнение жидкостью таких объектов, как стаканы, бутылки и другие емкости, а также такие вязкие жидкости, как мед, желе, и даже имитировать поведение песка (рассматриваемого как жидкотекучая среда). Вся система частиц в RealFlow рассматривается как непрерывная среда (континуум), в которой частицы жидкотекучих сред, неся в себе некоторую информацию, способны передавать её своим соседним частицам, изменяя ход имитации. Таким образом, в ходе симуляции частицы постоянно взаимодействуют друг с другом.

RealFlow обеспечивает обмен данными с другими 3Д пакетами посредством сцен, записанных в формате SD, благодаря плагинам поставляемых вместе с RealFlow.

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

В RealFlow существуют следующие типы частиц:

* несвязные(Dumb);

* жидкие(Fluid);

* газообразные (Gas);

* эластичные (Elastic);

* пользовательские(Custom). [6]

SimCloth

SimCloth – это довольно простой и удобный плагин для 3ds max, позволяющий имитировать реалистичное поведение ткани и ее взаимодействие с твердыми телами.

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

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

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

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



Заключение
Таким образом можно сделать вывод, что реализация физических свойств объектов осуществляется, по большому счету, всего двумя способами:

* моделированием поведения систем частиц для получения эффектов огня, дыма, воды, ткани и других;

* физическим моделированием объектов для просчета взаимодействия разных типов объектов, таких как твердые тела и деформируемые тела.

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



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

Использованные источники

  1. 3ds Max 9 Библия пользователя, Келли Л. Мэрдок, Диалектика 2008;

  2. 3ds Max Реальная анимация и виртуальная реальность, Михаил Маров, Питер 2006;

  3. 3ds Max 2008 Help;

  4. Afterburn 4 Help;

  5. FumeFX 1.1 Help;

  6. RealFlow 4 Help;

  7. http://www.spot3d.com/simcloth/