У меня была та же проблема, и кодовым убийцей для этого было представление, добавленное в мой код appDelegate.Это не позволило игроку вращаться должным образом.
Моя проблема заключалась в следующем: для реализации библиотеки FBConnect вам нужно добавить представление в ваш appDelegate, чтобы получить объект для используемого вами класса контроллера FB.метод handleOpenURL (возвращается из Safari по завершении аутентификации) и управляет обратным вызовом.Я потратил час, пока не понял, что это представление блокирует вращение.
Кстати, не волнует панель вкладок.Игрок должен вращаться правильно, даже если у вас не добавлен метод shouldAutorotateToInterfaceOrientation.