Refactored OpenGL backends