void PrimitiveBuilder::vertex_(const Vector4 &v)
{
- vab.color(col);
- vab.normal(nor);
- for(std::map<unsigned, Vector4>::iterator i=texc.begin(); i!=texc.end(); ++i)
- vab.multitexcoord(i->first, i->second);
- for(std::map<unsigned, Vector4>::iterator i=attr.begin(); i!=attr.end(); ++i)
- vab.attrib(i->first, i->second);
+ for(VertexAttribute a: array.get_format())
+ {
+ unsigned sem = get_attribute_semantic(a);
+ if(sem<attr.size())
+ vab.attrib(sem, attr[sem]);
+ }
vab.vertex(v);
if(in_batch)