Explorar o código

gl_rasterizer_cache: Use GL_STREAM_COPY for PBOs

Since the data is doing the path CPU -> GPU -> GPU copy is the most
approximate hint. Using GL_STREAM_DRAW generated a performance warning
on Nvidia's stack. Changing this hint removed the warning.
ReinUsesLisp %!s(int64=7) %!d(string=hai) anos
pai
achega
fc8a8789da
Modificáronse 1 ficheiros con 1 adicións e 1 borrados
  1. 1 1
      src/video_core/renderer_opengl/gl_rasterizer_cache.cpp

+ 1 - 1
src/video_core/renderer_opengl/gl_rasterizer_cache.cpp

@@ -452,7 +452,7 @@ static void CopySurface(const Surface& src_surface, const Surface& dst_surface,
     const std::size_t buffer_size = std::max(src_params.size_in_bytes, dst_params.size_in_bytes);
 
     glBindBuffer(GL_PIXEL_PACK_BUFFER, copy_pbo_handle);
-    glBufferData(GL_PIXEL_PACK_BUFFER, buffer_size, nullptr, GL_STREAM_DRAW);
+    glBufferData(GL_PIXEL_PACK_BUFFER, buffer_size, nullptr, GL_STREAM_COPY);
     if (source_format.compressed) {
         glGetCompressedTextureImage(src_surface->Texture().handle, src_attachment,
                                     static_cast<GLsizei>(src_params.size_in_bytes), nullptr);