适合实时客户/服务器物理仿真的设计模式?

时间:2011-03-20 17:26:35

标签: java design-patterns implementation

是否存在一些设计模式,这有助于设计 客户端服务器实时物理模拟 ,这需要设计中的一些特定需求(逻辑/代码解耦)因为网络手续如:

  • 在客户端上绘图,而不是发送 关于服务器上的电线和主要模拟逻辑(引擎)的大量数据

  • 服务器上一半的目标代码和一半的客户端(更改部分)来绘制

  • 仅发送不断变化的部分对象(属性)

任何有关Javanio的实施的建议都将非常感激。

感谢,

jibbylala

P.S:我看到很多文章,讨论和伪代码,如何实现解耦,但没有找到任何特别简单的紧凑实现。

1 个答案:

答案 0 :(得分:2)

我强烈建议您阅读Glenn Fiedler关于此主题的article

由于带宽和延迟的限制,实时服务器 - 客户端网络物理是一个具有挑战性的问题。为了缓解这些问题,大多数网络模拟依赖于客户端仅向服务器发送输入,服务器仅发送帧状态之间的差异。与此同时,客户端可以使用客户端预测来预测服务器的世界状态。不幸的是,由于多个客户端的操作之间的交互可能在客户端预测中产生差异,因此该模型是不完美的。但是,处理这些差异是您必须解决的问题的另一部分......