Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - peterfly

#41
Programación C/C++ / Re: libreria de csprite.h???
30 Septiembre 2011, 23:20 PM
si que e instalado bien el sdl i e probado de poner lo que me digistes i me sigue igual

EI: juntando mensajes.

por eso preguntaba si ay alguna libreria para csprite.h

EI: juntando mensajes otra vez, la proxima borro.

aora se que no es una libreria... tengo bien instalado el c++... pero lo que me faltaba es añadir el copilador i el linker...

me podeis pasar lo se se escribe en el copilador i el linker???

(opciones de proyecto/parametros)
#42
Programación C/C++ / Re: libreria de csprite.h???
30 Septiembre 2011, 23:02 PM
del libro:
programación de videojuegos con sdl
#43
Programación C/C++ / Re: libreria de csprite.h???
30 Septiembre 2011, 22:49 PM
como se llama la libreria???
#44
Programación C/C++ / libreria de csprite.h???
30 Septiembre 2011, 22:27 PM
he intentado ejecutar un codigo que contiene
#include "csprite.h"

pero al ejecutar me dice "csprite.h: No such file or directory"
no se mucho ingles por eso e cogido el traductor i traducido me dice "csprite.h: No existe el fichero o directorio"

a caso tengo que instalar una libreria???
#45
Diseño Gráfico / Re: .bmp y .png???
24 Septiembre 2011, 18:52 PM
muchas gracias
#46
Diseño Gráfico / .bmp y .png???
24 Septiembre 2011, 18:32 PM
Revisando unos codigos por internet sobre codigos de juegos me fije i en unos tenia puesto donde se carga la imagen .bmp y en otros .png
QUE DIFERENCIA AY???
#47
Tengo un codigo que me permite mover una imagen por la pantalla presionando unas taclas (cundo lo ejecuto)...

Pero eso no es lo que io buscaba...

Lo que io buscaba es que al peroionsar las teclas canvie una imagen a otra

OS AGRADECERIA TODA ayuda

el codigo que tengo es:
#include <stdlib.h>
#include <SDL/SDL.h>

int main(int argc, char *argv[])
{
SDL_Surface *screen;
SDL_Surface *fondo;
SDL_Surface *protagonista;
SDL_Rect destino;
int i, j;
int xProt = 320, yProt= 400;
int terminado = 0;
SDL_Event suceso;
Uint8* teclas;


/* Tratamos de inicializar la biblioteca SDL */
if (SDL_Init(SDL_INIT_VIDEO) < 0) {
printf("No se pudo inicializar SDL: %s\n", SDL_GetError());
exit(1);
}

/* Preparamos las imagenes a mostrar */
fondo = SDL_LoadBMP("fondo.bmp");
protagonista = SDL_LoadBMP("fondo1.bmp");

/* Si todo ha ido bien, hacemos algo:
entrar a modo grafico y cambiar el título de la ventana */
screen = SDL_SetVideoMode( 640, 480, 16, SDL_HWSURFACE );
if(screen == NULL) {
printf( "Error al entrar a modo grafico: %s\n", SDL_GetError() );
SDL_Quit();
return -1;
   }

/* Titulo de la ventana */
SDL_WM_SetCaption( "programa de procva!", "Hola Mundo 3!" );

/* Parte repetitiva: hasta que se elija terminar */
while(terminado == 0) {

/* Dibujamos la imagen de fondo */
/* Como tiene 207 x 211 pixeles, la repetimos varias veces */
for (i=0; i<3; i++)
for (j=0; j<3; j++) {
destino.x=207*i;
destino.y=211*j;
SDL_BlitSurface(fondo, NULL, screen, &destino);
  }

/* Dibujamos el protagonista */
destino.x=xProt;
  destino.y=yProt;
  SDL_BlitSurface(protagonista, NULL, screen, &destino);

      /* Actualizamos la pantalla */
    SDL_Flip(screen);

     /* Miramos si hay algun suceso pendiente,
       entre ellos, peticion de abandonar el programa
         (pulsar la X de la ventana) o tecla ESC */
    while (SDL_PollEvent(&suceso)) {
        if (suceso.type == SDL_QUIT)    terminado = 1;
          if (suceso.type == SDL_KEYDOWN)
           if (suceso.key.keysym.sym == SDLK_ESCAPE)  terminado = 1;
        }

        /* Vemos el estado indivudal de las demas teclas */
      teclas = SDL_GetKeyState(NULL);
         if (teclas[SDLK_UP]) { yProt -= 2; }
  if (teclas[SDLK_DOWN]) { yProt += 2; }
       if (teclas[SDLK_LEFT]) { xProt -= 3; }
     if (teclas[SDLK_RIGHT]) { xProt += 3; }

    /* Y esperamos 50 ms antes de repetir */
        SDL_Delay( 50 );
}

/* Finalmente, preparamos para salir */
  SDL_Quit();
   return 0;
}


Como ago para que vaian canviando de imagen al presionar las teclas???
#48
Programación C/C++ / Re: fondo sdl con foto
24 Septiembre 2011, 00:03 AM
problema resuelto!!!

#include <stdio.h>
#include <stdlib.h>
#include <SDL/SDL.h>
/* se incluye SDL_image.h para los metodos de
carga de imagenes */
#include <SDL/SDL_image.h>
/* metodo que permite cargar imagenes y las devuelve
como SDL_Surface */
SDL_Surface* cargarImagen(char *rejilla)
{
/* SDL tiene metodos para cargar cada tipo de imagen
BMP,PCX,JPG,GIF,etc. pero este metodo (IMG_Load())
automaticamente carga imagenes sin preguntar el tipo*/
SDL_Surface *image = IMG_Load(rejilla);
return image;
}
/* metodo que permite dibujar una *imagen previamente cargada
(con cargarImagen()), y dibujarla en una superficie dada
(en este caso *screen), en la posicion (x,y)*/
void dibujaImagen(SDL_Surface *screen, SDL_Surface *imagen, int x, int y)
{
/* se crea un rectangulo */
SDL_Rect rect;
/* se le asigna donde empieza en x el rectangulo */
rect.x=x;
/* se le asigna donde empieza en y el rectangulo */
rect.y=y;
/* se pega la imagen sobre screen de acuerdo a
la posicion del rectangulo */
SDL_BlitSurface(imagen, 0, screen, &rect);
}
int main(int argc, char *argv[])
{
SDL_Surface* screen;
if (SDL_Init(SDL_INIT_VIDEO)<0)
{
printf("Error al iniciar SDL:: %s",SDL_GetError());
return -1;
}
screen = SDL_SetVideoMode(640,480,16,SDL_HWSURFACE|SDL_RESIZABLE);
if (!screen)
{
printf("Error al iniciar el contexto SDL:: %s",SDL_GetError());
return -1;
}
SDL_WM_SetCaption(":: Carga de imagen con SDL ::",NULL);
/* llamamos al metodo para que cargue la imagen "foto.jpg" */
SDL_Surface* img = cargarImagen("rejilla.jpg");
/* preguntamos si realmente se cargo la imagen */
if (!img)
{
/* si nose cargo, salimos del programa */
printf("No se pudo cargar la imagen: %s",SDL_GetError());
return -1;
}
/* llamamos al otro metodo para que dibuje la imagen (*img)
sobre nuestra superficie buffer (*screen), en la posicion
100,100
*/
dibujaImagen(screen, img, 100, 100);
/* Este metodo tomara todos los cambios que se han hecho sobre
la superficie buffer(*screen), y las desplegara por pantalla
*/
SDL_Flip(screen);
SDL_Delay(5000);
return 1;
}
#49
Programación C/C++ / Re: fondo sdl con foto
23 Septiembre 2011, 22:31 PM
muchisimas gracias compañero voy a probarlo
#50
Programación C/C++ / fondo sdl con foto
23 Septiembre 2011, 15:52 PM
teniendo el codigo:

#include <stdio.h>
#include <SDL/SDL.h>
void imprimir_rectangulo (SDL_Surface *screen, int x, int y);
int main(int argc, char *argv[])
{
SDL_Surface *screen;
SDL_Event event;
if (SDL_Init(SDL_INIT_VIDEO) == -1)
{
printf("Error: %s\n", SDL_GetError());
return 1;
}
screen = SDL_SetVideoMode(320, 240, 16, SDL_SWSURFACE);
if (screen == NULL)
{
printf("Error: %s\n", SDL_GetError());
return 1;
}
SDL_WM_SetCaption("Ejemplo básico", NULL);
imprimir_rectangulo(screen, 20, 30);
while (SDL_WaitEvent(&event))
{
if (event.type == SDL_QUIT)
break;
}
SDL_Quit();
return 0;
}
void imprimir_rectangulo (SDL_Surface *screen, int x, int y)
{
SDL_Rect rect = {x, y, 50, 50};
Uint32 a = SDL_MapRGB(screen->format, 255, 200, 100);
SDL_FillRect(screen, &rect, a);
SDL_UpdateRect(screen, rect.x, rect.y, rect.w, rect.h);
}



como puedo poner una foto envez del cuadrado???
se que seria dando un enlace a donde esta la foto en mi pc... pero como se ace no lo se

me podeis ayudar??

gracias