Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Guardar Pantalla Con Opengl

Iniciado por javiel, 26 de Enero de 2006, 01:58:19 PM

« anterior - próximo »

javiel

 Estoy usando SDL + OpenGL y necesito guardar la imagen que hay en pantalla en jpg, o lo que sea, png, bmp, etc..

Existe alguna manera sencilla de hacerlo??

gracias a todos y un saludo
uper-Tirititran: el superhéroe gaditano (http://www.super-tirititran.com)

zupervaca

 Si es guardar lo que estas renderizado tu mismo necesitas crear pbuffers que son como los render targets de direct3d, lo unico que tienes que mirar si tienes o no la extension.

Ithaqua

 pbuffers para que?

javiel: lo que puedes hacer es usar glReadPixels() para leer el contenido del framebuffer y guardarlo en una zona tuya de memoria. El siguiente paso sería volcarlo a disco en algún formato relativamente sencillo a mano (bmp, tga) o usando alguna librería externa para guardarlo en jpg, png etc.
thaqua^Stravaganza
http://ithaqua.stravaganza.org

ethernet

 En cone3d hay una función muy útil, la llamas y te guarda en un fichero (tga) la pantalla actual:

http://cone3d.gamedev.net/cgi-bin/index.pl...age=code/shotta


marcode

 Aquí hay un ejemplo para guardarlo en tga.

No se si es el mismo que acaba de poner Ethernet.
size=9]afortunadamente siempre ha habido alguien dispuesto a reinventar la rueda, de lo contrario seguiríamos usando un disco de piedra con un agujero.[/size]

ethernet

Cita de: "marcode"Aquí hay un ejemplo para guardarlo en tga.

No se si es el mismo que acaba de poner Ethernet.
Es similar, quizás más completo y claro el que has puesto tú. Yo he usado el que he puesto yo y funciona perfectamente.

nsL

 No se como funciona SDL+OGL. si realmente usas surfaces, o solo usas SDL para crear la pantalla a la que le pasas el contexto de ogl. En cualquier caso si finalmente trabajas con una surface como pantalla puedes usar la funcion SDL_SaveBMP que te pasa una surface a .bmp . Link

Saludos!
Yo no muero hasta la muerte -

ALRAZ

 DevIL hace todo ese trabajo por ti:

http://openil.sourceforge.net/

te permite cargar varios tipos de imagenes.
además ha sido planeado para integrarse bien con opengl

y por si eso fuera poco, puedes guardar a varios formatos de imagen, asi como tomar Escrin Chots  (ole)