|
|
|
@ -473,6 +473,14 @@ void RasterizerOpenGL::FlushCommands() { |
|
|
|
return; |
|
|
|
} |
|
|
|
num_queued_commands = 0; |
|
|
|
|
|
|
|
// Make sure memory stored from the previous GL command stream is visible
|
|
|
|
// This is only needed on assembly shaders where we write to GPU memory with raw pointers
|
|
|
|
// TODO: Call this only when NV_shader_buffer_load or NV_shader_buffer_store have been used
|
|
|
|
// and prefer using NV_shader_storage_buffer_object when possible
|
|
|
|
if (Settings::values.use_assembly_shaders.GetValue()) { |
|
|
|
glMemoryBarrier(GL_BUFFER_UPDATE_BARRIER_BIT); |
|
|
|
} |
|
|
|
glFlush(); |
|
|
|
} |
|
|
|
|
|
|
|
|