| 37 | } |
| 38 | |
| 39 | void Camera::generateSpline(std::vector<TrackBlock> trackBlock) { |
| 40 | std::vector<glm::vec3> cameraPoints; |
| 41 | for (auto &track_block : trackBlock) { |
| 42 | cameraPoints.emplace_back(glm::vec3(track_block.center.x, track_block.center.y + 0.2, track_block.center.z)); |
| 43 | } |
| 44 | cameraSpline = HermiteCurve(cameraPoints, 0.1f, 0.0f); |
| 45 | loopTime = cameraSpline.points.size() * 100; |
| 46 | hasSpline = true; |
| 47 | } |
| 48 | |
| 49 | void Camera::useSpline(float elapsedTime) { |
| 50 | ASSERT(hasSpline, "Attempted to use Camera spline without generating one first with \'generateSpline\'"); |