今年四月份的时候写过一系列文章 通过运动学模拟来演示碰撞检测算法优化的 javascript 实现(目录),现在有点空闲时间了,把那个例子稍微改了一下,把所有球都控制在一个密闭空间,然后通过旋转手机控制球们的移动(利用 html5 的 deviceapi),使用 opera
今年四月份的时候写过一系列文章 通过运动学模拟来演示碰撞检测算法优化的 javascript 实现(目录),现在有点空闲时间了,把那个例子稍微改了一下,把所有球都控制在一个密闭空间,然后通过旋转手机控制球们的移动(利用 html5 的 deviceapi),使用 opera 欧朋的 sphinx,在低端手机上 400 球能保持 40 帧左右。
先在优酷看看视频演示吧:http://v.youku.com/v_show/id_xntgxotg5ntky.html
原理就是使用 devicemotion 事件获取设备 x 轴和 y 轴的加速度,然后模拟小球的加速运动。devicemotion 和 deviceorientation 是有区别的,devicemotion 获取的是加速度值,单位是米每平方秒,而 deviceorientation 获取的是角度,详见 deviceorientation事件规范。
本例在线访问地址是(使用安卓设备):http://www.impony.com/tools/com.impony.balls.android/
不过推荐使用 sphinx 模拟器(http://sphinx.oupeng.com/)访问这个地址,或者直接安装我用 sphinx 开发者平台(http://ge.oupeng.com/)打包好的 apk,性能比较高。
安装 apk 时会看到有好多权限需求,这是打包时自动产生的,本例没有访问设备任何隐私,可以查看源代码确认,请放心。
apk 安装包地址是:http://www.impony.com/tools/com.impony.balls.android/balls1.1.apk
以上两个链接的短地址分别是:http://dwz.cn/9lu5e 和 http://dwz.cn/9lu9p
下面是截图:
您可能对以下日志也感兴趣
开发移动应用的一些心得
【图】刷长安街
【图】七月份的尾巴,狂风大作,电闪雷鸣
【图】看天气预报未来三周几乎每天都有雨
【图】44.2℃
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:)!