Fix gfx::setup for instanced attributes

This commit is contained in:
Nikita Lisitsa 2021-07-18 12:32:20 +03:00
parent 6dd5fd5ee7
commit 359f9492b3

View file

@ -436,10 +436,11 @@ namespace psemek::gfx
{ {
gl::EnableVertexAttribArray(a.index); gl::EnableVertexAttribArray(a.index);
gl::VertexAttribDivisor(a.index, a.divisor); gl::VertexAttribDivisor(a.index, a.divisor);
GLuint stride = (a.divisor == 0) ? attribs.vertex_size : attribs.instance_size;
if (a.integer) if (a.integer)
gl::VertexAttribIPointer(a.index, a.size, a.type, attribs.vertex_size, a.pointer); gl::VertexAttribIPointer(a.index, a.size, a.type, stride, a.pointer);
else else
gl::VertexAttribPointer(a.index, a.size, a.type, a.normalized, attribs.vertex_size, a.pointer); gl::VertexAttribPointer(a.index, a.size, a.type, a.normalized, stride, a.pointer);
} }
} }