Cinema4D — Работа с Thinking Particles в Cinema 4D: первый шаг по направлению к снежным вьюгам
Моделей: 32Уроков: 48Видео-уроков: 2Видеороликов: 313D-работ: 15
Email:    Пароль:     Забыл пароль зарегистрироваться
3D-моделиУрокиСценыТекстурыЧаВоГалереяСправочникГлоссарийПомощьПомощь проекту

Работа с Thinking Particles в Cinema 4D: первый шаг по направлению к снежным вьюгам

Урок добавлен 30.04.2019

Предыдущий урок: Подробный анализ настроек камеры в Cinema 4D с примерами

Следующий урок: отсутствует

Вернуться к списку уроков


Если вам понравился урок — добавьте к нему ваш комментарий!

К этому уроку прилагается 3D-сцена

Созданная при помощи Thinking Particles пыль в воздухе

Некоторое время назад один из завсегдатаев сайта попросил меня написать урок по созданию светящейся в солнечных лучах пыли в воздухе. К сожалению, тогда его просьба застала меня врасплох, так как до тех пор мне не приходилось работать с Thinking Particles, при помощи которых можно реализовать подобный эффект. Однако, вернувшись к высказанному ранее пожеланию, я решил восполнить данный пробел и приступил к изучению вопроса (да, автор сайта тоже учится работе с Cinema 4D — почти каждый вечер на протяжении нескольких лет!). Результаты изучения изложены в данном уроке.

Прежде чем перейти непосредственно к материалу урока, обращу ваше внимание на то, что он включает в себя слово «Начало», и это не случайно: «умные частицы» Cinema 4D — это тема весьма объёмная, и мягко говоря, не самая простая. При помощи «умных частиц» можно создавать как полные аналоги эффектов, легко доступных с использованием обычного эмиттера частиц, так и значительно более сложные и зрелищные эффекты. Но полностью уместить в одном уроке тему «умных частиц» задача не самая простая, поэтому будем двигаться поэтапно.

И ещё одно. Главный вопрос, который может возникнуть у вас при упоминании Thinking Particles, скорее всего, будет выглядеть так: а зачем вообще они нужны, эти частицы, если есть эмиттер?

Ответ на этот вопрос приблизительно следующий: эмиттер частиц в Cinema 4D — всего лишь примитивный суррогат Thinking Particles, с крайне ограниченным диапазоном функциональных возможностей, не позволяющим реализовать сложные эффекты — типа снегопадов, пыли в воздухе, дымящейся или горящей поверхности объектов со сложной геометрией, рассыпания объектов на частицы и многого другого.

Итак, приступим. В данном уроке мы начнём с создания простейшей системы «умных частиц». Сразу же предупреждаю: основная часть работы с «умными частицами» ведётся в редакторе XPresso, работать с последним на протяжении урока нам с вами придётся часто и много.

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

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

Создаём сферу, внутри которой буду возникать частицы

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

Отключаем у созданной сферы видимость в редакторе и рендере

Далее переходим непосредственно к созданию частиц при помощи редактора XPresso. Создаём тег XPresso, для чего щёлкаем правой клавишей мыши на наименовании сферы, в выпадающем из курсора меню выбираем пункт «Cinema 4D Tags» и выпадающем из него подменю кликаем по пункту «XPresso».

Присваиваем сфере тег редактора XPresso

В списке подобъектов сферы появляется соответствующая пиктограмма. Дважды кликаем по ней, и на экране открывается окно редактора.

Первый объект, который нам с вами предстоит создать — это генератор частиц под названием «PBorn». Щелчок правишей клавишей мыши в любом месте свободного места редактора XPresso, затем путешествие по следующим пунктам в каскаде последовательно выпадающих меню: «New Node» — «Thinking Particles» — «TP Generator» — «PBorn».

Создаём генератор частиц PBorn

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

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

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

К примеру, от положения обычного (штатного) эмиттера в трёхмерной сцене зависит, откуда, из какой точки пространства в сцене будут появляться создаваемые эмиттером частицы. И потому у эмиттера имеются координаты. Местоположение генераторов «умных частиц», в отличие от эмиттера, не имеет ни малейшего значения, поэтому у подобных узлов вкладка координат вообще в принципе отсутствует.

Идём дальше. Генератор частиц нами создан, создаём следующий узел — «PVolumePosition». Щелчок правой клавишей мыши на свободном пространстве редактора XPresso, последовательный выбор пунктов «New Node» — «Thinking Particles» — «TP Helper» — «PVolumePosition». Из названия созданного нами узла ясно, что на него возложены функции размещения частиц в пространстве. Здесь следует оговориться, что этот узел позволяет создавать частицы, заполняя последними внутренний объём какого-нибудь полигонального объекта. Если бы мы хотели создавать частицы не внутри полигонального объекта, а исключительно на его поверхности, то нам с вами следовало бы создать другой узел — «PSurfacePosition».

Создаём узел определения положения частиц «PVolumePosition»

И затем создаём ещё один узел, третий: точно так же, как ранее, правая клавиша мыши — «New Node» — «Thinking Particles» — «TP Standart» — «PsetData».

Создаём узел «PSetData»

Итак, мы создали три узла. Соединяем их так, как показано на изображении ниже: от узла «PBorn» взаимосвязь тянем к порту «Particle» узла «PSetData», в последнем дополнительно создаём порт «Position» (на случай, если вы забыли, как это делается — щёлкаем левой клавишей мыши на синем прямоугольнике в заголовке и в выпавшем списке выбираем порт, который нам необходимо создать), к которому тянем взаимосвязь из узла «PVolumePosition», узел «PBorn» соединяем с узлом «PVolumePosition».

Соединяем три узла взаимосвязями

Обратите внимание: внутри узла «PVolumePosition» красуется слово «Sphere» — это обозначение объекта, внутри которого будут появляться частицы. Обозначение, как вы, вероятно, догдаываетесь, появилось внутри узла не само по себе — для этого необходимо открыть редактор XPresso, подцепить мышкой нужный элемент в менеджере объектов и перетащить его наименование внутрь соответствующего узла.

Далее создаём какой-нибудь полигональный объект, который будет у нас в трёхмерной сцене частицей — это может быть что угодно: куб, сфера, октаэдр, главное — не переборщить с количеством полигонов, ибо в нашей сцене частиц будет реально (или нереально, это как посмотреть) много. Созданный полигональный объект назовём «Particle». Обратите внимание: в отличие от объекта, предназначенного для заполнения частицами, он должен быть видимым!

Для использования генератором частиц созданного нами полигонального объекта в качестве частицы нам придётся продолжить создание ещё нескольких новых узлов в редакторе XPresso. Снова открываем редактор и создаём узлы «P Pass» («New Node» — «Thinking Particles» — «TP Inintiator» — «P Pass») и «Pshape» («New Node» — «Thinking Particles» — «TP Inintiator» — «P Pass»)

Создаём узел «P Pass»

Создаём узел «Pshape»

Первый узел, «P Pass», определяет, на какие частицы будет оказывать влияние эффект, создаваемый вторым узлом, «PSHape». Последний предназначен для указания, что частицы должны выглядеть как полигональные объекты. Для определения, какой именно полигональный объект служит образцом для частиц, цепляем в менеджере объектов созданный нами ранее полигональный объект, который мы назвали «Particle», и перетаскиваем его внутрь узла «PShape», после чего соединяем узлы «P Pass» и «PShape». Определять дополнительно, какие частицы будут выглядеть как сфера, нам нет необходимости — внутри узла «P Pass» значится слово «All», что означает влияние на все создаваемые в трёхмерной сцене частицы. Более сложные варианты мы с вами в данном уроке рассматривать не будем.

Ну и наконец, нам понадобится ещё один вспомогательный элемент — «Particle Geometry». Идём в верхнее текстовое меню, пункт «Simulation» — «Thinking Particles» — «Particle Geometry».

Если мы с вами всё проделали правильно, то нажав на кнопку вопсроизведения анимации, мы видим, как в окне редактора Cinema 4D возникает месиво из множества сфер.

Месиво созданных частиц в виде массы сфер

Вероятно, нам с вами понадобится немного скорректировать некоторые параметры: частицы-сферы должны выглядеть куда меньше по размеру, а ещё их должно быть значительно больше. Первое легко исправить, открыв редактор XPresso, щёлкнув на заголовке узла «PShape» и изменив в появившемся под менеджером объектов окне его свойств значение параметра «Bounding Radius» на другое (чем больше значение параметра — тем меньшими по размеру будут частицы), а второе — точно так же открыв окно свойств узла «PBorn» и подобрав значения параметров появления частиц: параметр «Birth Type» имеет три значения, в зависимости от которых количество частиц либо создаётся вплоть до достижения количества, соответствующего значению параметра «Count» (BirthType=Count), либо создаётся соответствующее значению параметра «Rate» количество частиц в секунду (Birth Type=Rate), либо создаётся соответствующее значению параметра «Shot» количество частиц за один фрейм. Выберем третий вариант и заставим генератор генерировать по 100 частиц за один фрейм.

Исполинские сферы превратились в маленькие шарики

Ну вот, результат уже значительно лучше: в окне редактора перед нами — рой множества крохотных шариков. Это созданная нами в Cinema 4D пока что очень простенькая система «умных частиц».

Вероятно, вы вправе спросить: а зачем было городить весь этот сыр-бор — ведь можно было бы точно так же создать множество точно таких же частиц при помощи MoGraph Cloner, который точно так же умеет заполнять клонами пространство пустотелых полигональных объектов?

Вопрос логичный. Ответ на него выглядит так: поведение созданных генератором «умных частиц» принципиально отличается от поведения размноженных при помощи MoGraph Cloner клонов, что называется, по определению, потому как частицы, извините за тавтологию, подчиняются в Cinema 4D законам поведения частиц (даже если выглядят как полигональные объекты), а клоны — законам поведения объектов. Почувствуйте разницу! Скажем, клонам — как бы они ни были распределены в пространстве — невозможно назначить текстуры огня или дыма, заточенные только под частицы. На клоны и частицы воздействуют принципиально разные эффекторы и модификаторы. И множество иных нюансов, которые мы с вами изучим в следующих уроках.

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

Ну а что же можно сделать с созданными нами частицами прямо сейчас, с минимумом усилий?

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

Но чтобы лишний раз напомнить вам, в каком направлении мы с вами движемся — приведу ещё раз изображение, с которого начался данный урок и которое создано автором с использованием простейшей системы «Thinking Particles».

Созданная при помощи Thinking Particles пыль в воздухе — ещё раз в качестве напоминания

Автор

Предыдущий урок: Подробный анализ настроек камеры в Cinema 4D с примерами

Следующий урок: отсутствует

Вернуться к началу урока | Вернуться к списку уроков


Если вам понравился урок — добавьте к нему ваш комментарий!

Добавление комментариев доступно только для зарегистрированных участников

комментариев не найдено — ваш может стать первым!

 
 

© Maxon Cinema 4D R12 — справочное руководство. Открыт 13 августа 2013 г. Повторно открыт 30 апреля 2019 г.
Разработчик, автор материалов сайта: по-прежнему всё ещё М. Ю. Уткин.