精华帖 (0) :: 良好帖 (2) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-06-01
报名报名!!非常感兴趣...
ruby/rails 基本都属于入门,HTML5也非常有兴趣~ Http Streaming 一直要在项目中用, 现在用的是pushlet解决方案 这回来试试 WebSocket |
|
返回顶楼 | |
发表时间:2011-06-01
knwang 写道
Mike Subelsky的HTML5教程 的教程非常棒!!! |
|
返回顶楼 | |
发表时间:2011-06-03
几天没来, 没看到大家的回复。。 这个活动已经结束是在上周末(5/28)进行的。
我就在这里总结一下,因为大家基本上是独立开发的, 我就主要讲下我的经验
开始的时候我花了很多时间搭配Faye的后端,按照Ryan Bates的Railscast,Faye的后台服务器是要和web server分开的, 如果一定这样的话对于Deploy在Heroku上面就比较麻烦, 因为Heroku是Rack结构只看config.ru文件的。 我发现其实Faye可以很方便的当作中间件(middleware)来用, 只要把这个加在Rack/Rails/Sinatra的配置文档里就好了
use Faye::RackAdapter, :mount => '/faye', :timeout => 45
然后 /faye 就会被引导到faye后台。
有点注意的是Faye要求服务器是Thin, 所以本地跑的时候不能用"Rails Server" 或者 Shotgun等等, 而要用
rackup config.ru -s thin -E production
当然要装相应的gems.
蛇的控制我是参照了Paul Jensen的代码。。 我把他的前台Javascript重新模块话了下, 建立了几个模型更好的适应多蛇的游戏。 画图用的是HTML5的Canvas. 协调同步这方面我是捕捉键盘指令后立即把本地的状态通过Faye的web client (javascript code)通过Faye后台发到各个客户端, 这些客户端通过Javascript的代码其实也是实现反应器的模式, 一旦接到更新的数据立刻本地更新重画。 我的代码里面设置了每1/10秒更新,但很容易改。
Faye的客户端运输协议支持其实非常强大,Faye会依照这个顺序根据你的客户端选择
最后,我的代码在这里。 大家可以看看,下来到本地运行。 我实现了红绿两条蛇对打。玩的时候要同时开两个窗口, 然后在一个里面点"Run my snake", 在两个窗口例可以同时看到蛇开始动了。 在另一个窗口里面也点"Run my snake"就会每个窗口里面出现第二条蛇。 当然游戏开始的程序可以做的在好点, 比如一个人坐下等待,两人都确认后游戏在开始。。 这次就没每时间弄了。 主要的代码在snake.js里面,我建立的模型应该很容易扩展到多于两条蛇的情景。欢迎继续开发。
因为时间有限,肯定Bug多多, 谢谢提交补丁。 有问题我会尽力回答。
|
|
返回顶楼 | |
发表时间:2011-06-03
HTML5确实很强大, 看这里有只用HTML5实现的网页游戏
http://playbiolab.com/
witcheryne 写道
knwang 写道
Mike Subelsky的HTML5教程 的教程非常棒!!!
|
|
返回顶楼 | |
发表时间:2011-06-03
knwang 写道
HTML5确实很强大, 看这里有只用HTML5实现的网页游戏
http://playbiolab.com/
witcheryne 写道
knwang 写道
Mike Subelsky的HTML5教程 的教程非常棒!!!
恩~ 这个玩过, 开头的动画效果相当震撼!!! |
|
返回顶楼 | |
发表时间:2011-06-06
期待下次活动。
|
|
返回顶楼 | |
发表时间:2011-06-13
不错的学习机会,希望以后多多组织。
|
|
返回顶楼 | |
发表时间:2011-06-16
最后修改:2011-06-16
knwang 写道
异步服务器: 客户1:我要找xxx资料 接线员: 知道了。挂电话吧, 找到我给你打回去 。 。。 那谁(后台服务),帮我找xxx
|
|
返回顶楼 | |