คุณสามารถขอรับข้อมูลการติดตามได้จากแอป VTube Studio iPhone ข้อมูลนี้รวมถึงรูปร่างผสมผสาน การหมุนศีรษะ ตำแหน่งศีรษะ และอื่นๆ ข้อมูลถูกร้องขอและส่งผ่าน UDP
แอปอย่าง VSeeFace และ VBridger ใช้สิ่งนี้
คุณต้องมี iPhone หรือ iPad ที่ใช้ VTube Studio ตรวจสอบให้แน่ใจว่าตัวเลือก "3rd Party PC Clients"
เปิดอยู่ ทางด้านล่างของแท็บการตั้งค่าแรก นี่เป็นการเริ่ม ฟัง UDP บน iPhone และตอนนี้แอปพร้อมที่จะส่งข้อมูลให้คุณผ่านเครือข่ายท้องถิ่นเมื่อคุณร้องขอ
คุณสามารถขอส่งข้อมูลการติดตามได้สูงสุด 10 วินาที ในการทำเช่นนั้น ให้ส่งเพย์โหลดสตริงต่อไปนี้ไปยัง iPhone (พอร์ต 21412
หรืออะไรก็ตามที่แสดงในแอป iOS) ผ่าน UDP:
{
"messageType" : " iOSTrackingDataRequest " ,
"time" : 2.5 ,
"sentBy" : " MyApp " ,
"ports" : [ 11125 , 11126 ]
}
ช่อง time
จะบอกแอป iOS ว่าต้องส่งข้อมูลนานแค่ไหน ค่าที่อนุญาตอยู่ระหว่าง 0.5 and 10
วินาที ตรวจสอบให้แน่ใจว่าได้ส่งคำขอนี้ซ้ำๆ ทุกสองสามวินาทีเพื่อรับข้อมูลต่อไป ตัวอย่างเช่น คุณสามารถส่งหนึ่งคำขอต่อวินาทีโดยตั้ง time
ไว้ที่ 5
เพื่อให้ข้อมูลการติดตามมาอย่างต่อเนื่อง เมื่อเสร็จแล้ว ให้หยุดส่งคำขอ
เมื่อแอพ iOS ได้รับคำขอนี้ แอพจะส่งแพ็กเก็ตข้อมูล UDP ไปยัง IP ที่ส่งคำขอ
ข้อมูลจะถูกส่งไปยังพอร์ตที่คุณระบุไว้ในคำขอ ดังนั้นตรวจสอบให้แน่ใจว่าคุณได้เปิด UDP server
บนพอร์ตเหล่านี้ คุณต้องแสดงรายการพอร์ตอย่างน้อยหนึ่งพอร์ตและสามารถแสดงรายการได้สูงสุด 32 พอร์ต เพื่อให้คุณสามารถมีแอพหลายตัวที่ทำงานบนพีซีเครื่องเดียวซึ่งทั้งหมดจะได้รับข้อมูลบนพอร์ตที่ต่างกัน
ช่อง sentBy
ควรมีชื่อแอปของคุณและปัจจุบันใช้สำหรับการบันทึกเท่านั้น ต้องมีความยาวระหว่าง 1 ถึง 64 อักขระ
คุณจะได้รับข้อมูลต่อไปนี้ทุกเฟรม (โดยทั่วไปจะอยู่ที่ 60 FPS เว้นแต่จะมีความล่าช้าในแอพ iPhone):
รายละเอียดเกี่ยวกับเพย์โหลดที่แน่นอนมีอยู่ที่นี่: Payload Definition
อาจมี การเพิ่ม ฟิลด์บางฟิลด์ลงในเพย์โหลดนี้ในอนาคต ดังนั้น ตรวจสอบให้แน่ใจว่าโค้ดการดีซีเรียลไลเซชันของคุณสำหรับเพย์โหลดไม่ล้มเหลวเมื่อพบฟิลด์ที่ไม่รู้จัก
สามารถดูคำอธิบายโดยละเอียดของ Blendshape ทั้งหมดได้ที่นี่: Apple iOS Blendshape Info
พื้นที่เก็บข้อมูลนี้มีโครงการ Unity ตัวอย่างที่แสดงวิธีขอข้อมูลการติดตาม
ตรวจสอบให้แน่ใจว่าได้แทนที่ <YOUR-IPHONE-IP-HERE>
ในคอมโพเนนต์ VTubeStudioReceiveDataExample
ด้วย IP ของ iPhone/iPad ของคุณ หากไม่สามารถเชื่อมต่อได้ ให้ตรวจสอบการตั้งค่าไฟร์วอลล์/โปรแกรมป้องกันไวรัส
ไฟล์ | คำอธิบาย |
---|---|
VTSARKitBlendshape.cs | Enum พร้อมการผสมผสาน iOS ทั้งหมด 52 รูปแบบ |
VTubeStudioUDPDataRequest.cs | เพย์โหลดสำหรับคำขอที่คุณต้องส่งไปยังแอป iOS |
VTubeStudioRawTrackingData.cs | เพย์โหลดที่คุณจะได้รับจากแอป iOS ที่มีข้อมูลการติดตามและอื่นๆ อาจมี การเพิ่ม ฟิลด์บางฟิลด์ลงในเพย์โหลดนี้ในอนาคต ดังนั้นโปรดตรวจสอบให้แน่ใจว่ารหัสการดีซีเรียลไลซ์ของคุณสำหรับเพย์โหลดจะไม่ล้มเหลวเมื่อพบฟิลด์ที่ไม่รู้จัก |
VTubeStudioBlendshapeDataReceiver.cs | ส่วนประกอบที่คุณสามารถใช้ในแอพของคุณเพื่อขอข้อมูลและรับการแจ้งเตือนเมื่อมีข้อมูลใหม่มาถึงจากแอพ iOS หรือกดปุ่มลัดบนหน้าจอ |
Example/VTubeStudioReceiveDataExample.cs | ส่วนประกอบตัวอย่างที่ใช้ VTubeStudioBlendshapeDataReceiver เพื่อขอข้อมูลแล้วแสดงข้อมูล |