A Godot renderer for OpenSeeFace. Special thanks to the V-Sekai team for their help with .vrm
importing.
The initial implementation was heavily based on OpenSeeFaceSample.
All models should work as long as they are in .glb
or .vrm
format. .gltf
has not been tested but might work. .scn
files created with Godot should all import correctly as well.
-
Python 3.6 - Python 3.9 (at time of writing,
onnxruntime
isn't compatible with Python 3.10) -
python3-pip
andpython3-venv
are installed -
For Ubuntu-based distros run:
sudo apt install python python3-pip python3-venv
-
For Arch-based distros run:
pacman -Syu python python3-pip python3-venv
- Download the latest release
- Unzip all files into a directory (do not move any of the files)
- Run the
.exe
on Windows - Start the facetracker from within the application
- Download the latest release
- Unzip all files into a directory (do not move any of the files)
- Run
chmod +x <binary name>
in a terminal to make the binary executable - Run the binary
- Start the facetracker from within the application
Enter
or Space
: Reset face tracking offsets
Control
+ Left Click
: Spin the model
Control
+ Right Click
: Move the model
Control
+ Scroll
: Zoom the model in or out
Control
+ Middle Click
: Reset the model's transform
Escape
: Toggle the UI
- Download Godot 3.4
- Clone this project and load it in the editor
- Clone the OpenSeeFace face tracker
- Move the
OpenSeeFace
repo into$PROJECT_ROOT/export/OpenSeeFaceFolder
- Run the project from the editor
- If running the project on Linux, the facetracker is controlled via shell scripts in
resources/scripts
. If the tracker doesn't start correctly, it is a good idea to start debugging from there - Start face tracking
- To export your own release binaries, you will need to use my patched version of Godot 3.4. Precompiled release templates can be downloaded from my Godot fork (or compiled using
scons platform=<your platform> target=release tools=no module_gltf=yes -j<number of threads, no space between j>
A Discord server is available here if you need help, like to contribute, or just want to chat.