public int SetUniformMatrix2(string uniformName, mat2[] m)
{
int location = GetUniformLocation(uniformName);
if (location >= 0)
{
if (glUniformMatrix2fv == null) { glUniformMatrix2fv = OpenGL.GetDelegateFor<OpenGL.glUniformMatrix2fv>(); }
var values = new float[m.Length * 4];
for (int index = 0, i = 0; i < m.Length; i++)
{
float[] array = m[i].ToArray();
for (int j = 0; j < 4; j++)
{
values[index++] = array[j];
}
}
glUniformMatrix2fv(location, m.Length / 4, false, values);
}
return location;
}