Cyh的博客

Email:kissyan4916@163.com
posts - 26, comments - 19, trackbacks - 0, articles - 220

从Android手机 开始,主流的智能机纷纷加入了感应器Sensor硬件,常见的有光线感应器、重力感应器、加速感应器,而更高级的有磁极方向、陀螺仪、距离感应器、温度感应器等等。对于Android游戏 开发 ,我们主要用到重力、加速、磁力和陀螺仪四种,当然部分游戏可能需要GPS 或Cellid定位来修正一些位移信息。从系统 中提高的感应器主要在android .hardware中,我们可以看到系统提供了 android.hardware.SensorEventListener、Sensor和SensorManager这三个类,我们会发现除了可以获取 感应器的信息,和感应器的原始数据 外,并没有提供相关的逻辑处理。Android123将会分3篇来详细的介绍不同感应器的作用和逻辑处理,比如自由落体,晃动,磁极,当前的旋转速度。

未来Android123将完成主要是一个基于OpenGL 3D的雷电游戏,最终加入联网对战效果 可以团队打怪实现手机3D网游充分发挥Android手机的娱乐能力。对于大多数新款Android手机可能没有配备轨迹球或导航键的方向控制,所以重力感应器是这类实时性较强游戏的首选控制方式。主要有以下几点问题对于Sensor

1. 降噪处理,如果做过LBS软件 的大家可能明白偏移修正,在GPS无法正常获取数据较间断时地图不能乱飘,这里Sensor也不例外,除了使用采样数据平均值获取外,可以间隔采样的方法来处理。细节的算法我们将在下节给出示例代码 。

2. 感应器的敏感度,在Android中提供了四种延迟级别分别为

SENSOR_DELAY_FASTEST 最低延迟,一般不是特别敏感的处理不推荐 使用,该种模式可能造成手机电力大量消耗,由于传递的为原始数据,算法不处理好将会影响游戏逻辑和UI的性能,所以Android开发网不推荐大家使用。

SENSOR_DELAY_GAME 游戏延迟,一般绝大多数的实时性较高的游戏都使用该级别。
int SENSOR_DELAY_NORMAL 标准延迟,对于一般的益智类或EASY级别的游戏可以使用,但过低的采样率可能对一些赛车类游戏有跳帧现象。
int SENSOR_DELAY_UI 用户界面 延迟,一般对于屏幕 方向自动 旋转使用,相对节省电能和逻辑处理,一般游戏开发中我们不使用。

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/JavaTiger427/archive/2010/11/25/6034586.aspx



                                                                                                       --    学海无涯