В этом уроке мы будем создавать риггинг гусениц танка. Для этого будут использоваться драйвера, ограничители и физическая симуляция (riggid body). В конце урока создадим объект, с помощью которого будем производить управление танком. А именно движение вперед/назад и повороты.
Финальный результат
Видеоурок
Текстовая версия
С помощью модификатора Array создайте 6 цилиндров, примените его, сделайте каждый цилиндр отдельным объектом и установите центр объекта в геометрическом центре каждого цилиндра:
Добавьте еще два цилиндра большего размера. Добавьте кривую Безье и с ее помощью создайте путь, по которому будет вращаться гусеница танка (обратите внимание на геометрический центр кривой):
Добавьте в сцену куб и создайте из него звено цепи. Добавьте два модификатора и настройте одинаковое расстояние между звеньями гусеницы. После этого примените оба модификатора, сделайте каждое звено отдельным объектом (как мы делали цилиндры в начале), а также установите центр объекта в его геометрическом центре:
После кривую можно удалить. Результат должен быть примерно следующим:
Включите 2-й и 3-й слои. Выделите все звенья и сделайте активным любое из них (желательно по середине). Сделайте их активными объектами и свяжите между собой. После этого Вы заметите, что в месте активного объекта одна связь отсутствует. Выделите эти два несвязных звена и таким же образом свяжите их:
Перейдите не 3-й слой, выделите все связи (ограничители) и переместите их лишь на 3-й слой (просто уберите со второго). Измените центр вращения на Individual Origins и поверните их на 90 градусов по оси Y:
Добавьте плоскость в качестве пола, сделайте ее пассивным объектом и запустите анимацию (на вкладке рендера можно выставить 60 кадров в секунду для более быстрой анимации):
Чтобы повысить качество физических взаимодействий, на вкладке сцены увеличьте указанные значения:
Примените масштабирование к звеньям и установите для них вес равным 5:
Измените форму первого цилиндра, и настройте для него следующие параметры на вкладке физики (форма, отступ, трение):
Добавьте в сцену пустышку (Single Arrow) и куб (назовите его body). Примените для куба параметр Scale. На вкладке физики установите для него вес равным 50:
Выделите пустышку и создайте для нее ограничитель Generic Spring. Разрешите цилиндру вращаться лишь по оси X:
Таким же способом создаем ограничения для первого маленького цилиндра. Но в отличии от верхнего, разрешим ему немного изменять свое положение по оси Z:
Теперь создадим еще одну пустышку, которая будет выступать в качестве подвески и контролировать положение цилиндра. Расположите ее как показано на изображении, затем выделите цилиндр и создайте для него ограничитель Limit Distance. Затем свяжите пустышку с телом танка (Ctrl + P — Object (Keep Transform)):
Продублируйте обе пустышки и цилиндр на второе колесо (а первоначальный цилиндр удалите). Выделите пустышку Single Arrow и добавьте 4 драйвера для указанных значений. Для каждого создайте переменную var, в качестве параметра укажите пустышку первого маленького колеса и скопируйте путь соответствующего параметра:
После этого продублируйте колесо с драйверами на оставшиеся 4, а первоначальные цилиндры удалите:
Удалите последний цилиндр и добавьте на его месте кольцо. Необходимо создать «шестеренку» которая будет вращать гусеницу. Звеньев в моей цепи 75, поэтому кольцо я создал с 28 вершинами. Затем с помощью инструмента Bevel придал ему соответствующую форму:
Далее из этого кольца создайте примерно следующую форму и на вкладке физики установите для него указанные параметры:
Затем также как и для первого цилиндра — ограничитель для пустышки, позволяющий вращаться лишь по оси X:
Добавьте еще одну пустышку (plain axes) и для нее установите ограничитель Motor. Активируйте угловой мотор, установите его максимальную и текущую мощности:
Увеличьте продолжительность анимации до 2000 и запустите ее для теста (помимо количества кадров, на вкладке сцены в меню Rigid Body Cache установите параметр End равным 2000). На данном этапе можете изменять веса различных частей, увеличивать/уменьшать пределы ограничителей… в общем тестируйте, играйтесь и добивайтесь желаемых результатов.
Продублируйте левую половину и снова займитесь тестами и улучшением:
Теперь добавим пустышку, с помощью которой будем управлять мощностью двигателя. Добавьте новую пустышку Cone в центре координат и подымите ее лишь по оси Z (X и Y должны быть равны 0). Выделите одну из пустышек, к которым назначен ограничитель Motor и создайте драйвер для параметра Tangent Velocity. Затем просто скопируйте данный драйвер на вторую пустышку. Теперь перемещая пустышку Cone по оси Y мы управляем направлением движения танка.
Чтобы научить танк разворачиваться, необходимо создать еще одну переменную для драйвера Tangent Velocity и дополнить формулу. Различия же будут лишь в том, что для правой стороны переменная var2 будет принимать отрицательные значения, а левая — положительные:
Последний штрих, это заменить все текущие низкополигональные объекты высокополигональными. Таким образом мы избавимся от искажения гусениц в местах изгиба и в конце концов получим танк, а не палочки на колесах :)
Делитесь своими успехами в комментариях. Удачи!
Спасибо за интересный урок. Кстати не сразу понял, что меня смутило в ролике с танком, но потом присмотрелся и понял, что у него пушка движется вместе с корпусом. В современных танках она стабилизирована, и по возможности сохраняет свое направление и угол. Не подскажете, как проще всего добиться эффекта стабилизации пушки?
Я далек от темы танков и плохо представляю о какой именно стабилизации пушки идет речь. Пример бы…
Скорее всего речь идёт о контроле угла наклона ствола, чтобы пушка не поднималась вверх вместе с танком, а была всё время на что-то нацелена.
В таком случае ограничитель Track To думаю подойдет.
Спасибо, почитаю про Track To и попробую как только доберусь до компа.
Да, я именно это и имел ввиду.
Ну как, получилось стабилизировать пушку???
Извените что не в тему, но какую версию мне выбрать 2.65 или 2.73? Вроде 2.65 стабильнее.
Где вы такого бреда начитались?! (:wonder:) Там, случайно, не написали что Windows 95 стабильнее Windows 7?
Ахаха Артём))
(так угараю потому что у самого был 95 когда то давно)
Да, блендера, точно не касается, всё лучше, и не останавливаются, в отличии от макса — 8 лет мучений, сначала с вирая слез на ментал, потом немного майки и вот год на блендере, по ходу фореве, кстати заходы делал в течении года, потом как то махом, макс как приложение, боже как автодеск им людей мучает, причем во всем, вообщем я предатель )
Для Linux-а, может и стабильнее. Последняя версия у меня тоже на Лине немного чудит, в отличии от последней версии в Винде…
Если на винде сидишь, то естессно последняя версия. А если на линухе — та, которая в репах…
Ребят что вы прикопались? Суть урока создание гусеницы, которая, между прочим выглядит очень хорошо, а не как стабилизировать пушку во всех плоскостях за 1 минуту! А за урок спасибо!
Я ни в коем случае не прикапываюсь, отличный сайт, отличные уроки, да и вообще я благодаря этому сайту подчерпнул огромное количество интересных техник, снес 3DMax на работе и дома и стал фанатом Blender3d :) а я за максом между прочим просидел более 5 лет. Просто у меня своя небольшая игровая студия, как раз задумали игру про танки, а такого материала поверьте не много, было бы здорово в анимации видео-вставок не выставлять пушку в ручную а сделать это автоматом.
Что за игра ? Очень интересно !
Здравствуйте, у меня проблема… Я не могу анимировать в Blender 3D, У меня вылезает надпись «Программа Blender 3D Остановлена!» Скажите, что делать?
Доброго времени суток. На результат влияния нет, но немного беспокоит может кто знает в чем проблема ? Ну кроме очевидного что авто прекращение при помощи питона выключено(очень вольный перевод)
http://static.hypercomments.com/data/images2/guest/1426235928391716
классный урок — спасибо
Здравствуйте!
Почему такой эффект? Что не правильно я сделал?
ну с виду у тебя центр кривой безье смещен , может вручную ее шевелил, а потом с не неравномерно выставил центр куба который под нее создавал и получилось смещение, ну я думаю поэтому, может ошибаюсь, постарайся все точно как в уроке делать, должно получиться
Попробовал то же самое сделать (создать кривую Безье и сферы по пути) во front ortho, то получилось. А в режиме right ortho такой вот косяк получается, как на изображении выше.
Ниже изображение во Front Ortho.
опирайся на координаты а не та то с какой стороны ты смотришь на объект, надо понимать как твой объект расположен в пространстве координат, чтобы правильно управлять им через модификаторы, возможно ты просто разворачиваешь его в режиме редактирования и поэтому путаница с координатами, крути в объектном режиме, перед использованием модифера, можешь применить локацию и ротацию, чтоб обнулить
c 3 го раза получилось сделать чтоб гусенецы совпадали с зубцами… https://www.youtube.com/watch?v=Rj7VvZFzT1g
Добрый день.Понравился очень урок.Спасибо.Несколько раз делаю, вот такое получается. Подскажите где ошибку искать.
Получилось раза с пятого. :)
Спасибо, все оказалось не так уж и сложно)
Подскажите пожалуйста, почему гусеница проваливается и как это исправить?
«чувствительность» колизии выставлял на все прямоугольники траков гусинецы)?
Как его включить ???
Ctrl + A
Спасибо (:smile:)
А где эта вкладка Drivers находиться??? Не могу найти… или надо что-то скачать?
подскажите пожалуйсто, делаю все по уроку, но гусеницы начинаю крутиться вокруг своей оси, в чем может быть проблема?
В осях.
Отличный подробный урок. Всё получилось. А можно с помощью, например, верхнего ролика натягивать цепь?
Ждём, когда разрабы сделают функцию, чтобы не заменять каждый параллелепипед на высокополигональную модель по-отдельности (:smile:)
Кстати, не забываем, что это урок, как делать гусеницы. Я надеюсь, что большинство здесь может сделать гусеницы не только для танка.
А вообще респект Слакве : всё делает оперативно, гладко и главное, понятно.
«респект Слакве»
Прикольно так (:smile:)
Спасибо!
Да нет здесь ничего прикольного. Респект очень вполне оправдан. Вы умудряетесь 1 вести сайт + вы вышли сухими из воды : в интере много троллей, школоты и вандалов, которые ничего не умеют, кроме гадостей и маянья фигнёй. У меня есть богатый опыт столкновений с подобной «фауной». По мере набирания популярности стоит обезопасить проект от атак. Пока это не требуется (и хорошо, что).
Спасибо, хороший урок. Сделаете пожалуйста урок про риггинг автомобиля.
Здесь 2 варианта, как это сделать.
1. Сделать физическую симуляцию, а колёса сделать, как моторное колесо у танка (Которое, как шестерня). Но подозреваю, что получится не крутой автомобиль, дрындулет.
2. Есть способ попроще.
1) Сделайте анимацию езды без вращения колёс с помощью ключа Location.
2) Сделайте анимацию кручения колёс с помощью ключа Rotation.
3) Совместите эти анимации (как это делать подробно описано в уроке «Риггинг низкополигонального динозавра».
Примечания : можно не париться с ключами, и установить 1 : LocRot.
хороший урок. [video]https://youtu.be/r2BeJhH0JUE[/video]
Не в тему, но. Я тут 2 дня втыкал, пытаясь сделать симметрично прорези (не знаю как правильно называются) на колоннах в др.-греческом стиле, знаете, такие вертикальные полоски-углубления ? Что я только не делал — сначала вырезал булем из колоны array капсул, не понравилось. Затем с кривыми пробовал — тож не то…. Забодался и пришёл почитать урок про танк — чисто отвлечься. И тут читаю — «затем с помощью Бевела придал кольцу форму»…. О, как я матерился, кто б послушал… Два дня в топку — не догадался фаски применять к вертикальным рёбрам…
Мораль такова — читать надо все уроки подряд, не знаешь где найдёшь, где потеряешь.
Раз в году, а то и реже встречается подобный комментарий (:smile:) В один из не многих, вы познали истину!
Надеемся на скульпт теперь. Тут я видел как работает один художник (правда в ZBrush). Так я потом много таймлапсов со скульптом просмотрел — никто с ним не сравнится. И скорость, и правильность. И темы. Все чудищ делают, а он красоток. =) —>> http://www.youtube.com/user/SupremeFunk/videos.
Спасибо за урок. Очень помог) Но, такой вопрос: Как «натянуть» гусеницу?
Добавьте кривую Безье и с ее помощью создайте путь, по которому будет вращаться гусеница танка:
https://blender3d.com.ua/wp-content/uploads/2015/03/tank2.png
Ну, я что, собственно, и сделал. Как в уроке. Но у гусеницы почему-то не создается натяжение и она обвисает, что мне очень не нравится.
Та же фиговина, думаю сделать валик, который при анимации будет приподниматься
вес направить вверх
крутой урок
?
два года спустя)
Здравствуйте. Артёму спасибо. НА 21.51 у вас танк не поехал, вы во вкладке объектов не указали объекты.