Anda dapat meminta untuk menerima data pelacakan dari aplikasi iPhone VTube Studio. Data ini mencakup bentuk campuran, rotasi kepala, posisi kepala, dan lainnya. Data diminta dan dikirim melalui UDP.
Aplikasi seperti VSeeFace dan VBridger menggunakan ini.
Anda memerlukan iPhone atau iPad yang menjalankan VTube Studio. Pastikan opsi "3rd Party PC Clients"
aktif. Letaknya di bagian bawah tab pengaturan pertama. Ini memulai pendengar UDP di iPhone dan aplikasi sekarang siap mengirimi Anda data melalui jaringan lokal saat Anda memintanya.
Anda dapat meminta agar data pelacakan dikirim hingga 10 detik. Untuk melakukannya, kirimkan payload string berikut ke iPhone (port 21412
atau apa pun yang ditampilkan di aplikasi iOS) melalui UDP:
{
"messageType" : " iOSTrackingDataRequest " ,
"time" : 2.5 ,
"sentBy" : " MyApp " ,
"ports" : [ 11125 , 11126 ]
}
Bidang time
memberi tahu aplikasi iOS berapa lama waktu pengiriman data. Nilai yang diperbolehkan adalah antara 0.5 and 10
detik. Pastikan untuk mengirimkan permintaan ini berulang kali setiap beberapa detik untuk terus menerima data. Misalnya, Anda dapat mengirim satu permintaan per detik dengan time
yang disetel ke 5
sehingga data pelacakan terus berdatangan. Setelah selesai, berhentilah mengirim permintaan.
Saat aplikasi iOS menerima permintaan ini, aplikasi tersebut akan mengirimkan paket data UDP ke IP yang mengirimkan permintaan tersebut.
Data akan dikirim ke port yang Anda cantumkan dalam permintaan, jadi pastikan Anda memiliki UDP server
yang terbuka di port tersebut. Anda harus mencantumkan setidaknya satu port dan dapat mencantumkan hingga 32. Ini agar Anda dapat menjalankan beberapa aplikasi di satu PC yang semuanya menerima data di port berbeda.
Bidang sentBy
harus berisi nama aplikasi Anda dan saat ini hanya digunakan untuk logging. Panjangnya harus antara 1 dan 64 karakter.
Anda akan menerima data berikut setiap frame (biasanya pada 60 FPS kecuali ada kelambatan di aplikasi iPhone):
Detail mengenai payload yang sebenarnya dapat ditemukan di sini: Payload Definition
Beberapa bidang mungkin ditambahkan ke muatan ini di masa mendatang, jadi pastikan kode deserialisasi untuk muatan tersebut tidak gagal ketika ditemukan bidang yang tidak diketahui.
Penjelasan rinci tentang semua blendshape dapat ditemukan di sini: Apple iOS Blendshape Info
Repositori ini berisi contoh proyek Unity yang menunjukkan cara meminta data pelacakan.
Pastikan untuk mengganti <YOUR-IPHONE-IP-HERE>
di komponen VTubeStudioReceiveDataExample
dengan IP iPhone/iPad Anda. Jika tidak dapat terhubung, periksa pengaturan firewall/antivirus Anda.
Mengajukan | Keterangan |
---|---|
VTSARKitBlendshape.cs | Enum dengan semua 52 bentuk campuran iOS. |
VTubeStudioUDPDataRequest.cs | Payload untuk permintaan yang harus Anda kirim ke aplikasi iOS. |
VTubeStudioRawTrackingData.cs | Payload yang akan Anda terima dari aplikasi iOS yang berisi data pelacakan dan banyak lagi. Beberapa bidang mungkin ditambahkan ke muatan ini di masa mendatang, jadi pastikan kode deserialisasi untuk muatan tersebut tidak gagal ketika ditemukan bidang yang tidak dikenal. |
VTubeStudioBlendshapeDataReceiver.cs | Komponen yang dapat Anda gunakan di aplikasi Anda untuk meminta data dan mendapatkan pemberitahuan ketika data baru datang dari aplikasi iOS atau tombol pintas di layar ditekan. |
Example/VTubeStudioReceiveDataExample.cs | Contoh komponen yang menggunakan VTubeStudioBlendshapeDataReceiver untuk meminta data dan kemudian menampilkannya. |