2012-02-21 18 views
0

私は携帯電話を傾けると、視差の背景(一定の速度)を動かしたいです。 視差の背景は動いていますが、ゆっくりとちらつきます。 誰かが良い例があるのか​​、何が間違っているのか分かりますか?AndEngine:加速度計で視差の背景を移動する

コードのいくつかの部分:使用方向情報(onOrientationChanged)、ない加速を傾ける電話を検出するための

public class TestPhysicsActivity extends SimpleBaseGameActivity implements IAccelerationListener{ 
... 
private static final int CAMERA_WIDTH = 720; 
private static final int CAMERA_HEIGHT = 480; 
final Camera camera = new Camera(0, 0, CAMERA_WIDTH, CAMERA_HEIGHT); 
final ScrollableParallaxBackground background = new ScrollableParallaxBackground(0, 0, 0, camera); 
....  

    @Override 
    public void onLoadResources() { 
    this.enableAccelerometerSensor(this); 
    } 

.... 
@Override 
public void onAccelerationAccuracyChanged(final AccelerationData pAccelerationData) { 
} 
@Override 
public void onAccelerationChanged(final AccelerationData pAccelerationData) { 
    final Vector2 gravity = Vector2Pool.obtain(pAccelerationData.getX(), pAccelerationData.getY()); 
    this.mPhysicsWorld.setGravity(gravity); 
    Vector2Pool.recycle(gravity); 
background.setParallaxValue(this.mEngine.getSecondsElapsedTotal()*pAccelerationData.getX()); 

} 

} 

おかげ

答えて

1

。これらのメソッドによって返された

@Override public void onOrientationChanged(OrientationData pOrientationData) { 
    pOrientationData.getYaw() //compass 
    pOrientationData.getPitch() //one orientation axis 
    pOrientationData.getRoll() //other orientation axis 
} 

値は度である。この方法では、直接各軸の周りに携帯電話の傾きを求めることができ、そこからOrientationDataを取得します。私はこのメソッドからの情報だけを使ってチルト制御された完全なゲームを実装しました。

enableAccelerationSensorの代わりにenableOrientationSensor(this)を使用するようにセンサーを変更することも忘れないでください。

+0

私が知っている限り、方向情報は、デバイスがポートレート/ランドスケープモードの場合のみ検出します。それについてもっと詳しく説明できますか? – Jimmar

+0

私はより完全に私の答えを編集して、助けてくれることを願っています:) – vertti

-1

mEngine.getSecondsElapsedTotal()のデータが正しいことを確認してください。私の経験から、AndEgineで時間を追跡しながら何か怪しげなことが起こっています。第2回をチェックし、

0

は、私はあなたがここに http://www.andengine.org/forums/tutorials/moving-a-sprite-with-the-accelerometer-sensor-t1223.html

このプロジェクトを見てみ勧めこの1つはスプライトを移動するために加速度センサーを使用して、あなたのアイデアを得ることができ、それはあなたのためのバックグラウンドに影響を与えてそれを変更します現在のバージョンのandEngineで動作する修正コードを投稿したフォーラムのページ

関連する問題