INNER CODE UNIT · C++
t1
symphony-of-empires/symphony-of-empires · eng3d/eng3d/borders.cpp:193
float t1 = t - 1;
float t2 = t + 0;
float t3 = t + 1;
glm::vec3 pt(0, 0, 0);
pt += p0 * (+1.f / 6.f * glm::pow(t0, 3.f) + 2.f * t0 + 4.f / 3.f + glm::pow(t0, 2.f));
pt += p3 * (-1.f / 6.f * glm::pow(t3, 3.f) - 2.f * t3 + 4.f / 3.f + glm::pow(t3, 2.f));
pt += p1 * (-1.f / 2.f * glm::pow(t1, 3.f) - glm::pow(t1, 2.f) + 2.f / 3.f);
pt += p2 * (+1.f / 2.f * glm::pow(t2, 3.f) - glm::pow(t2, 2.f) + 2.f / 3.f);
curve_points.push_back(pt);
}
}
std::vector<glm::vec3> normals(curve_points.size() - 1, glm::vec3(0, 0, 1));
curve->add_line(curve_points, normals, 1.0f);
}
curve->upload();
this->curves.push_back(std::move(curve));
}