X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fapp%2FFPSController.hpp;fp=src%2Fapp%2FFPSController.hpp;h=01c745120d579aa209efc550987be912facc3e10;hb=6f94235a5b7c140852703e60c8a74760b8b61d99;hp=88dca64e01d8bbf8872c0f68d2c128a12550b0e7;hpb=f2f254f8d576b48fde9305c3d2927552d1d4c20d;p=blank.git diff --git a/src/app/FPSController.hpp b/src/app/FPSController.hpp index 88dca64..01c7451 100644 --- a/src/app/FPSController.hpp +++ b/src/app/FPSController.hpp @@ -9,13 +9,19 @@ namespace blank { +/// Sets entity rotation and velocity according to stored velocity +/// and pitch/yaw components. +/// Rotation is applied in yaw,pitch order (YX). Velocity is relative +/// to yaw only (Y axis). class FPSController { public: explicit FPSController(Entity &) noexcept; + /// get position and face direction of controlled entity Ray Aim() const noexcept { return entity.Aim(entity.ChunkCoords()); } + /// velocity, relative to heading (yaw only) const glm::vec3 &Velocity() const noexcept { return velocity; } void Velocity(const glm::vec3 &vel) noexcept { velocity = vel; }