Fix OpenGL integer vector uniforms

Initial state was only being serialized for the first element.
This commit is contained in:
BJ
2019-06-24 18:40:23 +01:00
committed by Baldur Karlsson
parent 0d2849458b
commit 42e0ee8a36
+12 -3
View File
@@ -571,11 +571,20 @@ void DoSerialise(SerialiserType &ser, ProgramUniformValue &el)
case eGL_FLOAT_MAT2:
case eGL_DOUBLE_MAT2:
case eGL_FLOAT_VEC4:
case eGL_DOUBLE_VEC4: elemCount = 4; break;
case eGL_DOUBLE_VEC4:
case eGL_INT_VEC4:
case eGL_UNSIGNED_INT_VEC4:
case eGL_BOOL_VEC4: elemCount = 4; break;
case eGL_FLOAT_VEC3:
case eGL_DOUBLE_VEC3: elemCount = 3; break;
case eGL_DOUBLE_VEC3:
case eGL_INT_VEC3:
case eGL_UNSIGNED_INT_VEC3:
case eGL_BOOL_VEC3: elemCount = 3; break;
case eGL_FLOAT_VEC2:
case eGL_DOUBLE_VEC2: elemCount = 2; break;
case eGL_DOUBLE_VEC2:
case eGL_INT_VEC2:
case eGL_UNSIGNED_INT_VEC2:
case eGL_BOOL_VEC2: elemCount = 2; break;
default:
// all other types are elemCount = 1
break;