Add OpenGL engine and some features