Perché la risoluzione delle trame nei giochi è sempre una potenza di due (128x128, 256x256, 512x512, 1024x1024, ecc.)?
Come sottintende Byte56, le restrizioni dimensionali del "potere di due" sono (erano) che ogni dimensione deve essere, indipendentemente, una potenza di due, non che le trame debbano essere quadrate e avere dimensioni che sono una potenza di due.
Tuttavia, sulle schede moderne e sulle API grafiche moderne, questa "restrizione" è stata notevolmente ridotta in modo tale che le dimensioni delle trame possano essere, entro limiti ragionevoli, praticamente qualsiasi cosa ti piaccia. Però:
Non sarebbe intelligente risparmiare sulla dimensione del file del gioco e rendere la trama esattamente adatta al modello da scartare UV? Cosa accadrebbe se ci fosse una trama che non era una potenza di due?
Assicurando che le dimensioni della trama abbiano una potenza di due, la pipeline grafica può trarre vantaggio dalle ottimizzazioni legate all'efficienza nel lavorare con potenze di due. Ad esempio, può essere (e assolutamente diversi anni fa prima che avessimo GPU dedicate e compilatori di ottimizzazione estremamente intelligenti) più veloci da dividere e moltiplicare per potenze di due. Lavorare al potere di due operazioni anche semplificate all'interno della pipeline, come il calcolo e l'uso di mipmap (un numero che è una potenza di due si dividerà sempre equamente a metà, il che significa che non devi affrontare scenari in cui devi arrotondare le dimensioni della mipmap verso l'alto o verso il basso).
È vero che "sprechi" un po 'di spazio in questo modo, ma lo spazio extra di solito vale la pena per il compromesso delle prestazioni di rendering. Inoltre ci sono tecniche, come la compressione o l'imballaggio di più immagini in un unico spazio di trama che può alleviare alcuni dei rifiuti di archiviazione.