View in Telegram
Forwarded from Матвей Медведев (Матвей Медведев)
Как апнуть веб-продакшен в 3D. История Аэрофутбола для дизайнеров и разработчиков. Часть 1: Год назад я запустил в Сирене юнит игровой веб 3D-разработки. Копать в этом направлении указывал опыт больших французских студий. Визуальный язык их проектов построен на шустрой и оптимизированной 3D-графике и шейдер-эффектах. Осталось найти инструменты и собрать команду. Про команду расскажу чуть позже, сегодняшний пост про наш долгий и болезненный поиск инструментов. На nocode-билдеры Spline и Peach Worlds смотреть не стали сразу – в них нет своего шейдер-графа и кастомной физики. Там невозможно сделать кастомные материалы, только пост-процессинг. Пошли искать движки. В экспериментальный Needle Engine (unity-based движок), мы не полезли по причине громоздкости самого Юнити, и не сильно крепкой дружбы Юнити с WebGL – добиться красивого рендера очень трудно, Юнити создан для чего угодно, но не для рекламных спецов. Playcanvas тоже прошел мимо по причине отсутствия интеграции с современными фреймворками для верстки. Наш разработчик Андрей цитирую “рот #### колупаться в ванильном js”. К тому же, шейдер-графов для плейканваса в standalone версии тупо нет, использоваться сторонние ковырялки шейдеров то еще удовольствие. Ну и, конечно, все движки забугорные, нам в любой момент могли отрубить к ним доступ, похоронив месяцы продакшена. Обломавшись с движками, мы решили искать подходящий javascript фреймворк. Babylon.js – не для красивого визуала. Несмотря на наличие шейдер графа внутри официального эдитора, картинка на рендере оказалась настолько пыльной и мыльной, что пришлось бы положить карьеру нескольких дизайнеров и разрабов, чтобы получить приличный результат. Сырой three.js показался нашим разрабам слишком сложным, но именно его следовало юзать с самого начала. Выбор остановился на react three fiber – обертки поверх three.js. Кроме удобства самого Реакта, Андрюху привлек Drei – набор инструментов для упрощения жизни. То есть да, порывшись в движках мы пришли к тому, с чего и начинали — кастомная разработка на js. Сложно порекомендовать что-то дизайнерам. Пробуйте инструменты, на которые я ссылался выше в посте — ими точно можно решать менее сложные задачи. А если амбиция — делать большие кастомные спецы, ну значит надо заводить свой юнит разработки в команде. Советую обратить внимание на этот курс для разрабов. Он дружелюбный, наша дизайнерка Катя даже начала его проходить. https://threejs-journey.com/ В следующих частях поговорим про сам 3D-пайплайн и шейдеры. #3dweb
Telegram Center
Telegram Center
Channel