#include "atkui/framework.h" #include "atk/toolkit.h" #include #include using namespace glm; using namespace atk; class ParticleExample : public atkui::Framework { public: ParticleExample() : atkui::Framework(atkui::Orthographic) // calls base class ctor { } virtual void setup() { _pos = vec3(0,0,0); _velocity = vec3(100,100,0); _gravity = vec3(0,-100,0); _mass = 2.0; } virtual void update() { vec3 accumForces = _gravity; vec3 acc = accumForces / _mass; _pos = _pos + dt() * _velocity; _velocity = _velocity + dt() * acc; } virtual void scene() //overrides draw { update(); setColor(vec3(1,0,0)); drawSphere(_pos, 10); } private: vec3 _gravity; vec3 _velocity; vec3 _pos; float _mass; }; int main(int argc, char** argv) { ParticleExample viewer; viewer.run(); return 0; }