Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 高級開發 >> Android游戲開發之旅12 Sensor重力感應

Android游戲開發之旅12 Sensor重力感應

編輯:高級開發

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 用戶界面延遲,一般對於屏幕方向自動旋轉使用,相對節省電能和邏輯處理,一般游戲開發中我們不使用。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved