recientemente estoy iniciado dando los primeros pasos programando videojuegos en c++ con la liberia SDL.
Creando la parte del contador del juego he notado que me da un problema a largo plazo...
no libero memoria.. y eso hace que el proceso cada vez vaya ocupando mas y mas memoria y asta que llega a decirme segmention fault...
como soluciono eso?
La cosa es hacer un contador... y que cada bucle ese contador canvie a +1.. por ejemplo
aqui os dejo el codigo de como lo tengo echo:
Cita:
Alguna ayuda?:D/ Cargamos la fuente que vamos a utilizar de tamaño 40
TTF_Font *fuente;
fuente = TTF_OpenFont("ariblk.ttf", 30);//tamañao de la letra
//////////////////////////////////////////////////////////////////////////////////
/*prueba score*/
SDL_Surface *ttext;
SDL_Color bgcolor,fgcolor;//para los colores
// inicializa colores para el texto
fgcolor.r=200;
fgcolor.g=200;
fgcolor.b=10;
bgcolor.r=255;
bgcolor.g=0;
bgcolor.b=0;
int num=200;
char msg[30];
SDL_Rect rectangulo;
int done=0;
while(done==0){
SDL_FillRect(pantalla,&rectangulo,SDL_MapRGB(panta lla->format,0,0,0));
sprintf(msg,"%d",num);
ttext = TTF_RenderText_Shaded(fuente,msg,fgcolor,bgcolor);
num++;
SDL_BlitSurface(ttext,NULL,pantalla,&rectangulo);
SDL_Flip(pantalla);
SDL_FreeSurface(pantalla);
}
TTF_Font *fuente;
fuente = TTF_OpenFont("ariblk.ttf", 30);//tamañao de la letra
//////////////////////////////////////////////////////////////////////////////////
/*prueba score*/
SDL_Surface *ttext;
SDL_Color bgcolor,fgcolor;//para los colores
// inicializa colores para el texto
fgcolor.r=200;
fgcolor.g=200;
fgcolor.b=10;
bgcolor.r=255;
bgcolor.g=0;
bgcolor.b=0;
int num=200;
char msg[30];
SDL_Rect rectangulo;
int done=0;
while(done==0){
SDL_FillRect(pantalla,&rectangulo,SDL_MapRGB(panta lla->format,0,0,0));
sprintf(msg,"%d",num);
ttext = TTF_RenderText_Shaded(fuente,msg,fgcolor,bgcolor);
num++;
SDL_BlitSurface(ttext,NULL,pantalla,&rectangulo);
SDL_Flip(pantalla);
SDL_FreeSurface(pantalla);
}
SDL_CLOSETTF al tener memoria activa no me deja cerrar la fuente.. nose he provado todo lo que se me ocurrio ;S