2012-09-19 21 views
5

Ho cercato ovunque ma senza fortuna.cocos2d iphone 5 supporto display 4 pollici

Come si prepara il gioco basato su cocos2d per un display da 4 pollici più grande di iPhone 5? La mia app funziona ma voglio migliorarla per il display da 4 pollici più grande. Cocos2d utilizza i propri suffissi per le immagini di visualizzazione della retina. Per la visualizzazione retina di iPhone 4 e 4S è image-hd.png. C'è un suffisso per iPhone 5? Come posso realizzare questo?

Cheers.

risposta

8

aggiungerlo a AppDelegate:

[CCFileUtils setiPadRetinaDisplaySuffix:@"your suffix"]; 
[CCFileUtils setiPadSuffix:@"your suffix"]; 
[CCFileUtils setiPhoneFourInchDisplaySuffix:@"your suffix"]; 
[CCFileUtils setiPhoneRetinaDisplaySuffix:@"your suffix"]; 
+3

Se non ho il metodo setiPhoneFourInchDisplaySuffix? Versione Cocos2d cocos2d v2.1-beta2 – Buron

+0

controllare l'api ref, se necessario aggiornare – LearnCocos2D

1

Hai seguito il post seguente, aggiungendo l'immagine predefinita per esso, denominato [email protected] con una risoluzione di 1136x640?

How to develop or migrate apps for iPhone 5 screen resolution?

Se non funziona, ho trovato questo post su forum cocos2d, contenente molte informazioni:

iPhone 5 1136 x 640 risoluzione dello schermo: http://www.cocos2d-iphone.org/forum/topic/39491

+0

Sì, ho trovato entrambi. Ma ancora non so come faccio a denominare i file .png per gli sprite. Ho una schermata iniziale per la mia app denominata [email protected] e il suo woking. Domanda a sinistra come faccio 'CCSprite * player = [CCSprite spriteWithFile: @" player.png "];' per il display da 4 pollici? Cocos2d sa usare -hd suffisso quando display retina, come faccio a dire quale immagine usare per retina da 4 pollici? – Majster

+0

Non ho trovato menzione di un nuovo suffisso nelle ultime note di rilascio e documenti da cocos2d. Penso che tu possa individuare e specificare il tuo player player personalizzato 568h.png al momento. E cambiarlo quando daranno una nuova versione di cocos2d ... – iMathieuB

12

Non c'è più suffisso del file per iPhone 5, dopo tutto è solo 176 pixel (88 punti) più largo. È trattato come un normale telefono Retina, quindi cocos2d caricherà i file -hd.

Il resto consiste nel posizionare le immagini in base al dispositivo. Il modo più semplice è quello di trattare i 44 punti su entrambi i lati come una "zona morta" in cui non possono verificarsi input da parte dell'utente e dove non c'è alcuna garanzia che l'utente possa vedere gli oggetti del gioco.

Aggiornamento: Cocos2d 2.1 aggiunto il suffisso -widehd. Si è detto che la versione finale 2.1 avrà il suffisso rinominato in -iphone5hd.

Alla luce delle future dimensioni dello schermo, potrei impostare personalmente e utilizzare un suffisso -568hd perché altri telefoni accanto a iPhone 5 potrebbero avere la stessa risoluzione. Denominare il suffisso dopo uno specifico modello di iPhone è un po 'miope a dir poco.

+0

'-iphone5hd' funziona bene con 2.1. Grazie per l'informazione. –

7

Non so perché tutti stiano dicendo che non c'è.

Il suffisso è -568h per iPhone5/iPod Touch 5th (quindi i display a retina da 4 pollici).

L'elenco totale:

  • -hd (iPhone 4/4S, iPod Touch 4 °)
  • -568h (iPhone 5, iPod Touch 5 °)
  • -iPad (1 ° iPad/2 °)
  • -ipadhd (3 ° iPad/4 °)
7

aggiungere questo al AppDelegate con il suffisso scelto:

if((UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) && ([[UIScreen mainScreen] bounds].size.height == 568)) { 
    [sharedFileUtils setiPhoneRetinaDisplaySuffix: @"-your suffix"]; 
} 
0

schermo ampio sostegno Ora cocos2d iPhone anche.

-wide.png for iphone 5 
-widehd.png for iPhone 5 HD 
0

Stavo solo giocando intorno con suffissi in Cocos2d 2.1-rc1 e sono stato in grado di farlo per caricare automaticamente un file iPhone5 con il suffisso "-iphone5hd", non cambiare nulla in AppDelegate nella sezione sharedFileUtil di codice . Spero che aiuti, anche.

2

Mi ci è voluto un po 'per capirlo, dato che sono nuovo di cocos2d. Quindi ho pensato che un recap potrebbe essere utile per quelli come me. In cocos2d 2.1, tutto ciò che dovete fare è creare grafici per le dimensioni dello schermo di destinazione e seguire la convenzione di denominazione dei suffissi cocos. Nota che la convenzione del suffisso di cocos non è la stessa di iOS.

Nel mio caso, ho un'immagine di sfondo che occupa l'intero schermo. Così, ho fatto ...

  1. background.png a 480x320 per iPhone
  2. background-hd.png a 960x640 per iPhone retina (3,5")
  3. background-iphone5hd.png per iPhone5 retina (4 ")

E utilizzare il seguente codice per caricare l'immagine in CCSprite. Cocos individuerà quale immagine usare per te.

CCSprite *background = [CCSprite spriteWithFile:@"background.png"]; 
background.position = ccp(background.textureRect.size.width/2, 
background.textureRect.size.height/2); 
[self addChild:background]; 

Per un elemento come un personaggio che non occupa l'intero schermo, volontà cocos2d pickup carattere hd.png automaticamente in iPhone5. Non è necessario creare la versione di character-iphone5hd.png.

Si può leggere di più su questo nella versione 2.1 di rilascio nota a https://github.com/cocos2d/cocos2d-iphone/wiki/cocos2d-v2.1-release-notes

2

Questo è quanto ho fatto per cocos2d v2.1-beta4.

In CCFileUtils.h ho aggiunto:

- (void)setIphone5HDSuffix:(NSString *)suffix; 

In CCFileUtils.m:

- (void)setIphone5HDSuffix:(NSString *)suffix 
{ 
    [_suffixesDict setObject:suffix forKey:kCCFileUtilsiPhone5HD]; 
} 

In AppDelegate.m:

[sharedFileUtils setIphone5HDSuffix:@"your_suffix"]; 

E questo è abbastanza!

Problemi correlati