silverlight游戏时间同步系统

原创 2010年10月16日 15:57:00

在很多网络游戏中,一个时间同步系统是一切的基础,可见它对网络游戏开发中是多么的重要。silverlight网游开发也是同样须要这么一个必要。

本示例核心通信技术使用的是DYCom网络通信组件。由http://FunSL.com站长开发。

本示例的同步现实思想是通过时间截取换算出消息生命周期,然后通过公式:服务时间=服务时间(客户端接收)+客户端当前时间-消息发送时刻/2;

在客户端的时钟里不断申请服务器端验证服务器与客户端之间的时间差,一但服务端发现时间差大于最大容许值时,服务器端会要求客户端进行对时操作。

下图是两个silverlight客户端的对时效果,左边是系统时间,右边两个silverlight时间值误差都在100ms以内。

image

PS:登陆可从本附件中下载源代码。

欢迎您参与更多关于此话题的讨论,本文原创开心银光社区.地址为:http://funsl.com

Unity3D-游戏ARVR进阶课程 - 动画系统

本套课程中我们会深入学习Unity中的Mecanim动画系统。包括动画剪辑、动画控制器、动画状态机等相关知识,也会有人形动画、IK 动画、性能优化等内容。是一套非常全面且深入的动画教程。
  • 2016年06月30日 16:46

【网络游戏专题】时间同步装置

    在网络游戏中,有一个最基本的需求是,如果让一个玩家的动作(比如行走)即时地、流畅地在其它的游戏地理位置相邻的玩家的屏幕上显现,如果是在局域网内,这个不是什么大不了的问题,但是如果游戏玩家...
  • zhuweisky
  • zhuweisky
  • 2008-03-06 16:53:00
  • 2160

网络游戏前后端时间同步

网络游戏中会涉及到多个终端,各个终端以及服务器的系统时间都会存在一定的差异。 如何在在游戏中处理好这种差异呢? 一 使用前端时间 直接获取终端的时间,用来计时,这种方式是很多单机游戏使用的方式。 ...
  • xufeng0991
  • xufeng0991
  • 2015-01-29 20:05:19
  • 2081

silverlight开发游戏中的大坑

博主在使用silverlight在开发游戏中碰到的大坑,给大家分享以防重蹈覆辙。
  • rcfalcon
  • rcfalcon
  • 2014-06-24 11:50:30
  • 2516

我是手游开发者(三)客户端与服务器时间同步问题

为防止用户修改当前时间,造成游戏逻辑混乱,客户端使用的时间为服务器时间。...
  • u010094934
  • u010094934
  • 2016-11-21 23:57:34
  • 1283

C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial 前38节)

  • 2009年11月08日 21:06
  • 15.67MB
  • 下载

C#开发WPF/Silverlight动画及游戏系列源码(Part1)

  • 2010年06月23日 09:12
  • 29.88MB
  • 下载

C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(八) 完美实现A*寻径动态动画

    本节将紧接着上一节,在它的基础上实现鼠标点击动态创建完美的A*寻路动画。(模拟游戏中人物的真实移动,这次可是有障碍物的,可以说基本上完成了人物移动引擎的一半了呢)    首先,在上一节的代码前...
  • alamiye010
  • alamiye010
  • 2009-05-29 20:18:00
  • 6054

C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(二)让物体动起来②

    第二种方法,CompositionTarget动画,官方描述为:CompositionTarget对象可以根据每个帧回调来创建自定义动画。其实直接点,CompositionTarget创建的动...
  • alamiye010
  • alamiye010
  • 2009-05-23 09:33:00
  • 9565

网络游戏中的(低精度)时间同步

对于网络游戏来说,从物体的移动、攻击到最基础的计时等等,都需要客户端与服务器保持时间的相对一致,那么服务器与客户端同步便是一个必须要解决的问题。通常,网络游戏都会利用心跳来进行同步,那么当客户端并不需...
  • u010832643
  • u010832643
  • 2014-10-16 21:56:17
  • 1953
收藏助手
不良信息举报
您举报文章:silverlight游戏时间同步系统
举报原因:
原因补充:

(最多只允许输入30个字)