[发明专利]CS架构下的物理计算网络同步方法无效
| 申请号: | 201010149174.6 | 申请日: | 2010-04-16 |
| 公开(公告)号: | CN101841538A | 公开(公告)日: | 2010-09-22 |
| 发明(设计)人: | 朱德栋 | 申请(专利权)人: | 上海亚图软件有限公司 |
| 主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L29/08;H04L7/00 |
| 代理公司: | 上海东亚专利商标代理有限公司 31208 | 代理人: | 罗习群 |
| 地址: | 200241 上海市闵*** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | cs 架构 物理 计算 网络 同步 方法 | ||
技术领域
本发明涉及一种CS架构下的网络同步技术,特别涉及在有物理计算情况下的网络同步。
背景技术
物理引擎是由计算机模拟牛顿力学模型的一套完整API。它使用物体的质量、速度、受力情况等信息,来计算一定时间里物体的运动状态。在多个物体的场景中,利用碰撞检测判断物体之间是否有接触,从而对受力物体施加力冲击,以模拟真实情况下的物理碰撞。
CS架构表示客户端与服务端架构,可以将服务部署于用户PC(客户端)和大型服务器(服务端),客户端可以向服务端发送数据和请求,由服务端处理后再返还给客户端。一般的CS架构下的一个服务仅涉及一个客户端,不同的客户端之间相互独立,不存在网络同步问题。而在另一些领域,客户端之间需要通过服务端进行交互,并且需要保证时间一致性,例如网络游戏、网络会议等,那么客户端之间就需要进行同步。
目前,CS架构下的网络同步在网络游戏领域应用十分广泛,客户端主要发送一些用户的操作数据,由服务端进行计算得到状态数据,然后转发给这个服务涉及的所有客户端,服务的同步范围因应用的不同而有差异。通常情况下,服务端计算的状态数据计算量很小。
随着物理引擎在单机游戏领域的使用越来越广泛,我们逐渐体会到物理引擎给玩家带来的震撼和真实的体验。物理引擎也开始在网络游戏中开始了应用。对于现有的CS架构,服务器端无法承受如此大量的计算任务。
1.物理计算属于实时计算,需要消耗大量处理器的计算能力。
2.物理引擎中的非刚体计算,涉及的数据量很大,不适合通过网络传输同步。
3.物理计算的初始状态会对后续计算产生累积的蝴蝶效应,对用户的交互有影响,同步要求很高。
因此,本文中涉及的技术,需要就以上几点进行改进,在有物理计算的情况下,解决CS架构下的一些同步问题。
发明内容
物理计算的特点是实时性较高、非刚体计算涉及数据量很大、初始条件的设置对后续计算结果影响很大。针对前两点,物理计算需要放在客户端进行。对于第三点,需要有精确的同步性。
为了兼顾计算的效率和同步的精确,对CS架构下含有物理计算的交互服务,针对物理计算相关部分和客户端服务端之间的通信流程做改进。
服务端不进行物理计算,仅负责接受客户端数据,并同步到其它客户端。客户端对用户控制的物体进行物理计算,将其状态发送给服务端。
本发明是在客户端和服务端具备双向通讯机制,在客户端进行物理计算,并发送数据;服务端只接收数据,并据此发送同步信号,不进行物理计算;客户端和服务端双向通讯实施同步的步骤,其中对于受控物体是:
(1)客户端接受客户受控物体操作;
(2)对受控物体进行物理量计算;
(3)更新场景中所有物体物理信息;
(4)向服务端发送受控物体状态数据;
(5)服务端接收客户端发送的受控物体状态的数据;
(6)服务端更新镜像物体状态数据;
(7)服务端向客户端发送镜像物体状态数据;
(8)客户端接收服务端的同步信息;
(9)选择更新;
(10)结束;
其中对于非受控物体,同步策略为“碰撞交换控制权”,即由客户端的受控物体撞击非受控物体获得物体的数据“发送权”,其步骤是:
(1)对非控受物体进行物理量计算;
(2)检测碰撞;
(3)如有碰撞,检测碰撞类型;如无碰撞,直接更新“发送权”;
(4)如有碰撞,碰撞类型是一般物体,则向服务端发送碰撞信息;如碰撞是其他客户端受控物体,则直接更新发送权;
(5)检测有、无“发送权”,如无,直接更新发送权;如有,则向服务端发送物体的物理信息;
(6)服务端接收碰撞信息;
(7)更新用户“发送权”;
(8)服务端接收客户端物体的物理信息;
(9)检测“发送权”一致否?
(10)如不一致,则向客户端发送更新的“发送权”;
(11)如一致,则更新物体物理信息后,再向客户端发送更新的“发送权”;
(12)结束。
本发明的优点是,服务端节省了大量物体物理量计算,加快了实时控制的速度。
附图说明
图1客户端与服务端同步示意图;
图2客户端与服务端交换通信流程图;
图3非受控物体“发送权”更新策略流程图。
具体实施方式
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海亚图软件有限公司,未经上海亚图软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010149174.6/2.html,转载请声明来源钻瓜专利网。





