Как превратить 3D модель в 800-килограммового робота

Знакомьтесь, это «Молот» — стратегический юнит из игры «Правила войны».

63da178cd8bc4b8291434189283553e0.jpg

3D модель робота была создана еще 5 лет назад. В ней 180 тысяч полигонов, 440 элементов и 5 основных текстурных листов по 4К каждый. Но сейчас перед вами уже не 3D модель, а настоящий 3-метровый 800-килограммовый исполин из плоти и крови. Точнее, из металла и металла.
«Молота» сделали Саша, Андрей и Сергей — кузнецы со стажем. Они говорят, что их кузня стала чем-то вроде арт-студии. Публикуем рассказ ребят о том, как робот «Молот» появился на свет.

Как приступили к созданию робота


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

Мы находим то, чего еще никто не делал. Потом выясняем, в чем основная загвоздка, и беремся за работу. Сергей создал сложнейшие готические доспехи. А к Евро-2012 на одном из харьковских проспектов установили нашу 4-метровую скульптуру женщины. Однажды мы делали фигуру коня, половину которой выковали в реалистичной манере, а вторую половину — в стиле стимпанк. Чаще всего оказывается, что трудности, перед которыми отступали другие, можно преодолеть — было бы желание.

Мы начали сотрудничество с компанией Plarium с небольшой пробной задачи — аптечки из Half-Life. Сейчас она висит на парковке Plarium Kharkiv. А потом ребята прислали 3D модель, скриншоты и видеоролик с роботом.



У нас не было необходимого опыта, но мы знали, что получим его в процессе. В общей сложности над «Молотом» мы работали 2 года, но сейчас сделали бы подобный проект за 6 месяцев.

Как мы готовили материалы


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

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

В 3ds Max разобрали робота на детали, а в Pepacura сделали развертку 3D модели. Затем стали готовить материалы для лазерной порезки и осваивать SolidWorks. Чтобы создать необходимое количество деталей, нужно было сделать 1,5 километра надрезов на стальных 26-миллиметровых листах размером 1×2 метра.

fea42306cda1492a92ef04a517f621ed.jpg

В фирме, которая занимается лазерной порезкой и обычно делает корпусы для сварочных аппаратов, очень удивились нашему заказу. Особенно количеству деталей — более 3000.

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

1942050367204e4c8e265281a26a7604.JPG

946fa18e42544e08a9775bff29e1c51f.JPG

Как мы собирали робота


Работу по сборке мы поделили на блоки: каждую часть робота собирали отдельно. При этом одна часть могла состоять из 20–30 состыкованных между собой деталей.

Базовый элемент, на котором всё держится, замоделировали в 3ds Max, а потом собирали из труб. Конструкцию нужно было сделать разборной, поэтому мы закупили крепкие трубы для каркаса, а остальные блоки сделали навесными.

Лазером вырезали только контуры деталей, так что все сгибы и объем нужно было создавать вручную. Мы переносили пунктирные линии сгибов из Peparura на железные детали, а потом проходились по этим отметкам болгаркой, чтобы металл стал податливее. Разметка была очень трудоемким процессом, на нее ушла треть всего времени.

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

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

7438f89e392d4688bb39b20c74cf0f39.jpg

11d760359cfa49c889907ab990f069fd.jpg

c97f416b3a8c4b8baeee35406ff57186.JPG

427a5b057f7b4dc2939473898517e787.jpg

d0320ea557cf4e8f9bbda829b6b5542d.jpg

5062c737538340d0b4f784491c393c47.jpg

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

Мы начали с головы робота и сразу поняли, что всё делаем правильно: голова выглядела точь-в-точь как у 3D модели.

4817c460e59b4190a318cd307dc923b8.JPG

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

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

f5b48810c2454314a132c6b251d31113.jpg

7328cf8e864c41d08bec1c007d715658.jpg

7f4d196830e24daf9cb186994213a49e.jpg

5d1365b2ec014cc7a9ecb5894c2137ed.jpg

Как мы оживили робота


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

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

В роботе установлена влагозащищенная акустика Mystery (такая же используется на катерах и яхтах) и усилитель с караоке-системой — к «Молоту» можно подключить 2 микрофона или электрогитару.

e0350491e1984f6bb323035d28c0f08e.jpg

Прицел и локти заливали термоклеем, который рассеивает свет и скрывает его источник. Раньше мы уже экспериментировали с подсветкой аптечки Half-Life и выяснили, что материал идеально подходит для таких целей.

11f53953e0bd4824ac229ffe9d18c045.jpg

По контуру модулей проходит LED-лента. В синематике мы видели, что робот использует подсветку на плечах для ослепления противника, поэтому оставили щель, через которую пробивается пучок света.

29f1e0a8307a444ba21152fa9fb0c63b.jpg

А в глазах «Молота» LED-лента закрыта фильтром из оргстекла, затертым ближе к краям. Именно это создает эффект светящихся зрачков.

42e4c98cc4d4486f8baf91f55f9c1eb4.jpg

Как навели красоту


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

daf74ab02f3d4f41be9e7334b138373c.JPG

fb8f968efeaf4a7bb712be86a1f4fa60.JPG

2682e5a62dcb41678d1a37a6ba0d8f00.JPG

b0919b177bac44d3aca26bb7768c852b.JPG

6a09b45a89fe4b35abeee4674b3c018a.jpg

e0445e30ae294a1599165ddd669a2dab.jpg

91b5c2c1975440fd93a420feb7bcd5fc.jpg

Финальный этап, сборка, занял трое суток — без сна и отдыха. Это была самая сложная часть проекта. Чего стоило вставить пушку, которая весит больше 200 килограмм, ему в руки!

3b293463ea0648d9bb0ae444668f0b20.jpg

Сейчас робот «Молот» встречает сотрудников и посетителей Plarium Kharkiv на ресепшене 8 этажа.

757d2f7f9dd545999175161d21748205.jpg

P.S. Позже разработчики, локализаторы и саунд-дизайнеры Plarium научили робота говорить на трех языках, но об этом будет отдельная статья.

© Geektimes