Open GL - sobre carga de memoria en opengl

   
Vista:

sobre carga de memoria en opengl

Publicado por Daniel ORopeza (4 intervenciones) el 26/11/2007 17:40:43
hola hice un pequeño programa con opengl, usando la libreria glut, es una especie de menu por teclado y cada ves que c preciono una tecla la imagen cambia el problema no es ese puesto que yo queria hacer eso el problema esque cada bes que cambia de imagen o textura, aumenta el uso en la memoria osea crea nuevos puntero quiero de memoria, quisiera saber si existe n c++ una instruccion que limpie la memoria sin nececidad de utilizar programas externos como free ram o otros , lo que quiero es que la limpiesa la aga el mismo programa antes de que cambie te textuta.
o si puedo crear una funcion que haga este trabajo , y si se pudiese como la hago.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:sobre carga de memoria en opengl

Publicado por Angel Romero (1 intervención) el 26/11/2007 18:45:03
Hola Daniel, es simple

cuando declaras una variable, es el propio programa quien se encarga de liberar la memoria, pero si declaras un puntero, y creas con el memoria dinamica con las instrucciones new o malloc, esta memoria debes liberarla tu

si usas malloc, usa para liberar la memoria free (creo q era asi)

yo uso new (de c++) y libero con delete.

Te muestro un ejempplo

int * p;

p = new int [100];

// Ahora, libero la memoria, sino, el programa tendria un bug grave

delete p;

Y listo.
Espero que te sirva de ayuda.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:sobre carga de memoria en opengl

Publicado por daniel oropeza (4 intervenciones) el 29/11/2007 17:11:12
Es lo mas logico que me han dicho hasta ahora
el menu que hise, lo hice imbentado poerque no sabia como hacerlo el fichero textura .cpp que cree tiene tambien una parte que dice eliminar puntero y es muy parecido al lo que me mencionas es algo asi:

//********** ASIGNAMOS MEMORIA **********************

pImage = new Image;

// NUMERO DE COMPONENTES DE COLOR 3 =RGB
pImage->numComponents=3;

// EL ANCHO DE LA IMAGEN
pImage->sizeX = pBitmap->sizeX;
pImage->sizeY = pBitmap->sizeY; // EL ALTO DE LA IMAGEN
pImage->data = pBitmap->data; // EL PUNTERO DE LA IMAGEN

//********** SE LIBERA LA MEMORIA ASIGNADA **********
delete[] pBitmap;
//********** CIERRE EL ARCHIVO **********************
f.close();

segun libera la memoria asignada pero cada bes que se sierra el programa
quiero saber como ago para liberlo cada bes que se crea o cambia una nueva textura este ejemplo que mediste me sirbe tambien
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar