Conversione di operazioni pixel
Quando si effettua la conversione del codice che prevede operazioni pixel, tenere presente quanto segue:
- Le operazioni dei pixel logici non vengono applicate ai buffer di colore RGBA. Per altre informazioni, vedere glLogicOp.
- In generale, IRIS GL usa il formato ABGR per pixel, mentre OpenGL usa RGBA. È possibile modificare il formato con glPixelStore.
- Quando si esegue la conversione delle funzioni lrectwrite , prestare attenzione a dove lrectwrite sta scrivendo (ad esempio, potrebbe scrivere nel buffer di profondità).
OpenGL offre una maggiore flessibilità nelle operazioni in pixel. Nella tabella seguente sono elencate le funzioni IRIS GL per le operazioni in pixel e le funzioni OpenGL equivalenti.
Funzione IRIS GL | Funzione OpenGL | Significato |
---|---|---|
lrectread, rectread,readRGB |
glReadPixels | Legge un blocco di pixel dal framebuffer. |
lrectwrite, rectwrite | glDrawPixels | Scrive un blocco di pixel nel framebuffer. |
rectcopy | glCopyPixels | Copia i pixel nel framebuffer. |
rectzoom | glPixelZoom | Specifica i fattori di zoom pixel per glDrawPixels e glCopyPixels. |
cmov | glRasterPos | Specifica la posizione raster per le operazioni pixel. |
readsource | glReadBuffer | Seleziona un'origine del buffer dei colori per i pixel. |
pixmode | glPixelStore,glPixelTransfer | Imposta le modalità di archiviazione pixel. Impostare le modalità di trasferimento dei pixel. |
logicop | glLogicOp | Specifica un'operazione logica per le scritture in pixel. |
glEnable ( GL_LOGIC_OP ) | Attiva le operazioni per la logica dei pixel. |
Per un elenco completo delle possibili operazioni logiche, vedere glLogicOp.
Questo esempio di codice IRIS GL mostra una scrittura in pixel tipica:
unsigned long *packedRaster;
..
packedRaster[k] = 0x00000000;
..
lrectwrite(0, 0, xSize, ySize, packedRaster);
Il codice precedente è simile al seguente quando viene convertito in OpenGL:
glRasterPos2i( 0, 0);
glDrawPixels( xSize + 1, ySize + 1, GL_RGBA, GL_UNSIGNED_BYTE, packedRaster);
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per