Nvdrv: Do framelimiting only in the CPU Thread
This commit is contained in:
		
				
					committed by
					
						
						FernandoS27
					
				
			
			
				
	
			
			
			
						parent
						
							976d9ef43c
						
					
				
				
					commit
					ffc2ce89a0
				
			@@ -5,6 +5,7 @@
 | 
			
		||||
#include "common/assert.h"
 | 
			
		||||
#include "common/logging/log.h"
 | 
			
		||||
#include "core/core.h"
 | 
			
		||||
#include "core/core_timing.h"
 | 
			
		||||
#include "core/hle/service/nvdrv/devices/nvdisp_disp0.h"
 | 
			
		||||
#include "core/hle/service/nvdrv/devices/nvmap.h"
 | 
			
		||||
#include "core/perf_stats.h"
 | 
			
		||||
@@ -38,7 +39,10 @@ void nvdisp_disp0::flip(u32 buffer_handle, u32 offset, u32 format, u32 width, u3
 | 
			
		||||
        transform, crop_rect};
 | 
			
		||||
 | 
			
		||||
    system.GetPerfStats().EndGameFrame();
 | 
			
		||||
    system.GetPerfStats().EndSystemFrame();
 | 
			
		||||
    system.GPU().SwapBuffers(&framebuffer);
 | 
			
		||||
    system.FrameLimiter().DoFrameLimiting(system.CoreTiming().GetGlobalTimeUs());
 | 
			
		||||
    system.GetPerfStats().BeginSystemFrame();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
} // namespace Service::Nvidia::Devices
 | 
			
		||||
 
 | 
			
		||||
@@ -135,9 +135,6 @@ void RendererOpenGL::SwapBuffers(const Tegra::FramebufferConfig* framebuffer) {
 | 
			
		||||
 | 
			
		||||
    render_window.PollEvents();
 | 
			
		||||
 | 
			
		||||
    system.FrameLimiter().DoFrameLimiting(system.CoreTiming().GetGlobalTimeUs());
 | 
			
		||||
    system.GetPerfStats().BeginSystemFrame();
 | 
			
		||||
 | 
			
		||||
    // Restore the rasterizer state
 | 
			
		||||
    prev_state.AllDirty();
 | 
			
		||||
    prev_state.Apply();
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user