Ecco la mia opinione su di esso. Un pixel non è un quadrato e non è nemmeno un rettangolo. Un pixel è un punto (infinitamente piccolo) a cui è associato un colore.
L'unico modo in cui ho visto personalmente i pixel visualizzati (interpretati) da un display è utilizzare il campionamento del "vicino più vicino" in cui i pixel si trovavano su una griglia rettangolare, il che significa che il colore di qualsiasi spazio dato su un display è il colore del pixel a cui è più vicino.
Questo è un modo elegante di dire "i pixel sono rettangolari e disposti su una griglia", ma stai con me su questo: P
Di conseguenza, anche i formati di immagine hanno i loro pixel memorizzati in una griglia, con il presupposto che per visualizzarlo verranno utilizzati anche i vicini più vicini in una griglia. Ad esempio, molte immagini avranno l'anti-aliasing incorporato in modo che sembrino buone quando vengono visualizzate su una "griglia vicina più vicina".
Le applicazioni interattive (giochi) possono usare trame che non sono pensate per essere visualizzate come nelle griglie dei vicini più vicini, quindi sono una specie di eccezione a quella regola. Lo fanno perché come parte della loro esecuzione, fanno l'antialiasing, il campionamento delle trame bilineari, ecc., In modo che qualsiasi immagine che inviano al display appaia bene, quando il display lo mostra come una griglia vicina più vicina!
Ora, avvicinandoti alla tua domanda: una griglia esagonale avrebbe dei vantaggi?
Penso che sì, lo farebbe!
Prima di tutto, penso che il vicino più vicino avrebbe un aspetto migliore. Non ho alcuna prova reale di questo dispiacere, ma l'esagono si avvicina più da vicino a un cerchio, e dal momento che non è una griglia regolare di dati, penso che il tuo occhio stia ottenendo una migliore distribuzione dei dati. Mi dispiace, è un po 'ondulato.
Penso che la maggior parte del motivo per cui sembrerebbe migliore, però, è che il filtraggio lineare prenderà informazioni da 6 vicini invece di 4, e si interpolerebbe su 3 assi anziché su 2. Maggiori informazioni da campioni con spaziatura meno regolare rispetto a una griglia ti danno = migliore immagine risultante.
Fare l'interpolazione cubica sarebbe anche meglio dell'interpolazione cubica su una griglia, quindi la qualità aumenta man mano che aumenti anche la qualità del tuo algoritmo.
Per quanto riguarda il fatto che memorizzi i dati in modo più efficiente, il fatto che sia in grado di filtrare meglio con meno dati significa per me che sì, potrebbe archiviare i dati in modo più efficiente.
E immagino infine ... forse potresti usare queste proprietà a tuo vantaggio. Forse potresti avere un formato di immagine memorizzato in un formato esagonale a bassa risoluzione, e quindi prima di visualizzare l'immagine in fase di runtime, potresti utilizzare algoritmi di campionamento per riconvertirlo in una griglia.
Forse ci sarebbe anche un buon modo per farlo in modo efficiente in un pixel shader, quindi userebbe anche meno memoria in fase di esecuzione?
È un'idea interessante (:
PS: quanto sarebbe bello avere un display analogico (senza singoli pixel, ma una superficie colorata continua) che guardasse i dati pixel inviati non come rettangoli, ma come punti campione su una superficie continua. Forse un po 'là fuori però ...