Practical overview
When it fits
Use Openvhead when you want to experiment with camera-driven VTuber character animation inside a Windows Unity project, or adapt its documented controller setup for a blend-shape model.
Who it is for
- VTubers and creators who want to drive a Unity-based 3D character from an RGB camera.
- Unity users who want to adapt the scene for a custom blend-shape character.
Documented uses
- Capture head position, orientation and facial-expression features from camera video.
- Send extracted features from Python to Unity through the project’s C# socket server.
- Smooth captured motion and control facial expressions on a virtual character.
- Configure a custom FBX model with blend shapes for the project’s controller setup.
Requirements & limits
The project is publicly available on GitHub and identifies its license as MIT.
- The documented setup depends on Windows, Python 3.6.x and Unity 2018.4.x.
- It requires an RGB camera and the opencv-python and dlib packages.
- The README describes two configured character models and a path for adding models with blend shapes.
- The README recommends stopping the project with Unity’s Play button rather than the Stop Thread control.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Set up and start Openvhead in Unity
Run the camera-driven head-capture project in its Unity scene.
Before you start
- Windows PC and RGB camera, including a built-in webcam or external USB camera
- Python 3.6.x and Unity 2018.4.x
- opencv-python and dlib; the README lists tested versions 3.4.0 and 19.7.0
Steps
Configure the Python environment and install the required packages, selecting package builds appropriate to the system.
Clone the repository or download a release, then open the project folder in Unity.
In Unity, add MainScene from Assets > scenes to the Hierarchy and remove the Untitled scene.
Press Play, then select Start Thread in the UI to start the C# socket server and Python camera-processing client.
To stop, press Unity’s Play button again; the README advises against using Stop Thread because it may cause bugs.
Expected outcome
The Python client processes camera video and sends extracted features to Unity to animate the virtual character.
Guide limitations
- The instructions specify Windows, Python 3.6.x and Unity 2018.4.x.
- The README warns that Stop Thread may cause bugs.
Add a blend-shape character model
Add a custom 3D model to the Unity scene using the project’s documented controller setup.
Before you start
- A 3D model with blend shapes, exported as an FBX file
- The Openvhead Unity project
Steps
Import the FBX into Unity and drag the model into the main scene.
If it is a prefab asset, unpack the prefab in the Hierarchy.
Copy the ParameterServer (Model 2) and HeadController (Model 2) GameObjects from the KizunaAI (Model 2) hierarchy into the new model’s hierarchy.
Add the Blend Shapes Controller component to the mesh GameObject and set its values for the blend shapes to control.
Unhide the new model and hide the other character models.
Expected outcome
The custom model is configured in the scene for Openvhead’s character-control setup.
Guide limitations
- The model must have blend shapes.
- Blend-shape numbering starts at 0.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 17 October 2026
- Original website title
- TianxingWu/OpenVHead · Official homepage title · retained in its source language

