C++ y OpenGL

Hola,
Estoy haciendo un pequeño programa gráfico con opengl, y para añadirle funcionalidades uso c++. Necesitaría hacer un contador incremental del tiempo. Ej- que marque el tiempo que llevas jugando (horas, minutos, segundos).
Lo he intentando, pero no consigo que al mostrarlo se mueva como sucede con el uso de las funciones que muestran la hora de la biblioteca time.
¿Podrías ayudarme?
Gracias
{"Lat":42.8288346442883,"Lng":-8.89035129599506}
Respuesta
1
Es bastante probable que pueda ayudarle.
Tengo un par de ideas.
1º Supongo que al tratarse de un juego, el programa se ejecutara en un bucle infinito hasta que se decida salir del juego, por tanto podrías introducir una variable contadora incremental en ese bucle que al llegar asta cierto valor (el equivalente a número de loops por segundo) haga que la variable segundos aumente en 1 y la variable contadora vuelva a cero.
A continuación se lo ejemplifico a grosso modo
//al principio de tu script
int seg=0, loopsSeg=0;
//A continuacion le escribo lo que supongo que es su bucle infinito:
while(...){
  //tu codigo aqui
  //debajo de tu codigo:
  loopSeg++;
  if(loopSeg==NUM){
    seg++;
    loopSeg=0;
  }
}
----------------------------
Dónde pone NUM es el número de loops por segundo lo cual tendrás que calcular por tu cuenta, si no sabes como hacerlo, pregunta.
Por supuesto que tendrías que buscar un algoritmo para ver cuantos minutos y horas van pasando, lo cual no es nada difícil
2º Usar la librería time. Aunque supongo que si me hace referencia a ella pues es que no puede usarla.
Agradezco tu ayuda, aunque en definitiva no me sirvió de mucho. Mi problema era al imprimir el contador, que no era capaz de actualizarlo segundo a segundo. No que no fuera capaz de hacerlo.
De todos modos, muchas gracias por intentarlo !
Saludos

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas