libgdx 处理加速传感器
生活随笔
收集整理的這篇文章主要介紹了
libgdx 处理加速传感器
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
libgdx 已經(jīng)對Android加速傳感器做了封裝,使得用起來非常方便。
一,關(guān)于開啟和關(guān)閉加速傳感器 默認(rèn)地,libgdx開啟了加速傳感器,因此程序中可以直接獲取。那如何控制加速傳感器的開啟和關(guān)閉呢? 對于Android應(yīng)用來說,都會在初始化時傳入一個 AndroidApplicationConfiguration 的實例,而該實例就設(shè)置了很多配置項,其中就包括加速傳感器的開關(guān)配置。 如下面,就將加速傳感器顯示關(guān)閉了: AndroidApplicationConfiguration cfg = new AndroidApplicationConfiguration(); cfg.useGL20 = false; cfg.useAccelerometer = false; initialize(new MyGdxGame(), cfg);
二,獲取加速傳感器值 當(dāng)開啟加速傳感器后,在程序中就可以獲取其值,這是通過利用 Gdx.input 接口的幾個方法獲得,如下: accelX = Gdx.input.getAccelerometerX(); 上面就是獲取x方向的加速傳感器值,y和z軸方向的類似。 在libgdx中,加速度值的范圍為 :[-10, 10]。 在使用時要注意: 1)x軸,當(dāng)手機向左時,即手機逆時針旋轉(zhuǎn)方向,此時x軸加速度為正值,反之則為負(fù)值。這與直觀上有點差距。
三,加速值的使用 加速度不是速度,因此在實際使用時,要合理的運用。 一般地,我們可能需要將加速度值轉(zhuǎn)為其他更感性的值,如偏移量等。 比如現(xiàn)在獲取到 x軸加速值為 accelX,想計算其引起的偏移,則一般可以如下計算, 偏移= -accelX * 系數(shù) * Gdx.graphics.getDeltaTime() 注意上面等號右邊有一個負(fù)號。 關(guān)于系數(shù),這個需要自己根據(jù)實際情況進行調(diào)試。
一,關(guān)于開啟和關(guān)閉加速傳感器 默認(rèn)地,libgdx開啟了加速傳感器,因此程序中可以直接獲取。那如何控制加速傳感器的開啟和關(guān)閉呢? 對于Android應(yīng)用來說,都會在初始化時傳入一個 AndroidApplicationConfiguration 的實例,而該實例就設(shè)置了很多配置項,其中就包括加速傳感器的開關(guān)配置。 如下面,就將加速傳感器顯示關(guān)閉了: AndroidApplicationConfiguration cfg = new AndroidApplicationConfiguration(); cfg.useGL20 = false; cfg.useAccelerometer = false; initialize(new MyGdxGame(), cfg);
二,獲取加速傳感器值 當(dāng)開啟加速傳感器后,在程序中就可以獲取其值,這是通過利用 Gdx.input 接口的幾個方法獲得,如下: accelX = Gdx.input.getAccelerometerX(); 上面就是獲取x方向的加速傳感器值,y和z軸方向的類似。 在libgdx中,加速度值的范圍為 :[-10, 10]。 在使用時要注意: 1)x軸,當(dāng)手機向左時,即手機逆時針旋轉(zhuǎn)方向,此時x軸加速度為正值,反之則為負(fù)值。這與直觀上有點差距。
三,加速值的使用 加速度不是速度,因此在實際使用時,要合理的運用。 一般地,我們可能需要將加速度值轉(zhuǎn)為其他更感性的值,如偏移量等。 比如現(xiàn)在獲取到 x軸加速值為 accelX,想計算其引起的偏移,則一般可以如下計算, 偏移= -accelX * 系數(shù) * Gdx.graphics.getDeltaTime() 注意上面等號右邊有一個負(fù)號。 關(guān)于系數(shù),這個需要自己根據(jù)實際情況進行調(diào)試。
總結(jié)
以上是生活随笔為你收集整理的libgdx 处理加速传感器的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基于单片机的血压计c语言,基于单片机血压
- 下一篇: 使用tcpdump查看原始数据包