if (res && !kd_res_end(res)) {
Vec3 nearest;
kd_res_item3f(res, &nearest.x, &nearest.y, &nearest.z);
if (res && !kd_res_end(res)) {
Vec3 nearest;
kd_res_item3f(res, &nearest.x, &nearest.y, &nearest.z);
glVertex3f(p.x, p.y, p.z);
Vec3 dir = normalize(hair[i].pos - p) * hair_length;
Vec3 end = p + dir;
glVertex3f(p.x, p.y, p.z);
Vec3 dir = normalize(hair[i].pos - p) * hair_length;
Vec3 end = p + dir;