This commit fixes two issues that cause issues in WebGL: * Non-power-of-two textures must wrap as GL_CLAMP_TO_EDGE. This breaks non-power-of-two textures. * Render calls with zero primitives should not be issued. This just causes warning spam.
tan
This conflicts with the tan() function, currently only on macOS.
We ended up in a confusing state where OpenGL 2 (like in "gl2") actually refers to OpenGL ES 2, which roughly corresponds to OpenGL 3. Rectify that.