1 #ifndef BLOBS_CREATURE_STEERING_HPP_
2 #define BLOBS_CREATURE_STEERING_HPP_
4 #include "Situation.hpp"
5 #include "../math/glm.hpp"
18 void MaxAcceleration(double a) noexcept { max_accel = a; }
19 double MaxAcceleration() const noexcept { return max_accel; }
21 void MaxSpeed(double s) noexcept { max_speed = s; }
22 double MaxSpeed() const noexcept { return max_speed; }
26 void GoTo(const glm::dvec3 &) noexcept;
28 glm::dvec3 Acceleration(const Situation::State &) const noexcept;
31 bool SumForce(glm::dvec3 &out, const glm::dvec3 &in) const noexcept;
34 glm::dvec3 seek_target;
36 double max_accel = 1.0;
37 double max_speed = 1.0;