in progress - to test on OpenGL3.1