]> git.localhorst.tv Git - blobs.git/blobdiff - src/graphics/Camera.hpp
spherical planets
[blobs.git] / src / graphics / Camera.hpp
index 51dd8f15c447e1a67731b816b78f7211f251179d..e4c0b7fce04ddc37841a78ab57f6d667140ddc84 100644 (file)
@@ -5,6 +5,9 @@
 
 
 namespace blobs {
+namespace creature {
+       class Creature;
+}
 namespace world {
        class Body;
 }
@@ -31,13 +34,10 @@ public:
        const world::Body &Reference() const noexcept { return *ref; }
        Camera &Reference(const world::Body &) noexcept;
 
-       /// standing on given surface, with pos.z being elevation over NN
-       /// looking at given coordinates
-       Camera &FirstPerson(int surface, const glm::vec3 &pos, const glm::vec3 &at) noexcept;
-       /// looking straight down at surface from above
-       Camera &MapView(int surface, const glm::vec3 &pos, float roll = 0.0f) noexcept;
        /// look at center, position relative to orbital reference plane for children
        Camera &Orbital(const glm::vec3 &pos) noexcept;
+       /// look at creature from the side, angle in euler (ZXY in surface reference plane)
+       Camera &Radial(const creature::Creature &, double distance, const glm::dvec3 &angle);
 
        const glm::mat4 &Projection() const noexcept { return projection; }
        const glm::mat4 &View() const noexcept { return view; }