Category: Win

PowenKo, Win Mobile 7 Tutorial 100 , XNA, Network,

首先XNA Network 通訊協定使用Reliable UDP,也就是一種可信賴的UDP架構,也是國外 常看到的network lib所使用的協定。國內我看過的lib大多是用TCP,可能跟遊戲類型有關, 國外的遊戲大宗以FPS為主,在傳輸上求快不求準,國內以MMORPG為大宗,傳輸的可靠性 是首要考量。TCP與UDP協定有太多正反的論戰,這不是本篇的重點,事實上良好的交互運用, 也能達到不錯的效果。通常使用UDP作為協定的lib,都會實作四種傳輸方式; (1)不可信賴、沒次序的傳送。 (2)可信賴、沒次序的傳送。 (3)不信賴、有次序的傳送。 (4)可信賴、有次序的傳送 顧名思義,可信賴就是會當一段時間對方收不到時就會重發直到送達目的地(所謂可信賴就是不保證的意思,也就是說並不保證在所有情況下封包一定會送達,不過正常情況下是一定會送達)。次序當然就代表傳送的先後次序是被固定的,才不會有先送後收的情形。 如果你要用到第四個選項,表示做的事情不會少於TCP協定,可以視不同需求來選擇採用的方式。 在XNA 2.0裡面,Senddata參數裡面就可以設定:SendDataOptions.None、SendDataOptions.Reliable、SendDataOptions.InOrder、SendDataOptions.ReliableInOrder。 詳細網路使用範例可以看官網的兩個範例 Client/Server P2P…