HTML5游戏,用户移动概念
我刚开始学习HTML5Canvas和谷歌应用引擎的Channel API 我构建了一个基于等距图的简单游戏演示。现在我想实现角色移动,但我想知道我应该如何实现它 当前演示: 我认为这是如何实施的: 客户端将处理移动。一旦按下箭头键,客户端将进行移动,然后将新的协调发送到服务器,然后将该协调广播给服务器上的其他用户,以更新角色的位置 我想到的问题:HTML5游戏,用户移动概念,html,google-app-engine,canvas,channel-api,Html,Google App Engine,Canvas,Channel Api,我刚开始学习HTML5Canvas和谷歌应用引擎的Channel API 我构建了一个基于等距图的简单游戏演示。现在我想实现角色移动,但我想知道我应该如何实现它 当前演示: 我认为这是如何实施的: 客户端将处理移动。一旦按下箭头键,客户端将进行移动,然后将新的协调发送到服务器,然后将该协调广播给服务器上的其他用户,以更新角色的位置 我想到的问题: 如果我想实现“移动速度”,比如在多快的速度下 例如,用户行走五个正方形。每次移动之间的延迟 将在客户端完成。但这样安全吗?自从 Java脚本很容易编辑
编辑:@nycynik,你说得对,延迟约为200毫秒。我已经在这里测试过了 延迟测试: 这是它将获得的最小延迟。200米相当快。那么可能是我的代码太慢了 我是如何实现整个游戏的
这应该比你得到的更快。这应该是对第一个答案的评论,但它不适合 对于响应时间,您可能无能为力,因为目前网络延迟确实是一个问题。也许你可以在用户体验方面工作。为了让用户“接受”延迟,为什么不添加动画 例如,当用户点击一个箭头键时,马看起来像是在慢慢后退,准备跳跃(在幕后,您通过通道API发送请求)。当你从服务器得到响应时,马就可以完成跳跃并降落到另一个位置
虽然仍然存在延迟问题,但如果延迟不是那么明显,您的用户可能会觉得“可以接受”。至于攻击移动速度,服务器可以保留其最后位置,并根据maxspeed delta变量进行检查-如果在给定时间差内太高,HAXX。您可以分享更多您的操作方法吗?该频道的工作原理应该非常类似于一个套接字,而且速度应该足够快。有了这个模型,我只是想知道移动不是瞬间的会不会被关闭。我只是在我的演示中添加了移动,而且服务器处理移动时会有明显的延迟。也许谷歌的频道API很慢?是的,在尝试之后,这是一个很慢的方法。这是一个有效的解决方案。谢谢