X-Git-Url: https://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fphysics%2FSimulation.hpp;fp=src%2Fphysics%2FSimulation.hpp;h=9d41877365bec36753cbc75b8c021dfa370756a9;hb=d220b0348951ce210ad4ea18dbe9934dd2999a60;hp=0000000000000000000000000000000000000000;hpb=9932ee17a767b64cb52c213e133c6b91a90a8dd2;p=gong.git diff --git a/src/physics/Simulation.hpp b/src/physics/Simulation.hpp new file mode 100644 index 0000000..9d41877 --- /dev/null +++ b/src/physics/Simulation.hpp @@ -0,0 +1,34 @@ +#ifndef GONG_PHYSICS_SIMULATION_HPP_ +#define GONG_PHYSICS_SIMULATION_HPP_ + +#include "../graphics/glm.hpp" + +#include + + +namespace gong { +namespace physics { + +struct Derivative; +struct Object; +struct State; + +class Simulation { + +public: + void Update(float dt); + +private: + void Integrate(State &, float dt); + Derivative Evaluate(const State &, float dt, const Derivative &); + +private: + std::vector objects; + glm::vec3 gravity; + +}; + +} +} + +#endif