[Пятничное] Как мы пилили 3D Web

в 7:38, , рубрики: 3ds max, blender, WebGL, ненормальное программирование, Работа с 3D-графикой, Разработка веб-сайтов, фриланс

Мы с братом, пара 3D художников, этакие парни с крутыми прическами и в прикольных очках. Практически близнецы с абсолютно одинаковыми лицами, но диаметрально разными характерами. Однако, увлечение у нас одно на двоих — воплощать в виртуале то, что есть в реале. И надо сказать, это вполне удается, ибо один неплохой моделлер, а второй аниматор от Бога.

Вот только инструментарий у нас различается и ого-го как! Я страстно и нежно люблю Blender, а мой братело обожает Макса. Холивар не утихает никогда, но нам удается создавать прикольные вещи, используя свои столь разные 3D редакторы. Однако, тема не об этом.

Все началось с портфолио… Со создания чёртового портфолио, после которого мы с братом разругались вдрызг, синхронно навесив друг-другу «фонари». Вы задумывались когда-нибудь о переносе 3D работ куда-нибудь в интернет, хоть в свой блог?

Окей, читатель, ты попал по адресу, ибо таких неудачников еще поискать нужно, хотя финал все-же получился обнадеживающий.

В поисках истины

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

Затоварившись упаковкой столь ценного напитка, мы с братом двинулись к нему в гости. Цель проста — мы хотим 3D в вебе, но понятия не имеем, что и как.

Глубокомысленно посмотрев на нас, он изрек:

— Unity.
— Что Unity?
— Используйте Unity, он бесплатный и классный!

Окей, совет гуру указал нам путь к лучезарному будущему. По крайне мере, именно так мы рассуждали по пути домой, окрыленные идеей и парами пива.

Unity классный движок, мы его знаем, ибо моделили и экспортили в FBX бесчисленное число раз. Вот только знания наши ограничивались импортом того же FBX, что выполнялось для контроля моделей, перед сдачей проекта заказчику. А ещё требуется знать C#, говорят он очень простой. Мы свято в это верили…

Первый блин уже в начале стал неистово вонять, предполагая в конце свернуться комом, ибо Unity потребовал обновление, что мы наивно ему разрешили. Если у вас есть «Ростелеком», но денег на счету нет, зато есть кульный 3G модем, то вы поняли, о чем идет речь. Да, приветливо мигающий значок модема показывал, что он работает. Показывал долго, очень долго, несколько часов и это точно. После чего благополучно сдох, прервав закачку на последних шагах.

Разумеется, ничего потом не работало. Это был звонок свыше, но мы его прослушали…

Забросив неделю фриланса, мы всё время посвятили Идее. Кодить оказалось легко, ибо в инете есть масса примеров, что вполне хватало для создания крутилки модели. Однако, эта ценная мысль зародилась в наших головах только тогда, когда мы достали нашего друга-программера ламерскими вопросами и он нас послал в программерский рай, т.е. в гугл. Да, есть wiki Unity, где можно тупо скачать готовый скрипт, что мы в итоге и сделали, после нескольких дней мучений в попытках достичь просветления. Тем более страшным оказался крах. Вооружившись порцией пива, мы вновь отправились к нашему другу:

— Не работает!
— Что не работает?
— Экспорт в WebGL.
— А он должен работать?!

Фак! Минутная пауза и дружище понимает, что его начнут сейчас бить. Больно, жестко, предварительно отняв всё пиво.

Из бурных и путанных объяснений стало ясно, что это страшный, вселенский заговор. Мол, разработчики Unity обиделись на разработчиков браузеров, когда они прищемили хвост их веб-плееру. С тех пор они нагло игнорируют мировое зло в виде WebGL и пакостничают создателям браузеров. Особо нелюбимыми почему-то стали обычные мобильники. Ведь загрузить с десяток мегабайт только кода из интернета — это кульная мысль! А взамен получить такой экран.

[Пятничное] Как мы пилили 3D Web - 1

Ну и больно надо. В смысле больно было другу, когда он печально смотрел на уплывающее пиво. Впрочем, он быстро реабилитировался, назвав волшебное слово: «Sketchfab».

Почти в нирване

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

Наверное, именно это блаженное состояние заставило меня кивнуть головой, когда братело захотел сразу купить подписку PRO. И эта мысль была здравая, ведь наши модели должны крутиться только у нас, а не для всех на обозрение, как предлагает FREE. Нежно зажав кредитку (мою!), братишка ускакал к своему компу.

Благодушие не покинуло меня, даже когда брат заплатил 180 баксов за целый год, хотя мы договаривались лишь на месяц, посмотреть. В конце-концов, мы нашли то, что искали… и это была большая ОБАМА, в самом неприглядном из неприглядных ракурсов!

Нет, ничего обидного я не скажу про сей сервис. Мы сами лохи.

Когда тебе нужно выложить модельку какого-нибудь перса с текстурами и анимацией, то скетчфаб отлично подходит (кстати, да, попробуйте загрузить сцену с двумя арматурами, получите незабываемые впечатления). Покрасоваться перед друзьями — отлично! Продать на скетче — ноу проблем.

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

Правда, братец заикнулся было, что-то о плане Premium за 80 баксов в месяц. Вот после этого мы и обменялись дружескими тычками.

По-черепашьи, вплавь

Это было возвращение к самому началу. На друга-программера надежды больше не было, кредитку брат почти исчерпал, и мы плотно погрязли в интернете, в поисках халявного движка. Увы, как оно всегда бывает в нашем мире, халявы нет. И если кажется, что есть, то стоит внимательно читать, на что ты решился подписаться (привет маркетологам скетчфаба!).

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

Казалось судьба навсегда налепила на наши лбы стикеры «неудачники», смачно плюнув на них перед этим. Поймите правильно, были бы мы программерами, то проблема решилась по-быстрому, но мы простые работяги с творческой жилкой. А 3D портфолио в интернете — это фишка, которой реально можно привлечь интерес заказчиков. Вобщем, дело застопорилось вглухую…

В раскоряку, но наверх (постфактум)

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

[Пятничное] Как мы пилили 3D Web - 2

Я использую Blender, брат работает в 3ds Max’е, а связующее звено для веба у нас Verge3D. Эта штука прекрасно работает в обоих 3D редакторах, поэтому с экспортом в веб никаких проблем нет (там еще приватное облако). Скелетная анимация, ART, Cycles, Physical материал, Principled BSDF и т.д и т.п

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

А вам творческая братия, один совет: пошлите на… своего друга-программиста-алкаша, если таковой имеется. Великий гугл в помощь! Разработчики верджа – молодцы!

P.S.: специально для братца.

Ты проиграл) Я написал и все же выложил здесь столь занимательный и постыдный квест, что мы с тобой прошли. С тебя… сам знаешь что.

Автор: Vik_King

Источник


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js