iPhoneゲームの加速度計を適切に調整するにはどうすればよいですか?現在、電話が平らな面にあるとき、パドルは左にドリフトします。ハイパスフィルターまたはローパスフィルターは、低い値と高い値でもパドルを完全に制御する必要があるため、許容できるソリューションではありません。AppleがBubbleLevelサンプルを持っていることは知っていますが、フォローするのは難しいと思います...誰かがプロセスを単純化できますか?
私の加速度計コードは次のようになります。
-(void)accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceleration {
float acelx = -acceleration.y;
float x = acelx*40;
Board *board = [Board sharedBoard];
AtlasSprite *paddle = (AtlasSprite *)[board.spriteManager getChildByTag:10];
if ( paddle.position.x > 0 && paddle.position.x < 480) {
paddle.position = ccp(paddle.position.x+x, paddle.position.y);
}
if ( paddle.position.x < 55 ) {
paddle.position = ccp(56, paddle.position.y);
}
if ( paddle.position.x > 435 ) {
paddle.position = ccp(434, paddle.position.y);
}
if ( paddle.position.x < 55 && x > 1 ) {
paddle.position = ccp(paddle.position.x+x, paddle.position.y);
}
if ( paddle.position.x > 435 && x < 0) {
paddle.position = ccp(paddle.position.x+x, paddle.position.y);
}
}
ありがとうございました!