close
本篇就做遙控(Remote)部分討論
設計概念如下:
問題:若未經過特殊設計,該遙控效能並不佳,敏感度嚴重不足
原因:手機效能有限 & 本遊戲引擎使用之平台效能不佳
解決方案:
手機端 -> 將訊息隊列送出,避免手機遺漏部分送出指令
由於在手機的「處理觸發訊息」和「網路傳送」分屬兩個Thread
若是觸發訊息太快,例如兩個觸發事件發生在0.001秒之間
則在第一個觸發事件時,處理觸發訊息的thread會忙著handle,而來不及反應第二個觸發事件...
從而第二個觸發事件根本沒被handle
因此我們要減少其handle所需要的時間
即是將其變成只傳送一個「待傳項目」進入一個queue
而讓「網路傳送」的thread於行有餘力之時,
「依序」抓取queue中的事件,依序傳出去
接收端 -> 讓Message由程式內部產生,而非由外部控制
由於每個系統平台接收Windows Message的方式不同
有的程式容易忽略來自於Windows的訊息
最佳的解決方法就是讓程式以自身呼叫DLL的方式
自己產生Message,從而自身比較容易收到
全站熱搜