I don't fully understand the differences between uniforms and attributes. To be honest, I probably haven't even used attributes.
Can uniforms change for each vertex? I mean to calculate the vertex's position in screen space I just multiply the vertex's local position by the model matrix, then by the view matrix and then by the projection matrix.
Projection is constant throughout the whole scene, view is constant throughout one frame, but the model matrix changes with every object. Meaning the uniform I supply to the vertex shader as the model matrix changes a lot of times per frame. Is that good? I mean I don't see another way of transforming the object...