0
使用Airconsole,在按下按鈕和在屏幕上查看結果之間存在明顯的延遲。在有關Airconsole available here,的演示文稿中提到,您可以根據來自客戶端的時間戳進行回溯「欺騙」。隱藏Airconsole延遲
有沒有一個簡單的/內置的方式來做到這一點與Unity?我可以看到如何讓服務器和客戶端達成共同的時間戳,但這似乎很棘手,我想知道是否有內置的方法來做到這一點。
使用Airconsole,在按下按鈕和在屏幕上查看結果之間存在明顯的延遲。在有關Airconsole available here,的演示文稿中提到,您可以根據來自客戶端的時間戳進行回溯「欺騙」。隱藏Airconsole延遲
有沒有一個簡單的/內置的方式來做到這一點與Unity?我可以看到如何讓服務器和客戶端達成共同的時間戳,但這似乎很棘手,我想知道是否有內置的方法來做到這一點。
使用getServerTime()函數執行它相當簡單。
在控制器上,發送輸入與消息一起發生的時間戳。在屏幕上,您將所述時間戳與當前的GetServerTime()進行比較,差異是延遲。
控制器:
airconsole.message(AirConsole.SCREEN, {"action": "jump", "ts": airconsole.getServerTime()});
屏幕:
void OnMessage(int from, JToken data) {
if ((string)data ["action"] == "jump") {
long latency_ms = AirConsole.instance.GetServerTime() - (long)data ["ts"];
Debug.Log ("device " + from + " latency: " + latency_ms);
//Jump quicker depending on latency
}
}