From 5b8baae482a4abd068ab69607469673f0eb51b9c Mon Sep 17 00:00:00 2001 From: ReinUsesLisp Date: Mon, 23 Jul 2018 15:32:16 -0300 Subject: [PATCH] Some cleanup --- Ryujinx.HLE/Gpu/Engines/NvGpuEngine3d.cs | 40 +++++++++--------------- 1 file changed, 14 insertions(+), 26 deletions(-) diff --git a/Ryujinx.HLE/Gpu/Engines/NvGpuEngine3d.cs b/Ryujinx.HLE/Gpu/Engines/NvGpuEngine3d.cs index d4525cdb8f..3dd0e98e60 100644 --- a/Ryujinx.HLE/Gpu/Engines/NvGpuEngine3d.cs +++ b/Ryujinx.HLE/Gpu/Engines/NvGpuEngine3d.cs @@ -25,9 +25,7 @@ namespace Ryujinx.HLE.Gpu.Engines private HashSet FrameBuffers; - private List UploadedIndexes; - private List UploadedVertices; - private List UploadedTextures; + private List[] UploadedKeys; public NvGpuEngine3d(NvGpu Gpu) { @@ -62,9 +60,12 @@ namespace Ryujinx.HLE.Gpu.Engines FrameBuffers = new HashSet(); - UploadedIndexes = new List(); - UploadedVertices = new List(); - UploadedTextures = new List(); + UploadedKeys = new List[(int)NvGpuBufferType.Count]; + + for (int i = 0; i < UploadedKeys.Length; i++) + { + UploadedKeys[i] = new List(); + } } public void CallMethod(NvGpuVmm Vmm, NvGpuPBEntry PBEntry) @@ -528,8 +529,6 @@ namespace Ryujinx.HLE.Gpu.Engines { Gpu.Renderer.Texture.Bind(Key, TexIndex); - UploadedIndexes.Add(Key); - HasCachedTexture = true; } } @@ -702,9 +701,10 @@ namespace Ryujinx.HLE.Gpu.Engines if (Mode == 0) { - UploadedIndexes.Clear(); - UploadedVertices.Clear(); - UploadedTextures.Clear(); + foreach (List Uploaded in UploadedKeys) + { + Uploaded.Clear(); + } //Write mode. Vmm.WriteInt32(Position, Seq); @@ -791,28 +791,16 @@ namespace Ryujinx.HLE.Gpu.Engines private bool QueryKeyUpload(NvGpuVmm Vmm, long Key, long Size, NvGpuBufferType Type) { - List UploadedKeys = TypeUploadedList(Type); + List Uploaded = UploadedKeys[(int)Type]; - if (UploadedKeys.Contains(Key)) + if (Uploaded.Contains(Key)) { return false; } - UploadedKeys.Add(Key); + Uploaded.Add(Key); return Vmm.IsRegionModified(Key, Size, Type); } - - private List TypeUploadedList(NvGpuBufferType Type) - { - switch (Type) - { - case NvGpuBufferType.Index: return UploadedIndexes; - case NvGpuBufferType.Vertex: return UploadedVertices; - case NvGpuBufferType.Texture: return UploadedTextures; - - default: throw new ArgumentException(nameof(Type)); - } - } } } \ No newline at end of file