End render target lifetime on syncpoint increment (#6687)
This commit is contained in:
parent
9839cd56fb
commit
7070cf6ae5
2 changed files with 9 additions and 0 deletions
|
@ -157,6 +157,9 @@ namespace Ryujinx.Graphics.Gpu.Engine.GPFifo
|
||||||
}
|
}
|
||||||
else if (operation == SyncpointbOperation.Incr)
|
else if (operation == SyncpointbOperation.Incr)
|
||||||
{
|
{
|
||||||
|
// "Unbind" render targets since a syncpoint increment might indicate future CPU access for the textures.
|
||||||
|
_parent.TextureManager.RefreshModifiedTextures();
|
||||||
|
|
||||||
_context.CreateHostSyncIfNeeded(HostSyncFlags.StrictSyncpoint);
|
_context.CreateHostSyncIfNeeded(HostSyncFlags.StrictSyncpoint);
|
||||||
_context.Synchronization.IncrementSyncpoint(syncpointId);
|
_context.Synchronization.IncrementSyncpoint(syncpointId);
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,6 +4,7 @@ using Ryujinx.Graphics.Gpu.Engine.Dma;
|
||||||
using Ryujinx.Graphics.Gpu.Engine.InlineToMemory;
|
using Ryujinx.Graphics.Gpu.Engine.InlineToMemory;
|
||||||
using Ryujinx.Graphics.Gpu.Engine.Threed;
|
using Ryujinx.Graphics.Gpu.Engine.Threed;
|
||||||
using Ryujinx.Graphics.Gpu.Engine.Twod;
|
using Ryujinx.Graphics.Gpu.Engine.Twod;
|
||||||
|
using Ryujinx.Graphics.Gpu.Image;
|
||||||
using Ryujinx.Graphics.Gpu.Memory;
|
using Ryujinx.Graphics.Gpu.Memory;
|
||||||
using System;
|
using System;
|
||||||
using System.Runtime.CompilerServices;
|
using System.Runtime.CompilerServices;
|
||||||
|
@ -28,6 +29,11 @@ namespace Ryujinx.Graphics.Gpu.Engine.GPFifo
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public MemoryManager MemoryManager => _channel.MemoryManager;
|
public MemoryManager MemoryManager => _channel.MemoryManager;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Channel texture manager.
|
||||||
|
/// </summary>
|
||||||
|
public TextureManager TextureManager => _channel.TextureManager;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 3D Engine.
|
/// 3D Engine.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
Reference in a new issue