3D-аватары: как это работает

Разбираем на примере блогера CodeMiko.

3D-аватары: как это работает

О чём речь

Даже если вы не знаете английский, просто посмотрите этот ролик:

Справа — настоящая девушка, слева — её виртуальный аватар Мико. Мико повторяет все движения и мимику девушки в реальном времени. Если девушка встанет и будет ходить по комнате — аватар сделает то же самое. 

Как это работает

Чтобы создать такого персонажа, понадобилось четыре составляющих: 

  • специальный костюм, чтобы отслеживать положение тела;
  • камера для лица, чтобы передавать мимику;
  • софт, который обрабатывает полученные данные и рисует картинку;
  • артистизм и непосредственность автора (она называет себя «оператор», или technician).

Всё это используется, чтобы проводить развлекательные стримы в «Твиче». Персонаж сидит перед экраном, общается с гостями, треплется о жизни, показывает спецэффекты и принимает донаты. 

Что за костюм

На Мико специальный костюм Xsens с датчиками, каждый из которых отвечает за свою часть тела:

3D-аватары: как это работает

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

3D-аватары: как это работает

Эмоции на лице

Чтобы оживить лицо аватара, Мико прикрепила телефон напротив лица и использовала приложение Live Link Face. Приложение обрабатывает мимику, следит за положением глаз и даёт на выходе трёхмерную мультяшную картинку.

3D-аватары: как это работает

Как всё это превращается в 3D-графику

Данные с телефона, камер и костюма отправляются в виртуальную среду на движке Unreal Engine. Внутри происходит всяческое колдунство: 

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

Всё это рендерится на движке в реальном времени и отдаётся в стриминговый сервис «Твич», где трансляцию смотрят люди ради увеселения. 

По сути, это полноценная виртуальная видеостудия, собранная на базе движка Unreal Engine. Вот до чего техника дошла:

3D-аватары: как это работает

Зачем это нужно?

Люди это смотрят для развлечения. 

С прагматической точки зрения это нужно вот зачем: 

  • У людей есть потребность в социальном контакте, развлечении и в удовлетворении своих сексуальных фантазий.
  • Производить контент под эту задачу на живых людях может быть долго и трудозатратно: нужны хорошие актёры, студия, свет, операторская бригада, грим, декорации. 
  • Производить такой развлекательный контент в виртуальной среде намного технологичнее и дешевле. 
  • Если большие китайские или американские (или чешские?) производители контента освоят эту технологию, они смогут производить контент и проводить трансляции с гораздо большей степенью свободы. Если клиент хочет, чтобы ему прочитала сказку на ночь полуодетая Дейенерис с лицом Джессики Честейн на фоне Колизея и чтобы рядом Вин Дизель и Джейсон Стетхем исполняли гачимучи — довольно скоро это станет реальностью и будет стоить недорого. 

В чём сила?

Может показаться, что сила в технологиях: мол, очень крутое техническое решение, вот бы нам тоже построить виртуальную студию. Но на самом деле сила в артистизме «оператора» — девушки, которая стоит за Мико. Она классно отыгрывает своего персонажа и вкладывает много сил в то, чтобы людям было интересно смотреть. 

Дело не в технологиях — дело в том, кто ими пользуется. 

Что будет дальше?

Скорее всего, мы увидим такое развитие:

  • Виртуальный стриминг станет мейнстримом.
  • Появится новая профессия «Оператор виртуального аватара».
  • Появятся сравнительно недорогие костюмы и шлемы для точного захвата движений и мимики.
  • Благодаря развитию 3D-дипфейков зрители смогут получить фотореалистичную картинку с наложением любого лица.
  • Зрители смогут заказывать приватные шоу и управлять их содержимым.
  • Постепенно на смену живым операторам придут свёрточные нейронки, которые научатся и двигаться, и говорить неотличимо от людей.
  • Наши внуки будут залипать в это через шлемы VR, теребя свой поп-ит из будущего. 
  • А потом будет отключение воды, и все будут мыться из ковшика. 

Расскажите ещё

Вот ролик, в котором собрано почти всё, что известно об этом проекте. Любопытно, что этот ролик выпустил тоже виртуальный блогер (у него, правда, техническое исполнение намного проще):

Текст и иллюстрации:

Михаил Полянин

Художник:

Даня Берковский

Корректор:

Ирина Михеева

Вёрстка:

Кирилл Климентьев

Через год — лучше работа, выше зарплата
В «Яндекс Практикуме» становятся разработчиками с нуля. Выберите язык — веб, Python, Java, C++ — и учитесь. Джуны зарабатывают от 80 000 ₽, мидлы — от 150 000 ₽. Дальше — программы трудоустройства и компенсация, если пойдёте в Яндекс.
Через год — лучше работа, выше зарплата Через год — лучше работа, выше зарплата Через год — лучше работа, выше зарплата Через год — лучше работа, выше зарплата
Вам может быть интересно
Вам мало языка C? Попробуйте C++
Вам мало языка C? Попробуйте C++

Шустрый, мощный, весь обвешан классами.

medium
Векторы: третий уровень сложности
Векторы: третий уровень сложности

Знакомимся с коллинеарностью.

medium
Зачем вам jQuery
Зачем вам jQuery

Каждый год говорят о том, что jQuery уже не тот, но продолжают его использовать. Почему? Вот почему.

medium
6 проверенных способов для измерения скорости программы на Python
6 проверенных способов для измерения скорости программы на Python

Пригодится всем, кто начинает оптимизировать код

easy
Как выбрать backend-курс Практикума под свой уровень и цель
Как выбрать backend-курс Практикума под свой уровень и цель

Таков путь

easy
Selectel: как работает российский провайдер инфраструктуры и облаков
Selectel: как работает российский провайдер инфраструктуры и облаков

Чем занимается инфраструктурный провайдер, можно ли в него устроиться и как там с импортозамещением

easy
Декораторы в Python: прокачиваем функции
Декораторы в Python: прокачиваем функции

Красиво и мощно

medium
Бесконечная прокрутка против пагинации (и против дополнительной загрузки)
Бесконечная прокрутка против пагинации (и против дополнительной загрузки)

На это можно смотреть бесконечно

easy
Язык программирования Swift
Язык программирования Swift

Порхает как ласточка, типизирует как TypeScript

easy
easy