fn clamp_viewport(gl: &Gl, size: Size2D<u32>) -> Size2D<u32>