gKit2 light
app.h
Go to the documentation of this file.
1 
2 #ifndef _APP_H
3 #define _APP_H
4 
5 #include "window.h"
6 
7 
9 
11 
19 class App
20 {
21 public:
23  App( const int width, const int height, const int major= 3, const int minor= 3, const int samples= 0 );
24  virtual ~App( );
25 
27  virtual int init( ) = 0;
29  virtual int quit( ) = 0;
30 
32  virtual int update( const float time, const float delta ) { return 0; }
34  virtual int render( ) = 0;
35 
37  int run( );
38 
39 protected:
40  virtual int prerender( ) { return update(global_time(), delta_time()); }
41  virtual int postrender( ) { return 0; }
42 
43  void vsync_off( );
44 
45  Window m_window;
46  Context m_context;
47 
48  bool sync;
49 };
50 
51 
52 #endif // _APP_H
classe application.
Definition: app.h:20
virtual int render()=0
a deriver pour afficher les objets. renvoie 1 pour continuer, 0 pour fermer l'application.
App(const int width, const int height, const int major=3, const int minor=3, const int samples=0)
constructeur, dimensions de la fenetre et version d'openGL.
Definition: app.cpp:11
int run()
execution de l'application.
Definition: app.cpp:36
virtual int init()=0
a deriver pour creer les objets openGL. renvoie -1 pour indiquer une erreur, 0 sinon.
virtual int update(const float time, const float delta)
a deriver et redefinir pour animer les objets en fonction du temps.
Definition: app.h:32
virtual int quit()=0
a deriver pour detruire les objets openGL. renvoie -1 pour indiquer une erreur, 0 sinon.
float delta_time()
renvoie le temps ecoule depuis la derniere frame, en millisecondes.
Definition: window.cpp:137
float global_time()
renvoie le temps ecoule depuis le lancement de l'application, en millisecondes.
Definition: window.cpp:128