手机游戏开发中Android传感器的应用研究

    田志贡 阮国庆 石峰

    

    

    摘要:文章主要分析了Android手机常用的传感器在手机游戏开发中的应用,分析了利用姿态传感器实现游戏开发过程中核心模块代码的相关知识,并对所带来的优越体验加以介绍。

    关键词:Android;姿态传感器:手机游戏

    近年来,随着Android系统手机的广泛应用,其应用在游戏开发中的范围也越来越广。使用Android系统的手机有一个最大的优势,就是可以利用这项设备访问系统内的一些有用的工具,这些工具可以给Android系统带来更大的便利。因为手机以前的访问设备在底层硬件方面的能力比较差,在操作上存在着很大的困难,移动开发的人员在这方面遇到了很多的难题。

    1手机传感器的基本知识

    虚拟传感器是一种在一个或者多个硬件的基础上获取数据的传感器。因为这种传感器在软件的基础上建立的,并非物理设备而是模仿基于硬件的传感器。在软件传感器上建立的有线性加速度传感器,重力传感器。这些传感器应用在手机中,可以大大提升手机的功能。因为这些Android手机中都自带传感器,利用这个传感器可以测量物体的运动、方向和运行的环境条件。这些传感器的主要功能是提供精确的数据,这些数据都是最原始的数据。利用监控三维设备,可以促使传感器监控周围的运行环境。当前,手机中应用的传感器也成为了备受关注的新技术,例如在“星空迷途”这一经典手机游戏中,通过合理运用传感器,能够帮助用户很好地实现对游戏界面的自动化控制。

    1.1多种多样的手机传感器

    目前较为常用的Android手机传感器为:主要用途在于位移变动的传感器、有助于定位的传感器、感知环境的传感器。其中,用来帮助位移的传感器主要测量三个轴线的加速度和旋转角度。在测量的过程中,使用了加速度传感器、重力传感器和矢量传感器、环境传感器。

    其中,也采用了光线传感器、温度传感器。位置传感器的主要作用是测量设备的物理位置,也联合采用了方向传感器和磁力传感器。

    1.2手机传感器的参数

    不同设备中的监听器具有类似功用与运行机制,手机传感器中的监听器与注册传感器是通用的,考虑到手机传感器参数实时确认的难度,可对注册传感器中的监听器进行合理使用,将其应用于手机,并在此基础上利用电脑编程技术,编写onSensorChanged代码,从而得到监听器反馈的参数值。

    2传感器应用在游戏开发中

    2.1Android手机姿态传感器

    传感器中比较常用的就是姿态传感器,该传感器最大的优势就是可以通过传感器感应手机的地理坐标,并且反馈给用户。它通常可以感知三个方位的坐标。即把手机沿着Yaw轴、Pitch轴和Roll轴转过的角度,这三个坐标构成了一个三维空间,因此这三个坐标的空间坐标都不一致。具体的操作方式是:Yaw轴代表竖直朝上的方向,其指示的方向保持不变,都是由重力加速度g的相反方向;Pitth轴,该轴的方向是变化的,随着手机的Yaw轴方向而变化,但是该轴永远与Yaw轴成直角。如图1所示,显示了该轴的方向。

    在操作的过程中,需要注意始终沿着空间方向的竖直方向、水平方向和垂直方向,建立相应的Yaw轴、Pitch轴和Roll轴,沿着这三大基础的轴线旋转,可以使旋转的角度恢复顺序。由于Yaw轴始终时重力加速度的反方向,所以这个轴线可以通过逆时针旋转的方法恢复其旋转角。在标准的空间坐标轴中,Z轴的操作方式也是这样。同时,Yaw轴和Pitch轴可以相互作用,得到空间坐标轴中的X轴。具体的操作方式是:第一,对在Yaw试验中出现偏转的角度进行恢复,此时可以发现Pitch轴与标准空间坐标系中的X轴相重合;第二,当X轴上所有角度均恢复至初始状态后,对Roll轴加以修正,使其与标准空间坐标系的Y轴相重合;第三,两个方向的坐标轴均得到准确修正后,以Y轴为标准将修正后的角度逆时针恢复至修正前状态。此时便能够实现手机平面与标准空间坐标系的重合,和手机所在的平面连接的重力加速度,此时也不是单纯的重力加速度,而是和手机所在平面产生交集的向量。如果把这个向量投射到手机上,那么只要观察这个投影点,并进行相关的测量,就可以得到关于小球运动方向的相关数据和情况。

    在这个过程中,尤其要注意的是,如果不建立完整的空间坐标图,或在进行上述调试的过程中出现偏差,角度未恢复,则可能由于空间坐标转换的误差而加大工作量。上面方法中的每一次角度恢复都是在标准的坐标系轴中实现的。值得庆幸的是,在标准的坐标系轴中,很容易实现这样的角度转换,利用计算机图形学,绘制清晰的几何图形,也很容易恢复角度的转换,实现Android手机姿态传感器的工作原理的构建。

    2.2Android姿态传感器在闯关游戏中的使用

    Android姿态传感器技术在闯关游戏中的使用主要是通过手机姿态计算模块实现的,这个模块最大的功能就是感知手机的姿态,然后根据手机反馈的数据计算小球的运动过程。上文介绍了手机姿态传感器的基本数据,下面介绍了使用姿态传感器在Android手机运作过程。考虑到Android手机自身内部便存在传感器的相关驱动,可以使用姿态传感器计算捕获手机姿态数据,并且计算出游戏中的小球的运动方向。

    一方面,Android姿态传感器捕获用户的数据,一般情况下,手机游戏中较为重要的是以Balllistener类数据为主的传感器数据,这种类型的数据是由SensorListener数据演变而来的,它可以实现对手机游戏中姿态变化和运动的监测和跟踪,并对有关的数据变化产生准确感知。这一项技术与Android手机系统中的SensorListener内置功能存在相似之处,当由于其他因素导致传感器数值变化时,可直接获取所需数值。

    另一方面,传感器可对行星运行方向进行计算,RotateUtil类图如图2所示,此类传感器是常用的静态工具,能够为行星运动方向的实时计算提供相应的静态方法。

    3结语

    综上所述,Android姿态传感器技术在手机游戏开发中的应用越来越广泛,很好地实现了游戏的电子化和自由化。因此,需要加大Android姿态传感器技术在手机游戏开发中的应用,不断创新Android姿态传感器技术,给手机游戏带来更高端、完善的服务。只有使用Android姿态传感器技术,才能帮助相关人员在进行传统小秋闯关等游戏的二次开发过程中,不断探索并更为深入地运用传感器技术;同时,实现手机游戏中的进Android姿态传感器技术中的更新升级,实现Android应用软件的精彩体验。

相关文章!
  • 融合正向建模与反求计算的车用

    崔庆佳 周兵 吴晓建 李宁 曾凡沂<br />
    摘 要:针对减振器调试过程中工程师凭借经验调试耗时耗力等局限性,引入反求的思想,开展了

  • 浅谈高校多媒体教育技术的应用

    聂森摘要:在科学技术蓬勃发展的今天,我国教育领域改革之中也逐渐引用了先进技术,如多媒体技术、网络技术等,对于提高教育教学水平有很

  • 卫星天线过顶盲区时机分析

    晁宁+罗晓英+杨新龙<br />
    摘 要: 分析直角坐标框架结构平台和极坐标框架平台结构星载天线在各自盲区状态区域附近的发散问题。通过建