, чтобы получить джойстик, Google SneakyInput. Затем он реагирует на изменение направления и перемещает камеру или персонажа.
CGPoint scaledVelocity= ccpMult(sneakyInputJoystick.velocity, 480.0f);
CGPoint newPosition = ccp(aNode.position.x + scaledVelocity.x * deltaTime, tempNode.position.y + scaledVelocity.y * deltaTime);
[aNode setPosition:newPosition];