add a macro that generates a more natural OpenGL interface