Improve shader sending method to GAL, use a memory interface instead of reading a fixed array size and sending every time

This commit is contained in:
gdkchan 2018-05-22 22:43:31 -03:00
parent 84996ccd36
commit 79e0070363
12 changed files with 72 additions and 63 deletions

View file

@ -198,14 +198,14 @@ namespace Ryujinx.Graphics.Gal.OpenGL
ActionsQueue.Enqueue(() => Rasterizer.DrawElements(VbIndex, First, PrimType));
}
public void CreateShader(long Tag, GalShaderType Type, byte[] Data)
public void CreateShader(IGalMemory Memory, long Tag, GalShaderType Type)
{
if (Data == null)
if (Memory == null)
{
throw new ArgumentNullException(nameof(Data));
throw new ArgumentNullException(nameof(Memory));
}
Shader.Create(Tag, Type, Data);
Shader.Create(Memory, Tag, Type);
}
public void SetConstBuffer(long Tag, int Cbuf, byte[] Data)