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