Initial support for GPU channels (#2372)
* Ground work for separate GPU channels * Rename TextureManager to TextureCache * Decouple texture bindings management from the texture cache * Rename BufferManager to BufferCache * Decouple buffer bindings management from the buffer cache * More comments and proper disposal * PR feedback * Force host state update on channel switch * Typo * PR feedback * Missing using
This commit is contained in:
parent
12a7a2ead8
commit
a10b2c5ff2
24 changed files with 1745 additions and 1456 deletions
|
@ -112,7 +112,7 @@ namespace Ryujinx.Graphics.Gpu.Engine
|
|||
|
||||
if (completeSource && completeDest)
|
||||
{
|
||||
Image.Texture target = TextureManager.FindTexture(dst, cbp, swizzle, dstLinear);
|
||||
Image.Texture target = TextureCache.FindTexture(dst, cbp, swizzle, dstLinear);
|
||||
if (target != null)
|
||||
{
|
||||
ReadOnlySpan<byte> data;
|
||||
|
@ -209,13 +209,13 @@ namespace Ryujinx.Graphics.Gpu.Engine
|
|||
swizzle.UnpackComponentSize() == 4)
|
||||
{
|
||||
// Fast path for clears when remap is enabled.
|
||||
BufferManager.ClearBuffer(cbp.DstAddress, (uint)size * 4, state.Get<uint>(MethodOffset.CopyBufferConstA));
|
||||
BufferCache.ClearBuffer(cbp.DstAddress, (uint)size * 4, state.Get<uint>(MethodOffset.CopyBufferConstA));
|
||||
}
|
||||
else
|
||||
{
|
||||
// TODO: Implement remap functionality.
|
||||
// Buffer to buffer copy.
|
||||
BufferManager.CopyBuffer(cbp.SrcAddress, cbp.DstAddress, (uint)size);
|
||||
BufferCache.CopyBuffer(cbp.SrcAddress, cbp.DstAddress, (uint)size);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue