Android: Angry Birds Scaling


11

Qualcuno ha idea di come si realizzi il ridimensionamento negli uccelli arrabbiati? Voglio assicurarmi che le mie immagini / sfondo siano sempre in scala per adattarsi alla dimensione dello schermo e questo gioco sembra avere un effetto simile. Ho giocato con il lotto delle impostazioni manifest sull'impostazione delle dimensioni dello schermo preferite, ma devo ancora duplicare esattamente quello che voglio.

Esistono modi efficaci per assicurarsi che il gioco visualizzi sempre lo spazio XY, ridimensionandolo secondo necessità in base alla dimensione dei pixel?

Voglio assicurarmi che tutto sia sempre visualizzato sullo schermo per tutti i dispositivi e non tagliare le cose su piccoli dispositivi o aggiungere spazio nero su dispositivi di grandi dimensioni.

Sto calcolando il mio spazio di disegno ottenendo le dimensioni della vista e usando questo come limiti per i miei sprite ma non sembra funzionare troppo bene.

Risposte:


6

Per rispondere alla domanda originale, Angry Birds utilizza una grafica raster regolare (non vettori). Basta decomprimere il .apk (è un file zip) e dare un'occhiata alle trame da soli.

Angry Birds ti impedisce solo di impostare un fattore di zoom su 1.x, evitando così l'upscaling (ingrandimento) delle trame. Probabilmente utilizza anche la mappatura mip OpenGL per evitare artefatti di ridimensionamento (minificazione).


Spiega perché esiste / era una versione HD separata.
Matteo Leggi il

4
  1. Usa grafica vettoriale . I vettori non sono definiti da punti nello spazio (cioè singoli pixel), sono definiti da relazioni matematiche e si adattano facilmente a viste più piccole o più grandi.

  2. È impossibile visualizzare la stessa identica immagine su uno schermo con rapporto 4: 3 e uno schermo con rapporto 16: 9, ad esempio, senza comprimere o allungare l'immagine. Quindi dovrai tagliare le cose su dispositivi 4: 3 che verrebbero visualizzati su dispositivi widescreen 16: 9. Questa non è una brutta cosa in un gioco come Angry Birds in cui l'utente può fare una panoramica per vedere cosa manca.


1

Sulla piattaforma Android, ci sono:

  • 320 * 240 (1,33)
  • 400 * 240 (1,66)
  • 480 * 320 (1,5)
  • 800 * 480 (1,66)
  • 854 * 480 (1.77)
  • 1024 * 600 (1,71)

Quindi, quando progetti il ​​tuo gioco in 2D, devi pensarci. Hai due soluzioni tecniche:

  • scegli un rapporto (1.66 è il più diffuso) e usa bande nere (come i film)
  • Seleziona un rettangolo di selezione in cui non puoi eseguire lo zoom indietro e un altro per lo zoom in avanti.

Uso questo metodo per Moblox e livelli di vernice con queste scatole. Per il miglior rendering sulla maggior parte dei telefoni, i miei rettangoli hanno un rapporto di 1,66. Con i telefoni con rapporto 1.33 o 1.77, ci sono elementi di sfondo non visibili ma ho progettato il mio livello con azioni centrate. Quindi ai giocatori non importa.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.