游戏开发论坛

 找回密码
 立即注册
搜索
查看: 4545|回复: 17

网络位置同步问题

[复制链接]

17

主题

59

帖子

59

积分

注册会员

Rank: 2

积分
59
发表于 2008-9-25 12:16:00 | 显示全部楼层 |阅读模式
关于网络位置同步,我有一个想法,当玩家开始移动时,本地客户端以一定的频率向服务器发送封包
本地的所有的移动,转向,跳跃交给物理去模拟。服务器接到封包后,向附近的远程客户端广播这个封包。
当远程客户端收到这个封包后,物理模块会以当前包的中输入(A,D,S,W)来模拟角色运动,直到下一个包到来。
这样的话,正常情况下,虽然有一个网络传输的延迟,但公网的延迟一般为150ms左右,对于大部分的网络游戏来说完全可以容忍(射击和赛车类游戏除外),
还需要做预测和插值吗,或者还有必要采用其他的一些同步算法吗?

10

主题

88

帖子

88

积分

注册会员

Rank: 2

积分
88
发表于 2008-9-25 13:01:00 | 显示全部楼层

Re:网络位置同步问题

主机只有你一个,所有非图形引擎的运算都在你那。用户向你发行走等消息,你向他发位置等信息。网络延迟?他死他事。要么保持他的状态,要么使他停在那。呵呵!

10

主题

88

帖子

88

积分

注册会员

Rank: 2

积分
88
发表于 2008-9-25 13:18:00 | 显示全部楼层

Re:网络位置同步问题

如果允许角色叠在一起。那就简单了,各有各行动就行了,也不用你做主机。直接让他把位置,经验等发给你就行了。当然,武器装备等东西还是要你管。要不能让他修改出来了。

17

主题

59

帖子

59

积分

注册会员

Rank: 2

积分
59
 楼主| 发表于 2008-9-25 13:56:00 | 显示全部楼层

Re:网络位置同步问题

具体的发包方式如下,比如按A ,D 两个键表示前后移动,如果按下就发移动包,释放就发停止移动包,如果长按A,D键就每隔0.5s发一次心跳包,转向和跳跃只发开始和结束包。

149

主题

4981

帖子

5033

积分

论坛元老

Rank: 8Rank: 8

积分
5033
QQ
发表于 2008-9-25 15:43:00 | 显示全部楼层

Re:网络位置同步问题

主要的麻烦不是来源于网络延迟,而是来源于网络延迟的不稳定及其变化难以预测……

17

主题

59

帖子

59

积分

注册会员

Rank: 2

积分
59
 楼主| 发表于 2008-9-25 15:56:00 | 显示全部楼层

Re:网络位置同步问题

那么这种不稳定和难以预测会给游戏带来什么样的影响?

10

主题

88

帖子

88

积分

注册会员

Rank: 2

积分
88
发表于 2008-9-25 20:09:00 | 显示全部楼层

Re:网络位置同步问题

没任何影响,我玩过的一些网游都差不多。武侠的,卡的时候就动都不动;赛车的,卡的那个人可以直接穿过你。当然,时间长了会掉。也没什么影响,受影响的只是延迟的那个人。但还有一个网游是例外的,卡的那个人能使其他人看不到怪,等看到怪的时候都让他全杀了。个人觉得这是最糟糕的。

149

主题

4981

帖子

5033

积分

论坛元老

Rank: 8Rank: 8

积分
5033
QQ
发表于 2008-9-25 21:23:00 | 显示全部楼层

Re:网络位置同步问题

倒……假如延时是稳定的,只不过一开始是一个未知数,那么通过几次测量就可以知道延迟,之后的同步考虑好这个延迟就可以了。可现在延迟是不稳定的……

59

主题

984

帖子

1200

积分

金牌会员

Rank: 6Rank: 6

积分
1200
发表于 2008-9-26 00:06:00 | 显示全部楼层

Re:网络位置同步问题

here are some resource may help, though it's about xna, but the theory behind is same:
1. http://www.talula.demon.co.uk/blogindex.html
scroll down to see the networking part talk about network latency and package lost

2.http://creators.xna.com/downloads/?id=107
this is the ms xna network prediction sample,you may not be able to run the sample without installing xna framework, but the document in it is interesting

17

主题

59

帖子

59

积分

注册会员

Rank: 2

积分
59
 楼主| 发表于 2008-9-26 09:31:00 | 显示全部楼层

Re:网络位置同步问题

thank you .
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-21 04:19

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表