Как сделать коллизию в cinema 4d

Обновлено: 08.07.2024

Сегодня у меня для вас два небольших, но не менее полезных видеоурока.

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

Ну а посмотрев следующее видео, вы узнаете каких интересных результатов можно добиться используя в модуле Mograph опцию Modify Clone.

вопрос UV.jpg

Ребят привет!!Помогите плиз, как правильно, пошагово сделать UV развертку средствами UV Edit синемы?как сделать ее понятно, имеюю как можно подкорректировать развертку относительно базовой резки синемы,вот пример

si vis pacem-para bellum

У вас, видимо, сделана автоматическая развёртка типа Box. Это не очень подходит для таких органических и обтекаемых объектов как это кресло. Лучше делать вручную. Краткий туториал, который ниже, актуален для более старых версий Синемы (как у вас). С версии, кажется, R22 там значительно улучшили инструменты и всё делается быстрее, с меньшим кол-вом шагов.

1. Сначала, для "чистоты эксперимента" удалите существующий UV-тег на объекте.

Потом создайте новый, здесь:

2. Сделайте разрезы на стуле с помощью выделения рёбер так как вам это кажется естественным.

UV разрезы на модели 1
UV разрезы на модели 2

Не бойтесь делать чуть больше отдельных кусков — не обязательно гнаться за тем, чтобы были только 1–2 UV острова. Если их будет больше, то потом легче будет их компактно упаковать в текстуру. Да и сам процесс развёртки будет проще.
Тут только нужно помнить о том, где расположены швы. Они могут быть видны после текстурирования. Поэтому лучше выбирать те места, где они будут хуже видны для камеры.

3. Обязательно сохраните выделение (разрезы) через команду "Set Selection" — ещё пригодится.

При этом создастся тег выделения.

4. При выделенных рёбрах выберите один из островков, вот так:

Если не знаете как это сделать, вот быстрый туториал:

  1. Выбираете инструмент Fill Selection (U~F)
  2. В менеджере объектов двойной клик на теге с разрезами, который мы создали выше.
  3. Если всё пошло по плану, то у вас должны быть активны такие кнопки:

режим выделения

В моём примере я поставил камеру на вид снизу, потому что выбрал нижнюю часть стула:

6. В окне "UV Mapping" в секции "Projection" нажмите "Frontal".

Это создаст UV развёртку выделенного острова на основе текущей проекции с камеры.

edd887c0-5f34-4d2d-bdc6-4150a82e1955-image.jpg

При этом, выделенные полигоны будут подсвечены, а вся остальная топология может выглядеть как угодно. Это нормально:

Переключитесь на инструмент для работы с UV-полигонами (1) и на перемещение (2):

перемещение UV

. и перетащите UV остров куда-угодно чтобы он не мешался с другой топологией. Это нужно всего лишь для удобства — делать не обязательно. Другую топологию тоже можно перетащить в сторону.
Чтобы выделять острова в UV развёртке делайте двойной клик по острову:

7. В окне "UV Mapping" в секции "Relax UV" нажмите "Apply".

Вы можете поэкспериментировать между режимами LSCM и ABF. Не знаю как они работают, но разворачивают немного по разному. Смотрите, какой вам больше нравится:

LSCM и ABF

В результате, это развернёт остров в 2D плоскости:

8. Компонуйте UV развёртку на текстуре

Теперь можете покрутить остров, масштабировать, если нужно, и передвинуть туда где он не будет мешать. И повторить всё, начиная с пункта 4 для каждого UV острова. После десятого острова будете щёлкать их как орешки :)

оптимальная компоновка UV развёртки на текстуре

P.S. У вас контрастность в окне с UV развёрткой маленькая, потому что почему-то включён инструмент рисования. Попробуйте поперевключаться в разные режимы редактирования и посмотрите что будет:

@Aleksei Спасибо тебе ОГРОМАДНОЕ. Самая четкая инструкция. Браво.

si vis pacem-para bellum

problema.jpg

делаю все по алгоритму,выделил эйджи,создал тег set selection,зашел в UV Edit mode,но нижней части все кнопки не активны(((

si vis pacem-para bellum

и еще гложат такие сомнения:
1.Моя модель когда ее делал - потом на нее накидывается сабдив!!
2.Затем на сабдивной модели я применил Current state to object,переведя все фактически в полигоны с сабдивом - не может здесь крыться какой-то подвох?
3.Для сабстенс пэйнтер нужно для каждой отдельной части создать свой дефолтный материал (в идеале) _ можно сплитить вообще вот такую мою геометрию??

si vis pacem-para bellum

@kot_tabaka это как-то просто решается. Проблемы нет, вы скорее всего где-то не переключились в какой-то режим. И меня ещё по-прежнему смущает выбранный инструмент кисточки на панели слева.
Попробуйте переключиться на самую верхнюю кнопку на той панели, а также на на режим редактирования полигонов в UV (в верхней панели инструментов 7-я кнопка справа).
Если не получится, то когда буду возле компьютера — посмотрю.

и еще гложат такие сомнения:
1.Моя модель когда ее делал - потом на нее накидывается сабдив!!

Проблем быть не должно, если топология нормальная.

2.Затем на сабдивной модели я применил Current state to object,переведя все фактически в полигоны с сабдивом - не может здесь крыться какой-то подвох?

Так тоже можно делать. Вы же имеете ввиду, что сначала сделали развёртку, а потом увеличили кол-во полигонов через сабдив?

3.Для сабстенс пэйнтер нужно для каждой отдельной части создать свой дефолтный материал (в идеале) _ можно сплитить вообще вот такую мою геометрию??

Конечно можно. Но материал создавать не обязательно. Сабстенс может сгенерировать id по отдельным мешам. Если нужно, то могу показать как.

Ещё один способ правдоподобно разнести на куски объект в Cinema 4D

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

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

К сожалению, приведённый в вышеупомянутом уроке способ не вполне подходит для визуализации разрушения одного предмета при воздействии на него другого. Зато гораздо лучше подходит другой, который мы с вами и разберём в данном уроке. Выглядит он не менее реалистично, а с учётом новых возможностей — даже более реалистично.

Пуля разбивает стекло

В качестве подопытных объектов выберем что-нибудь несложное — в нашей сцене летящая пуля будет разбивать обычное плоское стекло.

Отлично, никаких внутренних рёбер на поверхности плоскости не видно.

Режем плоскость на множество неровных полигонов

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

А вот теперь начинаются отличия от предыдущего способа.

Разъединяем между собой полигоны плоскости

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

Однако вернёмся к работе над стеклом.

Ага, скажете вы, и в предыдущем уроке мы делали то же самое!

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

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

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

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

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

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

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



Иногда бывает так, что нужно создать что-то вроде объекта маски в cinema 4d. То есть этот объект должен быть сам невидимым при рендере, но при этом перекрывать объекты, находящиеся за ним. Чаще всего такая ситуация возникает при сведение проекта в другой программе, например after effects. Так вот, решается эта проблема в два счета, без всяких мульти-пасов и тому подобных сложностей.

На тот объект, который должен быть маской кидаем новый материал с единственным включенным параметром прозрачность (transparency).



Затем на перекрываемый объект вешаем тег "композитинг" (compositing) и снимаем галочку с параметра "видимый для прозрачности" (seen by transparency).



Вот и все, теперь при просчете объекты, которые перекрывает наш слой маска и он сам будут невидимы.

Читайте также: