Sono nuovo alla programmazione di grafica e mi chiedo perché preferirei mai GDI sulla grafica accelerata hardware di DirectX/OpenGL?In quali situazioni è preferibile preferire GDI su DirectX/OpenGL
Ci sono ancora validi motivi per utilizzare GDI?
Sono nuovo alla programmazione di grafica e mi chiedo perché preferirei mai GDI sulla grafica accelerata hardware di DirectX/OpenGL?In quali situazioni è preferibile preferire GDI su DirectX/OpenGL
Ci sono ancora validi motivi per utilizzare GDI?
Alla fine si riduce a ciò che è necessario. Se hai solo bisogno di grafica 2D non in tempo reale, GDI farà esattamente ciò di cui hai bisogno.
D'altra parte, DirectX e OpenGL richiedono molto più lavoro per l'utilizzo e la gestione (e in genere utilizzano più risorse di sistema), anche se consentono un disegno più veloce e 3D.
Ricorda, tieni semplice, non hai bisogno di un sistema 3D completo per disegnare un paio di cerchi!
Sì, questo. Fondamentalmente GDI è semplicemente semplice. Se non stai facendo nulla di estraneo e non capisci come funzionano OpenGL o DirectX, probabilmente non è nel tuo migliore interesse apprenderne. E GDI è una piattaforma specifica mentre OpenGL è multipiattaforma. –
Quindi con GDI la dimensione del mio file exe sarà più piccola, ma avrà un disegno più lento? Quindi, in sostanza, se voglio disegnare velocemente, dovrei usare DirectX/OpenGL, altrimenti GDI? Quindi per i programmi di disegno, i giochi 2D/3D, ecc., Sarebbe più efficiente usare DX/GL e, per i programmi che non hanno bisogno di aggiornare la finestra, spesso GDI è una scelta migliore? – xcrypt
Non esattamente. Le dimensioni del tuo programma non dovrebbero cambiare molto dato che le librerie OpenGL/DirectX sono collegate dinamicamente (sebbene, naturalmente, tu abbia più codice per iniziarle). GDI * sarà più lento di D3D/OpenGL, dato che è rendering indiretto. Sia D3D che OGL parlano direttamente alla scheda grafica, GDI deve passare attraverso Windows e (credo) è tutto fatto nel software. – slugonamission