2011-08-06 13 views
0

私は3つの異なる平面に分割されたシーンを持っており、これらの平面を軸上のデバイスの回転に対して左右に移動したいので、デバイスが表面に対して0度のときに平面が中心になります。私はiPod touch(第1世代)のゲームのホーム画面でこの効果が見られます。 同様の効果を生み出すためには、どのセンサーを使用しなければなりませんか?iPhoneで視差効果を作成するために使用するセンサーは何ですか?

答えて

2

視差効果を実現するには、CoreMotionフレームワークをプロジェクトに追加し、CMMotionManagerを構築します。ジャイロスコープを備えたデバイスの場合は、startDeviceMotionUpdatesToQueue:withHandler:を使用し、ハンドラブロックでmotion.attitude.rollを調べることができます。あなたがstartAccelerometerUpdatesToQueue:withHandler:を使用してaccelerometerData.acceleration.xを検査することができ、ジャイロスコープを持っていない、またはあなたがUIAccelerometerを使用してUIAccelerometerDelegateを実装することができ、デバイスのために

。いずれにしても、重力と線形加速を区別するのに役立つローパスフィルタを作成することをお勧めします。 GLGravityプロジェクトにはこの例があります。

iOSのイベント処理ガイドのMotion Eventsに関するセクションを参照してください。

+0

おかげで1つのプロパティの値を設定してオブジェクト。加速度計は私にとっては良い解決策です。 –

1

あなたが選ばれたのUIView上の視差効果を得る(またはそれがサブクラスです)このUIViewのカテゴリ https://github.com/Przytua/UIView-MWParallax

を試すには、単に私のためにこれをクリアするための

関連する問題