作者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
1F:推 fasthall:感谢这篇和上篇的推文 今天加了许多改进 让连线更顺畅了 08/08 18:33
2F:推 cowbaying:可以试玩吗? 08/08 19:27
3F:推 fasthall:还没写完啊XD 08/08 20:50
4F:→ rexrainbow:请问"在输入状态变化的瞬间送"这个方式下如何确保资料 08/09 11:13
5F:→ rexrainbow:同步呢? 08/09 11:13
6F:→ Splash5:timestamp or framecount? 08/09 15:10