Che cos’è uno strumento di pittura OpenGL®?

Uno strumento di disegno OpenGL® è un programma progettato per fornire a un utente la possibilità di creare un’immagine che viene renderizzata utilizzando la libreria grafica OpenGL® e possibilmente funzionalità hardware e accelerazione. La differenza tra uno strumento di disegno OpenGL® e altri programmi di disegno è che OpenGL® si basa sulla geometria tridimensionale (3D), mentre la maggior parte degli altri programmi di disegno utilizza superfici piatte bidimensionali (2D). Un programma di disegno 2D registra i colori dei pixel, mentre un programma di disegno 3D registrerà invece forme che possono essere facilmente manipolate in seguito. Ci sono vantaggi nell’usare uno strumento di disegno OpenGL® rispetto ad alcuni programmi di disegno 2D standard, ma potrebbero esserci anche alcune complicazioni che possono renderlo difficile da usare su alcuni sistemi di computer o non adatto a determinate applicazioni.

Nel senso più elementare, qualsiasi programma che utilizza OpenGL® come metodo di output per il rendering o la visualizzazione dell’interfaccia e della tela è tecnicamente uno strumento di pittura OpenGL®. Ci sono modi in cui il programma può essere completamente orientato in 2D, semplicemente modificando una mappa di texture su un rettangolo piatto delle stesse dimensioni dell’area di visualizzazione per consentire la pittura. L’utilizzo di OpenGL® per questo tipo di applicazione, tuttavia, può essere uno spreco perché dovranno essere sviluppate molte soluzioni alternative per sovvertire la naturale propensione 3D della libreria grafica.

Più comunemente, uno strumento di disegno OpenGL® assomiglia molto a un programma di grafica vettoriale. Ciò significa che quando un utente disegna una linea, un cerchio o uno scarabocchio sulla tela del programma, viene registrato come una forma geometrica anziché come una raccolta di pixel. Una volta definita la geometria di una forma, diventa incredibilmente facile modificare solo quel singolo oggetto indipendentemente dal resto dell’immagine dipinta. Nei programmi 2D, questo può essere difficile perché le informazioni sui pixel possono essere ambigue e alcune aree possono richiedere tempo per essere isolate e quindi manipolate.

Un altro potente utilizzo di uno strumento di disegno OpenGL® è la texture, o la pittura, di una superficie o mesh 3D. Ciò implica mostrare un oggetto 3D come una serie di triangoli collegati, chiamati mesh triangolari, e quindi consentire a un utente di dipingere sulla superficie dell’oggetto. Questo è utile per gli artisti 3D perché, una volta dipinta la superficie, è possibile produrre e salvare un file di immagine in modo che l’oggetto possa essere mappato con texture in tempo reale in un programma, applicazione o gioco 3D. Il motivo per cui ciò è necessario in alcuni casi è perché l’immagine piatta della trama 2D apparirà distorta in modo imprevedibile quando non è avvolta attorno all’oggetto 3D.

L’uso di OpenGL® come metodo di visualizzazione di un programma potrebbe causare problemi ad alcuni sistemi. Non tutte le schede grafiche supportano OpenGL® e alcune presentano problemi di prestazioni con i driver. Esistono anche sistemi che emulano solo il rendering OpenGL®, il che significa che il software sta effettivamente facendo l’elaborazione invece di una scheda grafica, causando il rendering molto lentamente.