Attualmente sto realizzando un gioco che deve essere eseguito su una vasta gamma di dimensioni di visualizzazione e proporzioni, e non è stato un processo molto semplice. Inoltre, se stai realizzando cose in pixel art e vuoi mantenere la sensazione di pixel art supportando molte risoluzioni, stai camminando in un mondo di dolore, quindi preparati.
Secondo me, ci sono diverse cose che puoi fare (alcune sono esclusive, altre no)
Definisci una risoluzione minima e esegui l'upscaling (tutto) solo in termini interi con il vicino più vicino. In questo modo puoi mantenere la sensazione di pixel art. Non penso che il downscaling sia una buona idea, poiché perderai i dettagli e l'intero scopo di usare pixel art accuratamente realizzati verrà sconfitto. Se la risoluzione minima supportata è troppo piccola per i tuoi sprite, modifica la risoluzione minima supportata o ridisegna tutte le risorse per supportare questa risoluzione minima.
Quando si incontra una risoluzione, o proporzioni non sufficienti a coprire l'intero schermo, estendere il gioco (mostra più riquadri), mantenendo intatte le risorse. Dovresti creare il tuo gioco in modo che sia comunque giocabile con il rapporto risoluzione / aspetto minimo.
Se non è possibile estendere il gioco, riempire di nero le sezioni non di gioco dello schermo; strisce nella parte superiore e inferiore, sinistra e destra o una cornice nera. Questo è ciò che fa l'iPad quando si eseguono app per iPhone in modalità ingrandita. Questo è anche ampiamente usato negli emulatori.
Rinuncia a rimanere fedele alla griglia dei pixel. Ma devi smettere di usare le risorse pixel art con angoli acuti. Quindi esegui l'upscaling / downscale usando il filtro bilineare (o ottimamente bicubico, se la tua piattaforma lo supporta). Questa è la scelta migliore per massimizzare l'utilizzo dello schermo, mantenendo l'esperienza utente simile su tutte le risoluzioni supportate.
Per il mio gioco, ho finito con l'opzione numero 4 e sono piuttosto sorpreso di quanto sia bello sui dispositivi che vanno da 320 pixel in verticale (un vecchio Android 2.3) fino a 1536 pixel in verticale (un iPad del 2012 con display Retina). Le risorse originali sono pensate per 600 pixel in verticale (originariamente per display 800x600 su un PC Windows). Sebbene per i giochi successivi, penso che una migliore risoluzione verticale logica sia di 720 pixel.
Il gioco utilizza una risoluzione virtuale virtuale di 600 pixel, ridimensionata in base alla risoluzione nativa del dispositivo con filtro bilineare. Ciò significa che tutte le coordinate Y nel codice vanno da 0 (parte superiore dello schermo) a 600 (parte inferiore dello schermo).
Per le dimensioni orizzontali, suppongo che la larghezza massima sia di 1080 pixel, che è più che sufficiente per coprire anche le proporzioni 16: 9 più ampie. Le mie coordinate x sono centrate, quindi x = 0 è il centro dello schermo e le coordinate x vanno da -540 a sinistra a 540 a destra. Mi assicuro che tutto si adatti tra -400 e 400 per supportare i display più stretti (4: 3)
Tuttavia, se dovessi mantenere la sensazione della pixel art, utilizzerei sicuramente le opzioni 1 e 2. Ciò significa che ridimensionerei solo in termini interi per mantenere la sensazione di blocco della pixel art e progettare il gioco in modo che la quantità di visibile le tessere non sono fisse e possono adattarsi a qualsiasi risoluzione dello schermo / proporzioni.
Quindi, al fine di (non) rispondere alla tua domanda. Penso che ridimensionare la pixel art sia una pessima idea, quindi non dovresti farlo. Esistono altri modi per supportare diverse risoluzioni dello schermo che forniranno risultati migliori rispetto alla semplice macellazione della tua arte creata con cura.