当前位置:网站首页>Unity | two ways to realize facial drive
Unity | two ways to realize facial drive
2022-07-06 01:12:00 【Boiled Green Vegetable】
Catalog
One 、 Application unity Live Capture Plug in and iphone Unity Face Capture Software
(1) introduce Live Capture Package
(2) Create an empty object ( name :Recorder), add to Take Recorder Components .
(4) Set up the model ARKit Face Actor In the component mapper.
(5) Set up New FaceDevice Of ARKit Face Device Component's Actor value .
3. iphone download Unity Face Capture Software
Two 、 Control through algorithm data BlendShape The number
One 、 Application unity Live Capture Plug in and iphone Unity Face Capture Software
1. Version for
- unity edition :Unity Editor 2020.3.16f1 or later version
- iphone edition :iOS 14.6 or higher
- Reference documents :About Live Capture | Live Capture | 1.0.1 (unity3d.com)
2. unity In the operation :
(1) introduce Live Capture Package
Live Capture stay Package Manager Pass through git url How to add :
(2) Create an empty object ( name :Recorder), add to Take Recorder Components .
Add ARKit Face Device: It will be in Recorder Automatically create under the object New FaceDevice, There is a ARKit Face Device Components .
(3) Drag the model into the scene , And add ARKit Face Actor Components , Make the model into Prefab.
Pay attention to model import Unity Check... When Import BlendShapes( Just check it ,unity Check... By default ).
stay Project Create a mapper( Right click /Create/Live Capture / ARKit Face Capture / Mapper), Set up mapper Related properties (RigPrefab Specify as generated in the previous step prefab,LeftEye、RightEye、Head To select the corresponding joint . The purpose of this step is to map BlendShape, If our model BlendShape The name matches Apple's ARKit requirement , be AddRender The operation will be mapped automatically , Otherwise, we need to set it manually ).
(4) Set up the model ARKit Face Actor In the component mapper.
(5) Set up New FaceDevice Of ARKit Face Device Component's Actor value .
(6) Create a server .
Click on Window/Live Capture/Connections, Click on Configure FireWall. Click on Create Server/Companion App Server, Click on Start Opening service .
3. iphone download Unity Face Capture Software
Open software ( The software is in iphone 12 Pro Max 15.4.1 Upper pro test stability , stay iphone X It will heat up and flash back ), Input IP And Port, After connecting, you can drive ~( If you can't connect , Probably unity The version does not conform or the network does not conform , Refer to official documents :About Live Capture | Live Capture | 1.0.1 (unity3d.com))
Two 、 Control through algorithm data BlendShape The number .
1. Correlation function
- obtain BlendShape Quantity and corresponding name .
public sealed class Mesh : Object
{
public int blendShapeCount { get; }
public string GetBlendShapeName(int shapeIndex);
}
- Set up BlendShape The weight
public class SkinnedMeshRenderer : Renderer{
public void SetBlendShapeWeight(int index, float value);
}
2. Realization
The data value range provided by the algorithm may be 0-1, So in SetBlendShapeWeight When it comes to *100.
Dictionary<string, int> bs_map;// On the model bs name - Indexes
skinnedMeshRenderer.SetBlendShapeWeight(bs_map["eyebrow_BS.Eyebrows_Sad_L"], 20);
边栏推荐
- Pbootcms plug-in automatically collects fake original free plug-ins
- BiShe - College Student Association Management System Based on SSM
- Cannot resolve symbol error
- File upload vulnerability test based on DVWA
- 朝招金安全吗 会不会亏损本金
- After Luke zettlemoyer, head of meta AI Seattle research | trillion parameters, will the large model continue to grow?
- Leetcode daily question solution: 1189 Maximum number of "balloons"
- 2020.2.13
- A preliminary study of geojson
- ubantu 查看cudnn和cuda的版本
猜你喜欢
Four commonly used techniques for anti aliasing
Illustrated network: the principle behind TCP three-time handshake, why can't two-time handshake?
Cf:d. insert a progression [about the insert in the array + the nature of absolute value + greedy top-down]
[groovy] compile time metaprogramming (compile time method injection | method injection using buildfromspec, buildfromstring, buildfromcode)
Hcip---ipv6 experiment
激动人心,2022开放原子全球开源峰会报名火热开启
MCU realizes OTA online upgrade process through UART
JVM_ 15_ Concepts related to garbage collection
Five challenges of ads-npu chip architecture design
ORA-00030
随机推荐
The basic usage of JMeter BeanShell. The following syntax can only be used in BeanShell
新手入门深度学习 | 3-6:优化器optimizers
[groovy] JSON string deserialization (use jsonslurper to deserialize JSON strings | construct related classes according to the map set)
Interview must brush algorithm top101 backtracking article top34
View class diagram in idea
In the era of industrial Internet, we will achieve enough development by relying on large industrial categories
Differences between standard library functions and operators
Some features of ECMAScript
激动人心,2022开放原子全球开源峰会报名火热开启
Dede collection plug-in free collection release push plug-in
Modify the ssh server access port number
[Arduino syntax - structure]
Mysql--- query the top 5 students
记一个 @nestjs/typeorm^8.1.4 版本不能获取.env选项问题
MYSQL GROUP_ The concat function realizes the content merging of the same ID
Cf:c. the third problem
朝招金安全吗 会不会亏损本金
Intensive learning weekly, issue 52: depth cuprl, distspectrl & double deep q-network
[groovy] XML serialization (use markupbuilder to generate XML data | create sub tags under tag closures | use markupbuilderhelper to add XML comments)
FFT learning notes (I think it is detailed)