diff --git a/src/video_core/renderer_opengl/gl_rasterizer.cpp b/src/video_core/renderer_opengl/gl_rasterizer.cpp
index a404764f512cfa6fec38ff259eea924cbdba777c..a99f2b1f95c769b4a65511f6c873ac5a0ee93d40 100644
--- a/src/video_core/renderer_opengl/gl_rasterizer.cpp
+++ b/src/video_core/renderer_opengl/gl_rasterizer.cpp
@@ -919,8 +919,8 @@ void RasterizerOpenGL::SyncViewport() {
         auto& viewport = state.viewports[i];
         viewport.x = viewport_rect.left;
         viewport.y = viewport_rect.bottom;
-        viewport.width = static_cast<GLsizei>(viewport_rect.GetWidth());
-        viewport.height = static_cast<GLsizei>(viewport_rect.GetHeight());
+        viewport.width = static_cast<GLfloat>(viewport_rect.GetWidth());
+        viewport.height = static_cast<GLfloat>(viewport_rect.GetHeight());
         viewport.depth_range_far = regs.viewport[i].depth_range_far;
         viewport.depth_range_near = regs.viewport[i].depth_range_near;
     }