Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Videojuego

Estas en el tema de Videojuego en el foro de C/C++ en Foros del Web. /** \brief Carga en memoria una imagen guardada en un fichero. La imagen debe estar en formato BMP y se debe especificar el path completo ...
  #1 (permalink)  
Antiguo 23/04/2015, 05:02
 
Fecha de Ingreso: abril-2015
Mensajes: 9
Antigüedad: 9 años
Puntos: 0
Videojuego

/**
\brief Carga en memoria una imagen guardada en un fichero. La imagen debe estar en formato BMP y se debe especificar el path completo incluido el nombre del fichero.
\param fichero Nombre del fichero de donde leer la imagen.
\param transparencia Parámetro que indica si la imagen debe considerarse transparente o no. Cualquier valor distinto de 0 indicará a la función que asuma
que el color del pixel situado en las coordenadas (0,0) se debe considerar transparente en toda la imagen.
\return La imagen cargada.
*/
Imagen Pantalla_ImagenLee(char *fichero, int transparencia);

¿Alguien me puede indicar como se carga una imagen guardada en un fichero en memoria, para hacer un juego en programacion c, utilizando codeblocks. Gracias
  #2 (permalink)  
Antiguo 23/04/2015, 05:12
 
Fecha de Ingreso: octubre-2014
Ubicación: Madrid
Mensajes: 1.212
Antigüedad: 9 años, 6 meses
Puntos: 204
Respuesta: Videojuego

Una imagen guardada en disco no es más que un fichero con contenido binario... este contenido guarda información acerca del color de cada pixel. Dependiendo del formato empleado esta información se guardará de diferentes formas, por eso la misma imagen genera archivos de diferentes tamaños al guardarla en diferentes formatos.

Para recuperar la imagen tienes que abrir el archivo y leer su contenido. No tendría mayor misterio si no fuese porque, salvo que uses alguna librería que te abstraiga de esta tarea, tienes que conocer los detalles del formato de la imagen para poder llevar a memoria información útil que permita recuperar la imagen.

Como ya he comentado otras veces, el uso de un IDE específico (codeblocks en tu caso) es totalmente irrelevante... ya que lo que va a generar un programa a partir del código es el compilador, no el IDE (que es sólo un intermediario del que perfectamente puedes prescindir si te lo planteas).

Si quieres hacer un juego en C (o en C++... dejémoslo en hacer un juego) tendrás que buscar alguna librería que te ofrezca funciones gráficas (SFML, Qt, otras...) ya que no es demasiado práctico crear tus propios drivers para pintar en la pantalla. En cualquier caso me parece un proyecto ligeramente ambicioso en estos momentos... yo en tu lugar primero probaría a hacer prácticas con imágenes para empezar a conocer las librerías gráficas y luego más adelante me lanzaría a programar el juego.

Un saludo
  #3 (permalink)  
Antiguo 23/04/2015, 05:17
Avatar de vangodp  
Fecha de Ingreso: octubre-2013
Mensajes: 934
Antigüedad: 10 años, 6 meses
Puntos: 38
Respuesta: Videojuego

En codeblocks con SFML puedo ayudar a cargar una imagen si quieres.
  #4 (permalink)  
Antiguo 23/04/2015, 13:22
 
Fecha de Ingreso: abril-2015
Mensajes: 9
Antigüedad: 9 años
Puntos: 0
Respuesta: Videojuego

muchas gracias por vuestro interes,

Etiquetas: char, int, memoria, programa
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:43.