Advertisement
fenix15100

Ventana SDL

Mar 8th, 2017
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.63 KB | None | 0 0
  1. #include "SDL2/SDL.h"
  2.  
  3.  int main(int argc, char** argv){
  4.    
  5.     //Declaro puntero  ventana tipo SDL_WINDOW
  6.    
  7.     SDL_Window *ventana=NULL;
  8.    
  9.     //Igualo ventana que ahora es de tipo SDL_WINDOW a la Funcion SDL_CreateWindow y la defino con los argumentos que espera la funcion
  10.     ventana=SDL_CreateWindow
  11.    
  12.     (
  13.         "Ventana Anti_Nabos", //Titulo de la ventana
  14.         200, //Posicion del pixel 0 de la ventana respecto al eje X=left
  15.         300,//posicion del pixel 0 de la ventaba respecto al eje Y=top
  16.         800,//Ancho de ventana
  17.         600,//Altura de ventana
  18.         SDL_WINDOW_SHOWN //ni zorra pero necesario XD
  19.     );
  20.    
  21.     // Declaro  puntero  de tipo SDL_Renderer
  22.     SDL_Renderer *dibuja = NULL;
  23.    
  24.     //Igualo dibuja a la funcion SDL_CreateREnderer que espera como argumento nuestra ventana un entero que no se que hace y una Struct SDL_RENDERER_ACCELERATED
  25.     //Esta funcion es la encargada de Renderizar "Ventana" en pantalla,SDL_RENDERER_ACCELERATED imagino que es una funcion o estructura que habla con DIRECT3D o DirectX y este con el
  26.     //driver de la grafica
  27.     dibuja =  SDL_CreateRenderer( ventana, -1, SDL_RENDERER_ACCELERATED);
  28.    
  29.    
  30.    
  31.     //Le paso a la funcion  SDL_SetRenderDrawColor el render dibuja que me ha dibujado ventana ademas de un CODIGO RGBA valido para que pinte ventana de ese color
  32.     SDL_SetRenderDrawColor( dibuja, 255, 0, 0, 255 );
  33.    
  34.     // Limpio el render dibuja que ha renderizado ventana ya que voy a reutilizarlo para dibujar un cuadrado
  35.     SDL_RenderClear( dibuja );
  36.    
  37.    
  38.     // Creo el objeto cuadrado que sera de CLASE SDL_RECT y lo defino
  39.     SDL_Rect cuadrado;
  40.     cuadrado.x = 400; //Poscion X respecto a ventana
  41.     cuadrado.y = 300;//Posicion Y respecto a ventana
  42.     cuadrado.w = 80;//Ancho de la figura
  43.     cuadrado.h = 80;//Altura de la figura
  44.    
  45.     //El pixel cero de cuadrado debera empezar en el centro de ventana ya que he dividido por dos el tamaΓ±o de ventana (800px X 600).
  46.    
  47.     //Hago que el render "dibuja" ahora vacio se prepare para pintar con color especificado en RGBA
  48.     SDL_SetRenderDrawColor( dibuja, 0, 0, 255, 255 );
  49.    
  50.     //Hago que sobre el render dibuja que ahora pintara con el color especificado arriba renderize el objeto cuadrado
  51.     SDL_RenderFillRect( dibuja, &cuadrado );
  52.    
  53.     //Ahora cojo el contenido del render dibuja y lo saco por la ventana "ventana"
  54.     SDL_RenderPresent(dibuja);
  55.    
  56.     //Hago que se quede abierto 10 segundos "ventana"
  57.     SDL_Delay( 10000 );
  58.    
  59.     //Close ventana y cierro programa
  60.     SDL_DestroyWindow(ventana);
  61.     SDL_Quit();
  62.  
  63.     return EXIT_SUCCESS;
  64.  
  65.    
  66.    
  67.    
  68.    
  69.  }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement