作者moremusic (不要追尋愛 而要去愛)
看板GameDesign
標題Re: [程式] Socket如何寫得漂亮
時間Mon Aug 8 14:23:09 2011
不要每個frame一直送input的目前狀態給host
在輸入狀態變化的瞬間送就好
host也只要送有變更的資料給client就可以
寫網路程式的重點就是
資料量愈少愈好
呼叫socket api的次數愈少愈好
※ 引述《fasthall (Xen)》之銘言:
: 之前寫過比較完整的連線遊戲是一個類似炸彈超人的遊戲
: 當時寫法是host不斷接收其他玩家的封包
: 其他玩家一直傳目前的鍵盤input給host
: 由host處理完每個玩家和遊戲世界的邏輯後
: 回傳目前遊戲世界狀況給其他玩家
: 當時用一般網路測過並沒有頻寬和lag的問題
: 但是今天我用同樣的概念寫一個android的遊戲
: 並且使用3g測試
: 發現在開始傳封包前ping都低於70ms
: 開始傳之後ping就衝到1000ms左右
: 想請問的是有沒有正規或一般化的遊戲socket架構?
: 謝謝
--
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 124.155.181.21
推 fasthall:感謝這篇和上篇的推文 今天加了許多改進 讓連線更順暢了 08/08 18:33
推 cowbaying:可以試玩嗎? 08/08 19:27
推 fasthall:還沒寫完啊XD 08/08 20:50
→ rexrainbow:請問"在輸入狀態變化的瞬間送"這個方式下如何確保資料 08/09 11:13
→ rexrainbow:同步呢? 08/09 11:13
→ Splash5:timestamp or framecount? 08/09 15:10