mem*_*elf 2 android synchronization google-chrome
我正在考虑使用多个Android设备(例如Nexus 7平板电脑)来构建照片/视频墙,我想知道a)是否可能和b)如何同步所有这些设备的显示.谷歌展示了其Chrome赛车实验,因此很明显可以在许多设备上同步显示.
所以这是我的问题:
我对建议很好奇!
编辑: blinkendroid是迄今为止我发现的唯一可以完成这项工作的应用程序.优点?缺点?备择方案?
从技术上讲,屏幕不是共享的,游戏状态是共享的,手机都会根据他们的理解呈现状态.
关于Chrome Racer的一些背景知识.我们在这里进行了案例研究 ,但它没有完全涵盖您提出的问题.
用于Racer通信的主要技术是WebSockets.WebSockets允许一个客户端近乎实时地从服务器推送和接收消息.
Racer通过为游戏提供唯一ID来启动游戏会话,并向用户保持打开Web Socket.随后加入游戏的任何人都被告知要使用相同的ID,服务器也会为他们创建一个Web Socket.现在服务器知道所有参与者.
当游戏开始时,向所有参与者广播消息,要求他们准备好开始,在此阶段,服务器正在计算向所有客户端往返消息所需的时间.它这样做可以解决设备之间的任何延迟,从而尝试补偿较慢客户端的延迟.
现在,服务器知道游戏可以正常启动的客户端.当用户正在玩他们的游戏时,他们的命令通过Web套接字被推送到服务器.服务器将此消息中继到所有连接的客户端(如卫星那样),并且它为连接到会话的每个用户执行相同的操作.这就是游戏状态的共享方式.
当每个客户端从服务器接收到向其广播的命令时,它更新其游戏的内部表示并将其呈现给屏幕.
这就是它.
实际上,我们希望使用WebRTC数据通道,因为它可以减少数据到达客户端所需的跳数.在我们今天的解决方案中,客户端ping服务器并且服务器中继消息(2跳),如果我们可以将其直接发送给其他用户(这是WebRTC的目标),我们可以将延迟减少一半.不幸的是,WebRTC在当时无法将其作为解决方案进行部署.
| 归档时间: |
|
| 查看次数: |
3785 次 |
| 最近记录: |