BME_Vert **verts; ****** verts = MEM_mallocN(sizeof(BME_Vert*)*(rings*segments), "BME_VERTEX pointer array"); ****** for (r = 0; r < rings; r++) { for (i = 0; i <= segments; i++){ float tmpvec[3]; tmpvec[0] = cent[0] + (size/rings)*cos(d); tmpvec[1] = cent[1] + (size/rings)*sin(d); tmpvec[2] = cent[2] + verts[0]->co[2] - ((size/rings)*r);<------verts[0] is empty :S VECCOPY(verts[i]->co, tmpvec); d += e; } }