Cleanup OGLShader

This commit is contained in:
ReinUsesLisp 2018-07-18 15:38:35 -03:00
commit 4a21fd1cda

View file

@ -245,12 +245,15 @@ namespace Ryujinx.Graphics.Gal.OpenGL
Programs.Add(Current, Handle); Programs.Add(Current, Handle);
} }
if (Handle != CurrentProgramHandle)
{
GL.UseProgram(Handle); GL.UseProgram(Handle);
BindUniformBuffers(Handle); BindUniformBuffers(Handle);
CurrentProgramHandle = Handle; CurrentProgramHandle = Handle;
} }
}
private void AttachIfNotNull(int ProgramHandle, ShaderStage Stage) private void AttachIfNotNull(int ProgramHandle, ShaderStage Stage)
{ {
@ -266,7 +269,7 @@ namespace Ryujinx.Graphics.Gal.OpenGL
{ {
int FreeBinding = 0; int FreeBinding = 0;
int BindUniformBlocksIfNotNull(ShaderStage Stage) void BindUniformBlocksIfNotNull(ShaderStage Stage)
{ {
if (Stage != null) if (Stage != null)
{ {
@ -285,8 +288,6 @@ namespace Ryujinx.Graphics.Gal.OpenGL
FreeBinding++; FreeBinding++;
} }
} }
return FreeBinding;
} }
BindUniformBlocksIfNotNull(Current.Vertex); BindUniformBlocksIfNotNull(Current.Vertex);
@ -300,7 +301,7 @@ namespace Ryujinx.Graphics.Gal.OpenGL
{ {
int FreeBinding = 0; int FreeBinding = 0;
int BindUniformBuffersIfNotNull(ShaderStage Stage) void BindUniformBuffersIfNotNull(ShaderStage Stage)
{ {
if (Stage != null) if (Stage != null)
{ {
@ -313,8 +314,6 @@ namespace Ryujinx.Graphics.Gal.OpenGL
FreeBinding++; FreeBinding++;
} }
} }
return FreeBinding;
} }
BindUniformBuffersIfNotNull(Current.Vertex); BindUniformBuffersIfNotNull(Current.Vertex);