Posted on 2010-12-03 10:26
啥都寫點 閱讀(280)
評論(0) 編輯 收藏 所屬分類:
Android
從Android手機 開始,主流的智能機紛紛加入了感應器Sensor硬件,常見的有光線感應器、重力感應器、加速感應器,而更高級的有磁極方向、陀螺儀、距離感應器、溫度感應器等等。對于Android游戲 開發(fā) ,我們主要用到重力、加速、磁力和陀螺儀四種,當然部分游戲可能需要GPS 或Cellid定位來修正一些位移信息。從系統(tǒng) 中提高的感應器主要在android .hardware中,我們可以看到系統(tǒng)提供了 android.hardware.SensorEventListener、Sensor和SensorManager這三個類,我們會發(fā)現(xiàn)除了可以獲取 感應器的信息,和感應器的原始數(shù)據(jù) 外,并沒有提供相關的邏輯處理。Android123將會分3篇來詳細的介紹不同感應器的作用和邏輯處理,比如自由落體,晃動,磁極,當前的旋轉速度。
未來Android123將完成主要是一個基于OpenGL 3D的雷電游戲,最終加入聯(lián)網(wǎng)對戰(zhàn)效果 可以團隊打怪實現(xiàn)手機3D網(wǎng)游充分發(fā)揮Android手機的娛樂能力。對于大多數(shù)新款Android手機可能沒有配備軌跡球或導航鍵的方向控制,所以重力感應器是這類實時性較強游戲的首選控制方式。主要有以下幾點問題對于Sensor
1. 降噪處理,如果做過LBS軟件 的大家可能明白偏移修正,在GPS無法正常獲取數(shù)據(jù)較間斷時地圖不能亂飄,這里Sensor也不例外,除了使用采樣數(shù)據(jù)平均值獲取外,可以間隔采樣的方法來處理。細節(jié)的算法我們將在下節(jié)給出示例代碼 。
2. 感應器的敏感度,在Android中提供了四種延遲級別分別為
SENSOR_DELAY_FASTEST 最低延遲,一般不是特別敏感的處理不推薦 使用,該種模式可能造成手機電力大量消耗,由于傳遞的為原始數(shù)據(jù),算法不處理好將會影響游戲邏輯和UI的性能,所以Android開發(fā)網(wǎng)不推薦大家使用。
SENSOR_DELAY_GAME 游戲延遲,一般絕大多數(shù)的實時性較高的游戲都使用該級別。
int SENSOR_DELAY_NORMAL 標準延遲,對于一般的益智類或EASY級別的游戲可以使用,但過低的采樣率可能對一些賽車類游戲有跳幀現(xiàn)象。
int SENSOR_DELAY_UI 用戶界面 延遲,一般對于屏幕 方向自動 旋轉使用,相對節(jié)省電能和邏輯處理,一般游戲開發(fā)中我們不使用。
本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/JavaTiger427/archive/2010/11/25/6034586.aspx
--
學海無涯