「無料」VRCFaceTrackingGO - VRCFaceTrackingを参考したGolangでの再実装
- ダウンロード商品¥ 0



「VRCFaceTrackingGo」 VRCFaceTrackingのロジックを参考しつつ、独自の考え方によってGolangで再実装したVRCHAT用フェイストラッキング送信用のプログラム。 Windows・Linux・Macos対応 自分用かつオープンソースであるため無保証であることをご注意ください 独自の思想を基づいてるため、本家との機能と動作は完全に同じではありません Windows以外の実行ファイルやパッケージはGithubにてダウンロードしてください https://github.com/SayukiDev/VRCFaceTrackingGO/releases
使い方
1. VRCFaceTrackingGoをダウンロード&インストールする 2. VRCFaceTrackingGoを起動する 3. 使いたいモジュールのロード順を最上位にする 4. モジュールをリロード P.S. ウィンドウを閉じることでUIのレンダリングが停止して負荷を下げられるため、設定終わったら閉じることをおすすめ
ソースコード
https://github.com/SayukiDev/VRCFaceTrackingGO/blob/master/README.ja.md
不具合の報告
不具合やバグの報告はIssuesにて提出お願いします https://github.com/SayukiDev/VRCFaceTrackingGO/issues
モジュールについて
VRCFaceTrackingGOはVRCFaceTrackingのモジュールシステムと全く異なる仕組みで実装されてるため、VRCFaceTrackingのモジュールは現時点で使用できません。 一部よく使われてるモジュールはビルドインとして移植されてる、もしモジュールの要望があればIssuesにて提出お願います。 ビルドインモジュールのリスト: https://github.com/SayukiDev/VRCFaceTrackingGO/blob/master/README.ja.md#%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AB なお、VRCFaceTrackingGOのモジュールシステムは自由度を最優先にしてるため、ドライバーとしてVRCFaceTrackingとの互換レイヤーを技術的に実装可能、実験的に進める予定。
LLM の使用について
VRCFaceTrackingGoは自分用を想定したため、開発コストを削減するためにLLMによるコード生成を積極的に使っており、コードはコミットする前に一通りチェックしてますが、気になる場合は各自レビューすることをおすすめします
ライセンス
本プロジェクトは自由ソフトウェアであり、GNUアフェロ一般公衆ライセンス を基づき発行しております、 被配布者(ユーザー)には使用の自由・二次開発の自由・二次配布(販売含む)の自由などの自由が保証されます。 ただし二次配布の場合必ず同じGNUアフェロ一般公衆ライセンス で発行するよう義務付けられます、 そして二次被配布者には本プロジェクトが被配布者に与えた自由と同じ自由が与えられます、 それらの自由を制限・干渉するあらゆる行為は一切認められません。
なぜ車輪の再発明をするのか
1. 本家のVRCFaceTrackingはすでにかなり完成されてるものの、DLLベースのモジュールシステムであるため稀にクラッシュする(6.0.0にてモジュールを別プロセスに移したことでクラッシュが改善されてるけれども、モジュールクラッシュしたあとの処理はまだ不充分) 2. 本家はC#に強く依存するためほかの言語によるモジュールの開発は極めて困難な状態にある。 3. 本家はもともとWindows向けに設計されてるため、6.0.0にてマルチプラットフォーム対応を実装したものの、モジュールがどのプラットフォームに対応しているかを明示的に判別する手段がない 4. 本家のモジュールシステムは明示的なロード順がないため、どのモジュールがロードされるかなどの情報が不透明、6.0.0にてモジュールを指定可能になったことで改善されたものの、複数のモジュールをわけて使ってる場合依然として不便 一般なエンドユーザーにとってこれらは特に問題にはならないかもしれないけれども、私は窮屈だと感じたため、自分用にGolangで再実装したのがこのVRCFaceTrackingGo



