This is a very elementary question. At the moment I am drawing lots of faces separately by setting a location uniform separately for each one of them. This is very slow. As I understand it, the correct way to do this is to build a large mesh and draw it all at once.
I am not sure if I understand how to do this, and since it is quite a bit of work, I would prefer to know before I start doing.
The only thing I can think of is to create a large vertex coordinate array that has the information of global world position instead of the vertex coordinates in -1...1 range, and use that as vertex position attribute without changing the location uniform for each face. Then I need to create a corresponding array that takes care of the indices of the points to form proper faces.
In case this is correct so far, are texture coordinates and face normals produced the same way?