2012-03-29 2 views
0

Я в настоящее время обновляю свою игру с помощью XCode 4.3.1 и iPad3. Когда выбран режим iPAD HD, я получаю черный экран, когда меняю сцену из AppDelegate.iPad3 HD Black Screen in Portrait Ориентация

Я использую cocos2d v1.0.1

Моя Игра портрет только в режиме, и я думаю, что я отслеживал проблему вниз.

Если вы создаете новый проект с использованием HelloWorld Layer по умолчанию, он работает на iPad3 и его симуляторе в формате HD.

Однако, если вы измените следующий код: -

-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { 

... 

#elif GAME_AUTOROTATION == kGameAutorotationUIViewController 
// 
// EAGLView will be rotated by the UIViewController 
// 
// Sample: Autorotate only in landscpe mode 
// 
// return YES for the supported orientations 

//return (UIInterfaceOrientationIsLandscape(interfaceOrientation)); 
return (UIInterfaceOrientationIsPortrait (interfaceOrientation)); 

//return NO; 

... 
} 

В RootViewController.m

Вы видите черный экран для реального устройства и симулятора iPad3. Он работает, как ожидается, на всех устройствах, iPhone/IPod Touch, и IPad 1 и 2.

Если я изменяю заявление обратно

возвращение (UIInterfaceOrientationIsLandscape (interfaceOrientation));

Я получаю Hello World, который отображается на экране, но он находится в ландшафте только на iPad3.

Кто-нибудь еще столкнулся с этим и получил какие-либо предложения по исправлению?

Проект достаточно велик, чтобы перейти на последний бета-код V1.

+0

Вы уверены, что 'GAME_AUTOROTATION' определен как равный' kGameAutorotationUIViewController'? – jonsibley

ответ

2

т.к. слишком поздно, чтобы ответить. Это может помочь другим

попробовать эту строку кода в

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions: 


[director setProjection:kCCDirectorProjection2D]; 

надеюсь, что это будет исправить вашу проблему.

+0

Спасибо, это действительно исправляет проблему!Есть ли объяснения, почему это происходит только на новом iPad и что происходит в фоновом режиме с помощью этого вызова? – alexleutgoeb

0

я думаю, что проблема это в новом Xcode, когда и обновление до Xcode 4.5 с новым

IOS 6.0 SDK, проект «поддерживается ориентация интерфейса» функция получает невыбранную,

попробовать чтобы выбрать их все, если и хотят, чтобы все они доступны,

это решит проблему,

нет необходимости менять в приложение-делегат или использовать [режиссер setProjection: kCCDirectorProjecti on2D]; так как это может испортить дисплей.

надеюсь, что это поможет, основываясь на том, с чем я столкнулся лично.

0

Просто отключите Retina для iPad3 [режиссер enableRetinaDisplay: YES];

Позже вы можете обновить приложение для iPad3, добавив в проект проект XXXXXx-ipadhd.png (ipad retina version of images).