Ryujinx/Ryujinx.Graphics.Gpu/Engine
riperiperi 10aa11ce13
Interrupt GPU command processing when a frame's fence is reached. (#1741)
* Interrupt GPU command processing when a frame's fence is reached.

* Accumulate times rather than %s

* Accurate timer for vsync

Spin wait for the last .667ms of a frame. Avoids issues caused by signalling 16ms vsync. (periodic stutters in smo)

* Use event wait for better timing.

* Fix lazy wait

Windows doesn't seem to want to do 1ms consistently, so force a spin if we're less than 2ms.

* A bit more efficiency on frame waits.

Should now wait the remainder 0.6667 instead of 1.6667 sometimes (odd waits above 1ms are reliable, unlike 1ms waits)

* Better swap interval 0 solution

737 fps without breaking a sweat. Downside: Vsync can no longer be disabled on games that use the event heavily (link's awakening - which is ok since it breaks anyways)

* Fix comment.

* Address Comments.
2020-12-17 19:39:52 +01:00
..
GPFifo Interrupt GPU command processing when a frame's fence is reached. (#1741) 2020-12-17 19:39:52 +01:00
MME Fix MacroJit SubtractWithBorrow Alu Reg Operation. (#1473) 2020-08-13 12:08:48 -03:00
Compute.cs Salieri: shader cache (#1701) 2020-11-13 00:15:34 +01:00
ComputeQmd.cs Use correct shader local memory size instead of a hardcoded size (#914) 2020-02-02 14:25:52 +11:00
ConditionalRenderEnabled.cs Implement small indexed draws and other fixes to make guest Vulkan work (#1558) 2020-09-24 09:48:34 +10:00
IbStreamer.cs Implement small indexed draws and other fixes to make guest Vulkan work (#1558) 2020-09-24 09:48:34 +10:00
Inline2Memory.cs Memory Read/Write Tracking using Region Handles (#1272) 2020-10-16 17:18:35 -03:00
MethodClear.cs Synchronize Rasterizer State before Clear (#1680) 2020-11-07 16:21:10 -03:00
MethodConditionalRendering.cs Implement small indexed draws and other fixes to make guest Vulkan work (#1558) 2020-09-24 09:48:34 +10:00
MethodCopyBuffer.cs Fix buffer to texture copy with remap enabled (#1721) 2020-11-17 19:06:02 -03:00
MethodCopyTexture.cs Allow copy destination to have a different scale from source (#1711) 2020-11-20 17:14:45 -03:00
MethodDraw.cs Implement small indexed draws and other fixes to make guest Vulkan work (#1558) 2020-09-24 09:48:34 +10:00
MethodFirmware.cs Ignore exit flag on branch delay slot (#899) 2020-01-22 02:11:43 +01:00
MethodIncrementSyncpoint.cs Implement Counter Queue and Partial Host Conditional Rendering (#1167) 2020-05-04 12:24:59 +10:00
MethodReport.cs Remove GPU MemoryAccessor (#1423) 2020-07-25 16:39:45 +10:00
MethodResetCounter.cs Fix some spelling mistakes 2020-01-09 02:13:00 +01:00
Methods.cs Use "Screen Scissor" as size hint for render targets (#1703) 2020-11-13 10:40:26 +11:00
MethodUniformBufferBind.cs Add XML documentation to Ryujinx.Graphics.Gpu.Engine 2020-01-09 02:13:00 +01:00
MethodUniformBufferUpdate.cs Remove GPU MemoryAccessor (#1423) 2020-07-25 16:39:45 +10:00
ShaderTexture.cs Fix image binding format (#1625) 2020-10-20 19:03:20 -03:00