Browse Source

Fix vsync on macOS getting disabled when using afterMinimumDuration

mrsaturnsan 9 months ago
parent
commit
627d10e4c4
1 changed files with 5 additions and 1 deletions
  1. 5 1
      drivers/metal/rendering_context_driver_metal.mm

+ 5 - 1
drivers/metal/rendering_context_driver_metal.mm

@@ -172,7 +172,11 @@ public:
 		count--;
 		front = (front + 1) % frame_buffers.size();
 
-		[p_cmd_buffer->get_command_buffer() presentDrawable:drawable afterMinimumDuration:present_minimum_duration];
+		if (vsync_mode != DisplayServer::VSYNC_DISABLED) {
+			[p_cmd_buffer->get_command_buffer() presentDrawable:drawable afterMinimumDuration:present_minimum_duration];
+		} else {
+			[p_cmd_buffer->get_command_buffer() presentDrawable:drawable];
+		}
 	}
 };