builder.normal(0, 0, -1);
builder.texcoord(0.5, 0);
- builder.vertex(0, 0, -length/2+radius);
+ builder.vertex(0, 0, -length/2-radius);
for(unsigned i=1; i<rings; ++i)
{
float cz = length*(i>rings/2 ? 0.5 : -0.5);
float sc = cos(sa);
float ss = sin(sa);
builder.normal(rs*sc, rs*ss, -rc);
- if(tangent_attr)
- {
+ if(tangent_attr>=0)
builder.attrib(tangent_attr, -ss, sc, 0);
+ if(binormal_attr>=0)
builder.attrib(binormal_attr, rc*sc, rc*ss, rs);
- }
builder.texcoord(j*u_scale, v);
builder.vertex(rs*sc*radius, rs*ss*radius, cz-rc*radius);
}
}
builder.normal(0, 0, 1);
builder.texcoord(0.5, (length+radius*M_PI)*v_scale);
- builder.vertex(0, 0, length/2-radius);
+ builder.vertex(0, 0, length/2+radius);
for(unsigned i=0; i<segments; ++i)
{