О демо
Это хранилище API распознавания выражений лиц , используемого в демо.
Документ API здесь .
Самая конкретная демонстрация c, о которой я говорю, это здесь .
В этой демонстрации используются три вспомогательные JavaScript программы, такие как these .
Я полагаю, что в этой демонстрации они используют фронтальную камеру ноутбука и API для получения этих двух массивов значений для трехмерной анимации морфируемых целей в веб-браузере.
Направление (вращение вокруг осей x, y, z) головы клиента в режиме реального времени, например
const rotation = JEEFACETRANSFERAPI.get_rotationStabilized(); \\ please see doc for return value
в animate () в ThreeJeelizHelper. js .
Выражение лица (морфизированные коэффициенты 11 выражений лица, такие как массив [9] -> [0,8 закрытого левого глаза]) клиента в режиме реального времени, как
const morphTargetInfluencesDst = JEEFACETRANSFERAPI.get_morphTargetInfluencesStabilized(); \\ please see doc for return value
в случае успехаCallback () ThreeMorphAnimGeomBuilder () в ThreeJeelizHelper. js.
* 104 4 * Вопрос
Я думаю, что 2-я задача (изменение выражения лица 3D-модели в реальном времени) требует гораздо больше вычислений, чем 1-я задача (изменение направления 3D-модели в режиме реального времени), поэтому Второе задание обрабатывается графическим процессором с использованием GLSL.
По сравнению с первым заданием, которое просто выполняется в функции animate () с использованием JavaScript, второе задание кажется мне запутанным, и я не уверен, как это API и GLSL связаны между собой.
Выражение лица клиента изменяется в режиме реального времени, поэтому я думаю, что этот код JEEFACETRANSFERAPI.get_morphTargetInfluencesStabilized()
должен вызываться много раз в процессе рендеринга, но на самом деле, кажется, что он вызывается только один раз в successCallback () ThreeMorphAnimGeomBuilder () в ThreeJeelizHelper. js.
Как код GLSL в здесь получает коэффициенты морфизации из API в реальном время? Где это происходит в коде?
Я мог бы неправильно понять что-то об анимации morph targts или об этом API.
Если вы могли бы указать на мои ошибки, я действительно ценю это.
Спасибо за чтение!