Quando si crea un'astrazione del sistema è meglio avere la piattaforma diverse API nascoste da un'interfaccia comune al livello più basso che abbia senso.
Tenendo conto delle diverse API grafiche native moderne (senza pipeline a funzione fissa): OpenGLES 2.0+, OpengGL 3.0+, DirectX 10.0+, Xbox DirectX 9, LibGCM
Se si volesse creare un'API grafica di basso livello senza stato per sedersi al di sopra di tutti, quale sarebbe il modo migliore per renderlo il più sottile e veloce possibile?