SlideShare una empresa de Scribd logo
1 de 92
Descargar para leer sin conexión
PYGAME (I)
Conceptos Básicos
¿Qué es Pygame?
¿Qué es Pygame?

Una librería que permite trabajar con imágenes y sonido...
¿Qué es Pygame?
            ¡Abierta y gratuita!

Una librería que permite trabajar con imágenes y sonido...
¿Qué es Pygame?
            ¡Abierta y gratuita!

Una librería que permite trabajar con imágenes y sonido...

                                        ¡Animadas!
¿Qué es Pygame?
              ¡Abierta y gratuita!

Una librería que permite trabajar con imágenes y sonido...

                                        ¡Animadas!

... que gestiona su interacción...
¿Qué es Pygame?
              ¡Abierta y gratuita!

Una librería que permite trabajar con imágenes y sonido...

                                               ¡Animadas!

... que gestiona su interacción...
                                     Sprites
¿Qué es Pygame?
              ¡Abierta y gratuita!

Una librería que permite trabajar con imágenes y sonido...

                                               ¡Animadas!

... que gestiona su interacción...
                                     Sprites


... y que controla el Hardware.
¿Qué es Pygame?
              ¡Abierta y gratuita!

Una librería que permite trabajar con imágenes y sonido...

                                               ¡Animadas!

... que gestiona su interacción...
                                     Sprites
                                                     Bucle
                                                       de
... y que controla el Hardware.                      Eventos
Esquema General
Esquema General
    Importación
Esquema General
    Importación



    Inicialización
Esquema General
    Importación



    Inicialización



     Ejecución
Importación
Importación



          import pygame
          from pygame.locals import *
          import sys
Importación



          import pygame
          from pygame.locals import *
          import sys

                            En particular
                             sys.exit( )

 El módulo sys es importante para trabajar
 correctamente con el sistema operativo.
Contiene variables y
Importación
                            constantes muy útiles


          import pygame
          from pygame.locals import *
          import sys

                            En particular
                             sys.exit( )

 El módulo sys es importante para trabajar
 correctamente con el sistema operativo.
Inicialización
Inicialización


 pygame.init( )
Inicialización


 pygame.init( )
 visor = pygame.display.set_mode((640, 480), 0, 32)




display.set_mode( ) crea la
superficie de visualización.
Inicialización                 Tamaño de la
                                superficie

 pygame.init( )
 visor = pygame.display.set_mode((640, 480), 0, 32)




display.set_mode( ) crea la
superficie de visualización.
Inicialización                 Tamaño de la
                                superficie

 pygame.init( )
 visor = pygame.display.set_mode((640, 480), 0, 32)


     Opciones




display.set_mode( ) crea la
superficie de visualización.
Inicialización                 Tamaño de la
                                superficie

 pygame.init( )
 visor = pygame.display.set_mode((640, 480), 0, 32)


     Opciones


                                       Profundidad
display.set_mode( ) crea la              de color
superficie de visualización.
Inicialización


 pygame.init( )
 visor = pygame.display.set_mode((640, 480), 0, 32)
Inicialización


 pygame.init( )
 visor = pygame.display.set_mode((640, 480), 0, 32)




      visor contiene un objeto Surface que puede
      ser una ventana o la pantalla completa.
Inicialización


 pygame.init( )
 visor = pygame.display.set_mode((640, 480), 0, 32)


                           ¡Aquí es
                    donde se mostrarán las
                        animaciones!


      visor contiene un objeto Surface que puede
      ser una ventana o la pantalla completa.
Inicialización                      Opciones


 pygame.init( )
 visor = pygame.display.set_mode((640, 480), 0, 32)
Inicialización                        Opciones


 pygame.init( )
 visor = pygame.display.set_mode((640, 480), 0, 32)

 FULLSCREEN      Pantalla completa.
Inicialización                          Opciones


 pygame.init( )
 visor = pygame.display.set_mode((640, 480), 0, 32)

 FULLSCREEN      Pantalla completa.




                                      RESIZABLE   Tamaño variable.
Inicialización                          Opciones


 pygame.init( )
 visor = pygame.display.set_mode((640, 480), 0, 32)

 FULLSCREEN      Pantalla completa.
                                      NOFRAME     Sin bordes ni título.




                                      RESIZABLE   Tamaño variable.
Inicialización                          Opciones


 pygame.init( )
 visor = pygame.display.set_mode((640, 480), 0, 32)

 FULLSCREEN      Pantalla completa.
                                      NOFRAME     Sin bordes ni título.




   OPENGL   Para 3D.




                                      RESIZABLE   Tamaño variable.
Inicialización                          Opciones


 pygame.init( )
 visor = pygame.display.set_mode((640, 480), 0, 32)

 FULLSCREEN      Pantalla completa.
                                      NOFRAME     Sin bordes ni título.




   OPENGL   Para 3D.




    DOUBLEBUF          Doble bufer.
                                      RESIZABLE   Tamaño variable.
Inicialización                                    Opciones


 pygame.init( )
 visor = pygame.display.set_mode((640, 480), 0, 32)

 FULLSCREEN      Pantalla completa.
                                             NOFRAME            Sin bordes ni título.




   OPENGL   Para 3D.
                                      HWSURFACE   Acelerada por Hardware.




    DOUBLEBUF          Doble bufer.
                                             RESIZABLE          Tamaño variable.
Inicialización                                    Opciones


 pygame.init( )
 visor = pygame.display.set_mode((640, 480), 0, 32)

 FULLSCREEN      Pantalla completa.
                                             NOFRAME            Sin bordes ni título.



     Puedo poner varias con de separador|
   OPENGL   Para 3D.
                                      HWSURFACE   Acelerada por Hardware.




    DOUBLEBUF          Doble bufer.
                                             RESIZABLE          Tamaño variable.
Inicialización              Profundidad de
                             color (en bits)

 pygame.init( )
 visor = pygame.display.set_mode((640, 480), 0, 32)
Inicialización              Profundidad de
                             color (en bits)

 pygame.init( )
 visor = pygame.display.set_mode((640, 480), 0, 32)


     8 256 colores
                 .
Inicialización              Profundidad de
                             color (en bits)

 pygame.init( )
 visor = pygame.display.set_mode((640, 480), 0, 32)


     8 256 colores
                 .         15 32 768 colores con transparencia
                                                             .
Inicialización              Profundidad de
                             color (en bits)

 pygame.init( )
 visor = pygame.display.set_mode((640, 480), 0, 32)


     8 256 colores.        15 32 768 colores con transparencia
                                                             .




     16 65 536 colores.
Inicialización              Profundidad de
                             color (en bits)

 pygame.init( )
 visor = pygame.display.set_mode((640, 480), 0, 32)


     8 256 colores.        15 32 768 colores con transparencia  .




     16 65 536 colores.         24 16.7 millones de colores .
Inicialización                      Profundidad de
                                     color (en bits)

 pygame.init( )
 visor = pygame.display.set_mode((640, 480), 0, 32)


     8 256 colores.                15 32 768 colores con transparencia  .




     16 65 536 colores.                  24 16.7 millones de colores.




             32 16.7 millones de colores con transparencia
                                                         .
Ejecución
Ejecución




    Mostrar
imágenes y sonido
Ejecución           Responder a las
                    acciones del jugador


    Mostrar
imágenes y sonido
Ejecución                Responder a las
                         acciones del jugador


    Mostrar
imágenes y sonido

                         Detectar las
                    incidencias en el juego
Ejecución                    Responder a las
                             acciones del jugador


    Mostrar
imágenes y sonido

                            Detectar las
                       incidencias en el juego


   Y debo hacerlo una y otra vez, continuamente,
   durante todo el juego.
Ejecución                       Responder a las
                                acciones del jugador

                                            Bucle
    Mostrar                                  de
imágenes y sonido                          Eventos

                                Detectar las
         FPS
  Fotogramas por Segundo   incidencias en el juego


    Y debo hacerlo una y otra vez, continuamente,
    durante todo el juego.
Bucle de Eventos




Todo lo que ocurre durante el juego debe estar aquí.
Bucle de Eventos
while True:
  ...
  for event in pygame.event.get( ):
      ...
      if event.type == QUIT:
          pygame.quit( )
          sys.exit( )




Todo lo que ocurre durante el juego debe estar aquí.
Bucle de Eventos
while True:
  ...
  for event in pygame.event.get( ):
      ...
      if event.type == QUIT:       Mirar la lista de
          pygame.quit( )               eventos
          sys.exit( )




Todo lo que ocurre durante el juego debe estar aquí.
Bucle de Eventos
  while True:
    ...
    for event in pygame.event.get( ):
        ...
        if event.type == QUIT:       Mirar la lista de
            pygame.quit( )               eventos
            sys.exit( )

 Responder al
tipo de evento

  Todo lo que ocurre durante el juego debe estar aquí.
Bucle de Eventos
  while True:
    ...
    for event in pygame.event.get( ):
        ...
        if event.type == QUIT:       Mirar la lista de
            pygame.quit( )               eventos
            sys.exit( )

 Responder al
                         from pygame.locals import *
tipo de evento

  Todo lo que ocurre durante el juego debe estar aquí.
while True:
  ...
  for event in pygame.event.get( ):
      ...
      if event.type == QUIT:
          pygame.quit( )
          sys.exit( )
while True:
  ...
  for event in pygame.event.get( ):
      ...
      if event.type == QUIT:
          pygame.quit( )
          sys.exit( )

                     Haz sin parar:
                      ...
Observa lo
                      Mira cada evento pendiente:
que se está
                          ...
haciendo...
                          Si el tipo de evento es salir:
                              sal de pygame
                              sal del programa
while True:
  ...
  for event in pygame.event.get( ):
      ...                            Aquí se
      if event.type == QUIT:   pondrán el resto de los
          pygame.quit( )            procesos...
          sys.exit( )

                     Haz sin parar:
                      ...
Observa lo
                      Mira cada evento pendiente:
que se está
                          ...
haciendo...
                          Si el tipo de evento es salir:
                              sal de pygame
                              sal del programa
while True:
  ...
  for event in pygame.event.get( ):
      ...                            Aquí se
      if event.type == QUIT:   pondrán el resto de los
          pygame.quit( )            procesos...
          sys.exit( )

                     Haz sin parar:        ... y eventos.
                      ...
Observa lo
                      Mira cada evento pendiente:
que se está
                          ...
haciendo...
                          Si el tipo de evento es salir:
                              sal de pygame
                              sal del programa
Dibujado en Pantalla
Dibujado en Pantalla
Para evitar artefactos
se dibuja offscreen y
luego se vuelca todo en
pantalla.
Dibujado en Pantalla
                          Usando el método
Para evitar artefactos       visor.blit( )
se dibuja offscreen y
luego se vuelca todo en
pantalla.
Dibujado en Pantalla
                             Usando el método
Para evitar artefactos          visor.blit( )
se dibuja offscreen y
luego se vuelca todo en
pantalla.



     Usando el método
  pygame.display.update( )
Dibujado en Pantalla
                             Usando el método
Para evitar artefactos          visor.blit( )
se dibuja offscreen y
luego se vuelca todo en
pantalla.



     Usando el método
  pygame.display.update( )

          Frame
           Fotograma
Dibujado en Pantalla
                               Usando el método
Para evitar artefactos            visor.blit( )
se dibuja offscreen y
luego se vuelca todo en
pantalla.
                             ¡Muchos fotogramas

                                     producen una
     Usando el método
  pygame.display.update( )               animación...

                               ... si son diferentes!
          Frame
           Fotograma
En realidad hay más métodos para dibujar offscreen...
En realidad hay más métodos para dibujar offscreen...

   blit( ) para imágenes   .
En realidad hay más métodos para dibujar offscreen...

   blit( ) para imágenes   .




draw.line( ) líneas
En realidad hay más métodos para dibujar offscreen...

   blit( ) para imágenes   .




draw.line( ) líneas

        draw.circle( ) círculos
En realidad hay más métodos para dibujar offscreen...

   blit( ) para imágenes   .




draw.line( ) líneas

        draw.circle( ) círculos

   draw.ellipse( ) elipses
En realidad hay más métodos para dibujar offscreen...

   blit( ) para imágenes   .




draw.line( ) líneas

        draw.circle( ) círculos

   draw.ellipse( ) elipses

                               draw.rect( ) rectángulos
En realidad hay más métodos para dibujar offscreen...

   blit( ) para imágenes   .




draw.line( ) líneas

        draw.circle( ) círculos
                                             ...
   draw.ellipse( ) elipses

                               draw.rect( ) rectángulos
En realidad hay más métodos para dibujar offscreen...

   blit( ) para imágenes   .



                                     Consulta la
draw.line( ) líneas                documentación.


        draw.circle( ) círculos
                                             ...
   draw.ellipse( ) elipses

                               draw.rect( ) rectángulos
¿Cómo defino Colores y Posiciones?
¿Cómo defino Colores y Posiciones?


Colores con tuplas RGB.
                                  r g b
                    colorVerde = (0,255,0)
¿Cómo defino Colores y Posiciones?


Colores con tuplas RGB.
                                   r g b
                     colorVerde = (0,255,0)

Posiciones con tuplas 2D.
                               x y
                     punto = (223,327)
¿Cómo defino Colores y Posiciones?


Colores con tuplas RGB.
                                   r g b
                     colorVerde = (0,255,0)

Posiciones con tuplas 2D.
                               x y
                     punto = (223,327)

Y zonas con tuplas RECT.

                     zona = (0,0,300,200)
¿Y cómo dibujar Texto ?
¿Y cómo dibujar Texto ?


Primero, definimos el tipo de letra.
¿Y cómo dibujar Texto ?


Primero, definimos el tipo de letra.




Segundo, generamos el texto.
¿Y cómo dibujar Texto ?


Primero, definimos el tipo de letra.




Segundo, generamos el texto.




Y tercero, lo dibujamos offscreen.
¿Y cómo dibujar Texto ?


Primero, definimos el tipo de letra.

tipoLetra = pygame.font.SysFont(‘arial’, 48)

 Segundo, generamos el texto.




 Y tercero, lo dibujamos offscreen.
¿Y cómo dibujar Texto ?


Primero, definimos el tipo de letra.

tipoLetra = pygame.font.SysFont(‘arial’, 48)

 Segundo, generamos el texto.

texto = tipoLetra.render('Hola', True, color1, color2)

 Y tercero, lo dibujamos offscreen.
¿Y cómo dibujar Texto ?


Primero, definimos el tipo de letra.

tipoLetra = pygame.font.SysFont(‘arial’, 48)

                                        Suavizar
 Segundo, generamos el texto.
                                             de texto   de fondo


texto = tipoLetra.render('Hola', True, color1, color2)

 Y tercero, lo dibujamos offscreen.
¿Y cómo dibujar Texto ?


Primero, definimos el tipo de letra.

tipoLetra = pygame.font.SysFont(‘arial’, 48)

                                        Suavizar
 Segundo, generamos el texto.
                                             de texto   de fondo


texto = tipoLetra.render('Hola', True, color1, color2)

 Y tercero, lo dibujamos offscreen.

visor.blit(texto, textRect)
¿Y cómo dibujar Texto ?


Primero, definimos el tipo de letra.

tipoLetra = pygame.font.SysFont(‘arial’, 48)

                                           Suavizar
 Segundo, generamos el texto.
                                                de texto   de fondo


texto = tipoLetra.render('Hola', True, color1, color2)

 Y tercero, lo dibujamos offscreen.

visor.blit(texto, textRect)        lugar
¡Todo es un objeto!
¡Todo es un objeto!
Siempre podemos acceder a sus propiedades o
usar sus métodos.
¡Todo es un objeto!
Siempre podemos acceder a sus propiedades o
usar sus métodos.




   xCentro = visor.get_rect( ).centerx
¡Todo es un objeto!
Siempre podemos acceder a sus propiedades o
usar sus métodos.




   xCentro = visor.get_rect( ).centerx

   visor.fill((0,0,0))
¡Todo es un objeto!
Siempre podemos acceder a sus propiedades o
usar sus métodos.

                    Consulta la
                  Documentación.

   xCentro = visor.get_rect( ).centerx

   visor.fill((0,0,0))
¿Preguntas?

Más contenido relacionado

La actualidad más candente

Programación de Videojuegos con Python y Pilas (IX)
Programación de Videojuegos con Python y Pilas (IX)Programación de Videojuegos con Python y Pilas (IX)
Programación de Videojuegos con Python y Pilas (IX)Fernando Salamero
 
Introducción a las librerías PyGame y PyOpenGL
Introducción a las librerías PyGame y PyOpenGLIntroducción a las librerías PyGame y PyOpenGL
Introducción a las librerías PyGame y PyOpenGLkdeespana
 
Programación de Videojuegos con Python y Pilas (X)
Programación de Videojuegos con Python y Pilas (X)Programación de Videojuegos con Python y Pilas (X)
Programación de Videojuegos con Python y Pilas (X)Fernando Salamero
 
Programación de Videojuegos con Python y Pilas (VI)
Programación de Videojuegos con Python y Pilas (VI)Programación de Videojuegos con Python y Pilas (VI)
Programación de Videojuegos con Python y Pilas (VI)Fernando Salamero
 
Programación de Videojuegos con Python y Pilas (VIII)
Programación de Videojuegos con Python y Pilas (VIII)Programación de Videojuegos con Python y Pilas (VIII)
Programación de Videojuegos con Python y Pilas (VIII)Fernando Salamero
 
Taller de Pilas Engine, un motor de juegos en Python - PyConES 2014
Taller de Pilas Engine, un motor de juegos en Python - PyConES 2014Taller de Pilas Engine, un motor de juegos en Python - PyConES 2014
Taller de Pilas Engine, un motor de juegos en Python - PyConES 2014Fernando Salamero
 
Xna game studio presentación 02
Xna game studio   presentación 02Xna game studio   presentación 02
Xna game studio presentación 02Juan Cardona
 
Programación de Videojuegos con Python y Pilas (II)
Programación de Videojuegos con Python y Pilas (II)Programación de Videojuegos con Python y Pilas (II)
Programación de Videojuegos con Python y Pilas (II)Fernando Salamero
 
Xna game studio presentación 01
Xna game studio   presentación 01Xna game studio   presentación 01
Xna game studio presentación 01Juan Cardona
 
1455363182 s.a.-robotica-jugando-con-el-trompo
1455363182 s.a.-robotica-jugando-con-el-trompo1455363182 s.a.-robotica-jugando-con-el-trompo
1455363182 s.a.-robotica-jugando-con-el-trompobertha molina clemente
 
Instructivo tortugart
Instructivo tortugartInstructivo tortugart
Instructivo tortugartGladys León
 
Taller de introduccion a python con turtle
Taller de  introduccion a python  con  turtleTaller de  introduccion a python  con  turtle
Taller de introduccion a python con turtleAlbert Page
 

La actualidad más candente (20)

Programación de Videojuegos con Python y Pilas (IX)
Programación de Videojuegos con Python y Pilas (IX)Programación de Videojuegos con Python y Pilas (IX)
Programación de Videojuegos con Python y Pilas (IX)
 
Introducción a las librerías PyGame y PyOpenGL
Introducción a las librerías PyGame y PyOpenGLIntroducción a las librerías PyGame y PyOpenGL
Introducción a las librerías PyGame y PyOpenGL
 
Programación de Videojuegos con Python y Pilas (X)
Programación de Videojuegos con Python y Pilas (X)Programación de Videojuegos con Python y Pilas (X)
Programación de Videojuegos con Python y Pilas (X)
 
Intro pygamev2
Intro pygamev2Intro pygamev2
Intro pygamev2
 
Intro Pygame Capitulo 2
Intro Pygame Capitulo 2Intro Pygame Capitulo 2
Intro Pygame Capitulo 2
 
Intro PyGame Capitulo 5
Intro PyGame Capitulo 5Intro PyGame Capitulo 5
Intro PyGame Capitulo 5
 
Intro PygameCapitulo 3
Intro PygameCapitulo 3Intro PygameCapitulo 3
Intro PygameCapitulo 3
 
Programación de Videojuegos con Python y Pilas (VI)
Programación de Videojuegos con Python y Pilas (VI)Programación de Videojuegos con Python y Pilas (VI)
Programación de Videojuegos con Python y Pilas (VI)
 
Aventura
AventuraAventura
Aventura
 
Programación de Videojuegos con Python y Pilas (VIII)
Programación de Videojuegos con Python y Pilas (VIII)Programación de Videojuegos con Python y Pilas (VIII)
Programación de Videojuegos con Python y Pilas (VIII)
 
Intro PyGame Capitulo 1
Intro PyGame Capitulo 1Intro PyGame Capitulo 1
Intro PyGame Capitulo 1
 
Intro PyGame Capitulo 0
Intro PyGame Capitulo 0Intro PyGame Capitulo 0
Intro PyGame Capitulo 0
 
Capitulo 4
Capitulo 4Capitulo 4
Capitulo 4
 
Taller de Pilas Engine, un motor de juegos en Python - PyConES 2014
Taller de Pilas Engine, un motor de juegos en Python - PyConES 2014Taller de Pilas Engine, un motor de juegos en Python - PyConES 2014
Taller de Pilas Engine, un motor de juegos en Python - PyConES 2014
 
Xna game studio presentación 02
Xna game studio   presentación 02Xna game studio   presentación 02
Xna game studio presentación 02
 
Programación de Videojuegos con Python y Pilas (II)
Programación de Videojuegos con Python y Pilas (II)Programación de Videojuegos con Python y Pilas (II)
Programación de Videojuegos con Python y Pilas (II)
 
Xna game studio presentación 01
Xna game studio   presentación 01Xna game studio   presentación 01
Xna game studio presentación 01
 
1455363182 s.a.-robotica-jugando-con-el-trompo
1455363182 s.a.-robotica-jugando-con-el-trompo1455363182 s.a.-robotica-jugando-con-el-trompo
1455363182 s.a.-robotica-jugando-con-el-trompo
 
Instructivo tortugart
Instructivo tortugartInstructivo tortugart
Instructivo tortugart
 
Taller de introduccion a python con turtle
Taller de  introduccion a python  con  turtleTaller de  introduccion a python  con  turtle
Taller de introduccion a python con turtle
 

Destacado

Programación con Pygame VII
Programación con Pygame VIIProgramación con Pygame VII
Programación con Pygame VIIFernando Salamero
 
(Sin anotaciones) - En busca de la Física
(Sin anotaciones) - En busca de la Física(Sin anotaciones) - En busca de la Física
(Sin anotaciones) - En busca de la FísicaFernando Salamero
 
Programación de Videojuegos con Python y Pilas (III)
Programación de Videojuegos con Python y Pilas (III)Programación de Videojuegos con Python y Pilas (III)
Programación de Videojuegos con Python y Pilas (III)Fernando Salamero
 
Curso Programacion de Juego Introducion IA
Curso Programacion de Juego Introducion IACurso Programacion de Juego Introducion IA
Curso Programacion de Juego Introducion IARicardo Daniel Quiroga
 
Programación de Videojuegos con Python y Pilas (I)
Programación de Videojuegos con Python y Pilas (I)Programación de Videojuegos con Python y Pilas (I)
Programación de Videojuegos con Python y Pilas (I)Fernando Salamero
 
Windows 8 - Estilo Flexível de Trabalho
Windows 8 - Estilo Flexível de TrabalhoWindows 8 - Estilo Flexível de Trabalho
Windows 8 - Estilo Flexível de TrabalhoMarcelo Matias
 
Drive a assis_belem_ago2011_cloud_externo
Drive a assis_belem_ago2011_cloud_externoDrive a assis_belem_ago2011_cloud_externo
Drive a assis_belem_ago2011_cloud_externoviniciusea
 
Comprendre le financement des dépenses de Santé en France
Comprendre le financement des dépenses de Santé en FranceComprendre le financement des dépenses de Santé en France
Comprendre le financement des dépenses de Santé en FranceDocteur Ophtalmo
 
Mutuelle santé
Mutuelle santéMutuelle santé
Mutuelle santéjackcompt
 
Mutual Assurance Travel Presentacion 2016
Mutual Assurance  Travel Presentacion 2016Mutual Assurance  Travel Presentacion 2016
Mutual Assurance Travel Presentacion 2016Miguelangel Martinez
 
Prueba de Presentacion1
Prueba de Presentacion1Prueba de Presentacion1
Prueba de Presentacion1rubychavez
 
Ov 250 ppt enero 2009
Ov 250 ppt enero 2009Ov 250 ppt enero 2009
Ov 250 ppt enero 2009Fitira
 

Destacado (19)

Programación con Pygame VII
Programación con Pygame VIIProgramación con Pygame VII
Programación con Pygame VII
 
Python básico II
Python básico IIPython básico II
Python básico II
 
Intro Pygame Capitulo 6
Intro Pygame Capitulo 6Intro Pygame Capitulo 6
Intro Pygame Capitulo 6
 
Pythonic Math
Pythonic MathPythonic Math
Pythonic Math
 
(Sin anotaciones) - En busca de la Física
(Sin anotaciones) - En busca de la Física(Sin anotaciones) - En busca de la Física
(Sin anotaciones) - En busca de la Física
 
Programación de Videojuegos con Python y Pilas (III)
Programación de Videojuegos con Python y Pilas (III)Programación de Videojuegos con Python y Pilas (III)
Programación de Videojuegos con Python y Pilas (III)
 
Curso Programacion de Juego Introducion IA
Curso Programacion de Juego Introducion IACurso Programacion de Juego Introducion IA
Curso Programacion de Juego Introducion IA
 
Programación de Videojuegos con Python y Pilas (I)
Programación de Videojuegos con Python y Pilas (I)Programación de Videojuegos con Python y Pilas (I)
Programación de Videojuegos con Python y Pilas (I)
 
Windows 8 - Estilo Flexível de Trabalho
Windows 8 - Estilo Flexível de TrabalhoWindows 8 - Estilo Flexível de Trabalho
Windows 8 - Estilo Flexível de Trabalho
 
Drive a assis_belem_ago2011_cloud_externo
Drive a assis_belem_ago2011_cloud_externoDrive a assis_belem_ago2011_cloud_externo
Drive a assis_belem_ago2011_cloud_externo
 
Comprendre le financement des dépenses de Santé en France
Comprendre le financement des dépenses de Santé en FranceComprendre le financement des dépenses de Santé en France
Comprendre le financement des dépenses de Santé en France
 
Mutuelle santé
Mutuelle santéMutuelle santé
Mutuelle santé
 
Pres1
Pres1Pres1
Pres1
 
Mutual Assurance Travel Presentacion 2016
Mutual Assurance  Travel Presentacion 2016Mutual Assurance  Travel Presentacion 2016
Mutual Assurance Travel Presentacion 2016
 
Mapa mental PPQA- Process and Product Quality Assurance
Mapa mental PPQA- Process and Product Quality AssuranceMapa mental PPQA- Process and Product Quality Assurance
Mapa mental PPQA- Process and Product Quality Assurance
 
Prueba de Presentacion1
Prueba de Presentacion1Prueba de Presentacion1
Prueba de Presentacion1
 
Bien comprendre et bien choisir votre complémentaire santé
Bien comprendre et bien choisir votre complémentaire santéBien comprendre et bien choisir votre complémentaire santé
Bien comprendre et bien choisir votre complémentaire santé
 
Presentation selphie
Presentation selphiePresentation selphie
Presentation selphie
 
Ov 250 ppt enero 2009
Ov 250 ppt enero 2009Ov 250 ppt enero 2009
Ov 250 ppt enero 2009
 

Similar a Pygame librería animación sprites

Blender digital sculpting - Pierre Schiler
Blender digital sculpting - Pierre SchilerBlender digital sculpting - Pierre Schiler
Blender digital sculpting - Pierre SchilerPierre Schiller
 
Gimp2 exemple
Gimp2 exempleGimp2 exemple
Gimp2 exemplelfloris1
 
17528334 manual-vray-espanol-completo
17528334 manual-vray-espanol-completo17528334 manual-vray-espanol-completo
17528334 manual-vray-espanol-completoOscar Monterrosa
 
Gimp2 exemple
Gimp2 exempleGimp2 exemple
Gimp2 exemplelfloris1
 
Como hacer un reproductor de mp3
Como hacer un reproductor de mp3Como hacer un reproductor de mp3
Como hacer un reproductor de mp3Maxon Dixom
 
COLEGIO
COLEGIOCOLEGIO
COLEGIOdarwlu
 
Documento 3 d imax
Documento 3 d imaxDocumento 3 d imax
Documento 3 d imaxJOEIAO
 
Conceptos básicos de gestión de color. Casanova Foto. FotoWeek 2013
Conceptos básicos de gestión de color. Casanova Foto. FotoWeek 2013Conceptos básicos de gestión de color. Casanova Foto. FotoWeek 2013
Conceptos básicos de gestión de color. Casanova Foto. FotoWeek 2013Joan Boira
 
Manual del proteus
Manual del proteusManual del proteus
Manual del proteusayreonmx
 
monitores y tarjetas garfica
monitores y tarjetas garficamonitores y tarjetas garfica
monitores y tarjetas garficabryan96pat
 
monitores y tarjetas grficas
monitores y tarjetas grficasmonitores y tarjetas grficas
monitores y tarjetas grficasbryan96pat
 
monitores y tarjetas grficas
monitores y tarjetas grficasmonitores y tarjetas grficas
monitores y tarjetas grficasbryan96pat
 
monitores y tarjeta grafica
monitores y tarjeta graficamonitores y tarjeta grafica
monitores y tarjeta graficabryan96pat
 
Guía_vray-español.
Guía_vray-español.Guía_vray-español.
Guía_vray-español.Yosito Papito
 

Similar a Pygame librería animación sprites (20)

Clase2
Clase2Clase2
Clase2
 
Blender digital sculpting - Pierre Schiler
Blender digital sculpting - Pierre SchilerBlender digital sculpting - Pierre Schiler
Blender digital sculpting - Pierre Schiler
 
Gimp2 exemple
Gimp2 exempleGimp2 exemple
Gimp2 exemple
 
17528334 manual-vray-espanol-completo
17528334 manual-vray-espanol-completo17528334 manual-vray-espanol-completo
17528334 manual-vray-espanol-completo
 
Gimp2 exemple
Gimp2 exempleGimp2 exemple
Gimp2 exemple
 
Tutorial isis-proteus
Tutorial isis-proteusTutorial isis-proteus
Tutorial isis-proteus
 
Taller video
Taller videoTaller video
Taller video
 
Como hacer un reproductor de mp3
Como hacer un reproductor de mp3Como hacer un reproductor de mp3
Como hacer un reproductor de mp3
 
Taller de video 1
Taller de video 1Taller de video 1
Taller de video 1
 
scratch
scratchscratch
scratch
 
COLEGIO
COLEGIOCOLEGIO
COLEGIO
 
Documento 3 d imax
Documento 3 d imaxDocumento 3 d imax
Documento 3 d imax
 
Conceptos básicos de gestión de color. Casanova Foto. FotoWeek 2013
Conceptos básicos de gestión de color. Casanova Foto. FotoWeek 2013Conceptos básicos de gestión de color. Casanova Foto. FotoWeek 2013
Conceptos básicos de gestión de color. Casanova Foto. FotoWeek 2013
 
Manual del proteus
Manual del proteusManual del proteus
Manual del proteus
 
monitores y tarjetas garfica
monitores y tarjetas garficamonitores y tarjetas garfica
monitores y tarjetas garfica
 
monitores y tarjetas grficas
monitores y tarjetas grficasmonitores y tarjetas grficas
monitores y tarjetas grficas
 
monitores y tarjetas grficas
monitores y tarjetas grficasmonitores y tarjetas grficas
monitores y tarjetas grficas
 
monitores y tarjeta grafica
monitores y tarjeta graficamonitores y tarjeta grafica
monitores y tarjeta grafica
 
Manual vray su español
Manual vray su españolManual vray su español
Manual vray su español
 
Guía_vray-español.
Guía_vray-español.Guía_vray-español.
Guía_vray-español.
 

Más de Fernando Salamero

(Anotaciones) Ciencia (Cuestiones) que la tiza no propone
(Anotaciones) Ciencia (Cuestiones) que la tiza no propone(Anotaciones) Ciencia (Cuestiones) que la tiza no propone
(Anotaciones) Ciencia (Cuestiones) que la tiza no proponeFernando Salamero
 
Ciencia (Cuestiones) que la tiza no propone
Ciencia (Cuestiones) que la tiza no proponeCiencia (Cuestiones) que la tiza no propone
Ciencia (Cuestiones) que la tiza no proponeFernando Salamero
 
(Con anotaciones) En busca de la Física
(Con anotaciones) En busca de la Física(Con anotaciones) En busca de la Física
(Con anotaciones) En busca de la FísicaFernando Salamero
 
Timeline - En busca de la Física
Timeline - En busca de la FísicaTimeline - En busca de la Física
Timeline - En busca de la FísicaFernando Salamero
 
Programación de Videojuegos con Python y Pilas (V)
Programación de Videojuegos con Python y Pilas (V)Programación de Videojuegos con Python y Pilas (V)
Programación de Videojuegos con Python y Pilas (V)Fernando Salamero
 

Más de Fernando Salamero (13)

(Anotaciones) Ciencia (Cuestiones) que la tiza no propone
(Anotaciones) Ciencia (Cuestiones) que la tiza no propone(Anotaciones) Ciencia (Cuestiones) que la tiza no propone
(Anotaciones) Ciencia (Cuestiones) que la tiza no propone
 
Ciencia (Cuestiones) que la tiza no propone
Ciencia (Cuestiones) que la tiza no proponeCiencia (Cuestiones) que la tiza no propone
Ciencia (Cuestiones) que la tiza no propone
 
(Con anotaciones) En busca de la Física
(Con anotaciones) En busca de la Física(Con anotaciones) En busca de la Física
(Con anotaciones) En busca de la Física
 
Timeline - En busca de la Física
Timeline - En busca de la FísicaTimeline - En busca de la Física
Timeline - En busca de la Física
 
Jovenes físicos
Jovenes físicosJovenes físicos
Jovenes físicos
 
Programación de Videojuegos con Python y Pilas (V)
Programación de Videojuegos con Python y Pilas (V)Programación de Videojuegos con Python y Pilas (V)
Programación de Videojuegos con Python y Pilas (V)
 
Python básico I
Python básico IPython básico I
Python básico I
 
Python (ejercicios)
Python (ejercicios)Python (ejercicios)
Python (ejercicios)
 
Python (práctica 4)
Python (práctica 4)Python (práctica 4)
Python (práctica 4)
 
Python (práctica 3)
Python (práctica 3)Python (práctica 3)
Python (práctica 3)
 
Python (práctica 2)
Python (práctica 2)Python (práctica 2)
Python (práctica 2)
 
Python (práctica 1)
Python (práctica 1)Python (práctica 1)
Python (práctica 1)
 
Iniciación a python
Iniciación a pythonIniciación a python
Iniciación a python
 

Último

SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024gharce
 
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptxMonitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptxJUANCARLOSAPARCANARE
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressionsConsueloSantana3
 
cuadernillo de lectoescritura para niños de básica
cuadernillo de lectoescritura para niños de básicacuadernillo de lectoescritura para niños de básica
cuadernillo de lectoescritura para niños de básicaGianninaValeskaContr
 
Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfromanmillans
 
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docxPLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docxJUANSIMONPACHIN
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...fcastellanos3
 
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...YobanaZevallosSantil1
 
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)veganet
 
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfFisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfcoloncopias5
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxOscarEduardoSanchezC
 
Fundamentos y Principios de Psicopedagogía..pdf
Fundamentos y Principios de Psicopedagogía..pdfFundamentos y Principios de Psicopedagogía..pdf
Fundamentos y Principios de Psicopedagogía..pdfsamyarrocha1
 
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptPINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptAlberto Rubio
 
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdf
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdfLA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdf
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdfNataliaMalky1
 
PPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfPPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfEDILIAGAMBOA
 
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfManuel Molina
 
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxc3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxMartín Ramírez
 

Último (20)

SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
 
Sesión La luz brilla en la oscuridad.pdf
Sesión  La luz brilla en la oscuridad.pdfSesión  La luz brilla en la oscuridad.pdf
Sesión La luz brilla en la oscuridad.pdf
 
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptxMonitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressions
 
cuadernillo de lectoescritura para niños de básica
cuadernillo de lectoescritura para niños de básicacuadernillo de lectoescritura para niños de básica
cuadernillo de lectoescritura para niños de básica
 
Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdf
 
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docxPLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
 
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
 
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
 
Aedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptxAedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptx
 
Earth Day Everyday 2024 54th anniversary
Earth Day Everyday 2024 54th anniversaryEarth Day Everyday 2024 54th anniversary
Earth Day Everyday 2024 54th anniversary
 
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfFisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
 
Fundamentos y Principios de Psicopedagogía..pdf
Fundamentos y Principios de Psicopedagogía..pdfFundamentos y Principios de Psicopedagogía..pdf
Fundamentos y Principios de Psicopedagogía..pdf
 
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptPINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
 
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdf
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdfLA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdf
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdf
 
PPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfPPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdf
 
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
 
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxc3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
 

Pygame librería animación sprites

  • 3. ¿Qué es Pygame? Una librería que permite trabajar con imágenes y sonido...
  • 4. ¿Qué es Pygame? ¡Abierta y gratuita! Una librería que permite trabajar con imágenes y sonido...
  • 5. ¿Qué es Pygame? ¡Abierta y gratuita! Una librería que permite trabajar con imágenes y sonido... ¡Animadas!
  • 6. ¿Qué es Pygame? ¡Abierta y gratuita! Una librería que permite trabajar con imágenes y sonido... ¡Animadas! ... que gestiona su interacción...
  • 7. ¿Qué es Pygame? ¡Abierta y gratuita! Una librería que permite trabajar con imágenes y sonido... ¡Animadas! ... que gestiona su interacción... Sprites
  • 8. ¿Qué es Pygame? ¡Abierta y gratuita! Una librería que permite trabajar con imágenes y sonido... ¡Animadas! ... que gestiona su interacción... Sprites ... y que controla el Hardware.
  • 9. ¿Qué es Pygame? ¡Abierta y gratuita! Una librería que permite trabajar con imágenes y sonido... ¡Animadas! ... que gestiona su interacción... Sprites Bucle de ... y que controla el Hardware. Eventos
  • 11. Esquema General Importación
  • 12. Esquema General Importación Inicialización
  • 13. Esquema General Importación Inicialización Ejecución
  • 15. Importación import pygame from pygame.locals import * import sys
  • 16. Importación import pygame from pygame.locals import * import sys En particular sys.exit( ) El módulo sys es importante para trabajar correctamente con el sistema operativo.
  • 17. Contiene variables y Importación constantes muy útiles import pygame from pygame.locals import * import sys En particular sys.exit( ) El módulo sys es importante para trabajar correctamente con el sistema operativo.
  • 20. Inicialización pygame.init( ) visor = pygame.display.set_mode((640, 480), 0, 32) display.set_mode( ) crea la superficie de visualización.
  • 21. Inicialización Tamaño de la superficie pygame.init( ) visor = pygame.display.set_mode((640, 480), 0, 32) display.set_mode( ) crea la superficie de visualización.
  • 22. Inicialización Tamaño de la superficie pygame.init( ) visor = pygame.display.set_mode((640, 480), 0, 32) Opciones display.set_mode( ) crea la superficie de visualización.
  • 23. Inicialización Tamaño de la superficie pygame.init( ) visor = pygame.display.set_mode((640, 480), 0, 32) Opciones Profundidad display.set_mode( ) crea la de color superficie de visualización.
  • 24. Inicialización pygame.init( ) visor = pygame.display.set_mode((640, 480), 0, 32)
  • 25. Inicialización pygame.init( ) visor = pygame.display.set_mode((640, 480), 0, 32) visor contiene un objeto Surface que puede ser una ventana o la pantalla completa.
  • 26. Inicialización pygame.init( ) visor = pygame.display.set_mode((640, 480), 0, 32) ¡Aquí es donde se mostrarán las animaciones! visor contiene un objeto Surface que puede ser una ventana o la pantalla completa.
  • 27. Inicialización Opciones pygame.init( ) visor = pygame.display.set_mode((640, 480), 0, 32)
  • 28. Inicialización Opciones pygame.init( ) visor = pygame.display.set_mode((640, 480), 0, 32) FULLSCREEN Pantalla completa.
  • 29. Inicialización Opciones pygame.init( ) visor = pygame.display.set_mode((640, 480), 0, 32) FULLSCREEN Pantalla completa. RESIZABLE Tamaño variable.
  • 30. Inicialización Opciones pygame.init( ) visor = pygame.display.set_mode((640, 480), 0, 32) FULLSCREEN Pantalla completa. NOFRAME Sin bordes ni título. RESIZABLE Tamaño variable.
  • 31. Inicialización Opciones pygame.init( ) visor = pygame.display.set_mode((640, 480), 0, 32) FULLSCREEN Pantalla completa. NOFRAME Sin bordes ni título. OPENGL Para 3D. RESIZABLE Tamaño variable.
  • 32. Inicialización Opciones pygame.init( ) visor = pygame.display.set_mode((640, 480), 0, 32) FULLSCREEN Pantalla completa. NOFRAME Sin bordes ni título. OPENGL Para 3D. DOUBLEBUF Doble bufer. RESIZABLE Tamaño variable.
  • 33. Inicialización Opciones pygame.init( ) visor = pygame.display.set_mode((640, 480), 0, 32) FULLSCREEN Pantalla completa. NOFRAME Sin bordes ni título. OPENGL Para 3D. HWSURFACE Acelerada por Hardware. DOUBLEBUF Doble bufer. RESIZABLE Tamaño variable.
  • 34. Inicialización Opciones pygame.init( ) visor = pygame.display.set_mode((640, 480), 0, 32) FULLSCREEN Pantalla completa. NOFRAME Sin bordes ni título. Puedo poner varias con de separador| OPENGL Para 3D. HWSURFACE Acelerada por Hardware. DOUBLEBUF Doble bufer. RESIZABLE Tamaño variable.
  • 35. Inicialización Profundidad de color (en bits) pygame.init( ) visor = pygame.display.set_mode((640, 480), 0, 32)
  • 36. Inicialización Profundidad de color (en bits) pygame.init( ) visor = pygame.display.set_mode((640, 480), 0, 32) 8 256 colores .
  • 37. Inicialización Profundidad de color (en bits) pygame.init( ) visor = pygame.display.set_mode((640, 480), 0, 32) 8 256 colores . 15 32 768 colores con transparencia .
  • 38. Inicialización Profundidad de color (en bits) pygame.init( ) visor = pygame.display.set_mode((640, 480), 0, 32) 8 256 colores. 15 32 768 colores con transparencia . 16 65 536 colores.
  • 39. Inicialización Profundidad de color (en bits) pygame.init( ) visor = pygame.display.set_mode((640, 480), 0, 32) 8 256 colores. 15 32 768 colores con transparencia . 16 65 536 colores. 24 16.7 millones de colores .
  • 40. Inicialización Profundidad de color (en bits) pygame.init( ) visor = pygame.display.set_mode((640, 480), 0, 32) 8 256 colores. 15 32 768 colores con transparencia . 16 65 536 colores. 24 16.7 millones de colores. 32 16.7 millones de colores con transparencia .
  • 42. Ejecución Mostrar imágenes y sonido
  • 43. Ejecución Responder a las acciones del jugador Mostrar imágenes y sonido
  • 44. Ejecución Responder a las acciones del jugador Mostrar imágenes y sonido Detectar las incidencias en el juego
  • 45. Ejecución Responder a las acciones del jugador Mostrar imágenes y sonido Detectar las incidencias en el juego Y debo hacerlo una y otra vez, continuamente, durante todo el juego.
  • 46. Ejecución Responder a las acciones del jugador Bucle Mostrar de imágenes y sonido Eventos Detectar las FPS Fotogramas por Segundo incidencias en el juego Y debo hacerlo una y otra vez, continuamente, durante todo el juego.
  • 47.
  • 48. Bucle de Eventos Todo lo que ocurre durante el juego debe estar aquí.
  • 49. Bucle de Eventos while True: ... for event in pygame.event.get( ): ... if event.type == QUIT: pygame.quit( ) sys.exit( ) Todo lo que ocurre durante el juego debe estar aquí.
  • 50. Bucle de Eventos while True: ... for event in pygame.event.get( ): ... if event.type == QUIT: Mirar la lista de pygame.quit( ) eventos sys.exit( ) Todo lo que ocurre durante el juego debe estar aquí.
  • 51. Bucle de Eventos while True: ... for event in pygame.event.get( ): ... if event.type == QUIT: Mirar la lista de pygame.quit( ) eventos sys.exit( ) Responder al tipo de evento Todo lo que ocurre durante el juego debe estar aquí.
  • 52. Bucle de Eventos while True: ... for event in pygame.event.get( ): ... if event.type == QUIT: Mirar la lista de pygame.quit( ) eventos sys.exit( ) Responder al from pygame.locals import * tipo de evento Todo lo que ocurre durante el juego debe estar aquí.
  • 53. while True: ... for event in pygame.event.get( ): ... if event.type == QUIT: pygame.quit( ) sys.exit( )
  • 54. while True: ... for event in pygame.event.get( ): ... if event.type == QUIT: pygame.quit( ) sys.exit( ) Haz sin parar: ... Observa lo Mira cada evento pendiente: que se está ... haciendo... Si el tipo de evento es salir: sal de pygame sal del programa
  • 55. while True: ... for event in pygame.event.get( ): ... Aquí se if event.type == QUIT: pondrán el resto de los pygame.quit( ) procesos... sys.exit( ) Haz sin parar: ... Observa lo Mira cada evento pendiente: que se está ... haciendo... Si el tipo de evento es salir: sal de pygame sal del programa
  • 56. while True: ... for event in pygame.event.get( ): ... Aquí se if event.type == QUIT: pondrán el resto de los pygame.quit( ) procesos... sys.exit( ) Haz sin parar: ... y eventos. ... Observa lo Mira cada evento pendiente: que se está ... haciendo... Si el tipo de evento es salir: sal de pygame sal del programa
  • 57.
  • 59. Dibujado en Pantalla Para evitar artefactos se dibuja offscreen y luego se vuelca todo en pantalla.
  • 60. Dibujado en Pantalla Usando el método Para evitar artefactos visor.blit( ) se dibuja offscreen y luego se vuelca todo en pantalla.
  • 61. Dibujado en Pantalla Usando el método Para evitar artefactos visor.blit( ) se dibuja offscreen y luego se vuelca todo en pantalla. Usando el método pygame.display.update( )
  • 62. Dibujado en Pantalla Usando el método Para evitar artefactos visor.blit( ) se dibuja offscreen y luego se vuelca todo en pantalla. Usando el método pygame.display.update( ) Frame Fotograma
  • 63. Dibujado en Pantalla Usando el método Para evitar artefactos visor.blit( ) se dibuja offscreen y luego se vuelca todo en pantalla. ¡Muchos fotogramas producen una Usando el método pygame.display.update( ) animación... ... si son diferentes! Frame Fotograma
  • 64.
  • 65. En realidad hay más métodos para dibujar offscreen...
  • 66. En realidad hay más métodos para dibujar offscreen... blit( ) para imágenes .
  • 67. En realidad hay más métodos para dibujar offscreen... blit( ) para imágenes . draw.line( ) líneas
  • 68. En realidad hay más métodos para dibujar offscreen... blit( ) para imágenes . draw.line( ) líneas draw.circle( ) círculos
  • 69. En realidad hay más métodos para dibujar offscreen... blit( ) para imágenes . draw.line( ) líneas draw.circle( ) círculos draw.ellipse( ) elipses
  • 70. En realidad hay más métodos para dibujar offscreen... blit( ) para imágenes . draw.line( ) líneas draw.circle( ) círculos draw.ellipse( ) elipses draw.rect( ) rectángulos
  • 71. En realidad hay más métodos para dibujar offscreen... blit( ) para imágenes . draw.line( ) líneas draw.circle( ) círculos ... draw.ellipse( ) elipses draw.rect( ) rectángulos
  • 72. En realidad hay más métodos para dibujar offscreen... blit( ) para imágenes . Consulta la draw.line( ) líneas documentación. draw.circle( ) círculos ... draw.ellipse( ) elipses draw.rect( ) rectángulos
  • 73. ¿Cómo defino Colores y Posiciones?
  • 74. ¿Cómo defino Colores y Posiciones? Colores con tuplas RGB. r g b colorVerde = (0,255,0)
  • 75. ¿Cómo defino Colores y Posiciones? Colores con tuplas RGB. r g b colorVerde = (0,255,0) Posiciones con tuplas 2D. x y punto = (223,327)
  • 76. ¿Cómo defino Colores y Posiciones? Colores con tuplas RGB. r g b colorVerde = (0,255,0) Posiciones con tuplas 2D. x y punto = (223,327) Y zonas con tuplas RECT. zona = (0,0,300,200)
  • 77. ¿Y cómo dibujar Texto ?
  • 78. ¿Y cómo dibujar Texto ? Primero, definimos el tipo de letra.
  • 79. ¿Y cómo dibujar Texto ? Primero, definimos el tipo de letra. Segundo, generamos el texto.
  • 80. ¿Y cómo dibujar Texto ? Primero, definimos el tipo de letra. Segundo, generamos el texto. Y tercero, lo dibujamos offscreen.
  • 81. ¿Y cómo dibujar Texto ? Primero, definimos el tipo de letra. tipoLetra = pygame.font.SysFont(‘arial’, 48) Segundo, generamos el texto. Y tercero, lo dibujamos offscreen.
  • 82. ¿Y cómo dibujar Texto ? Primero, definimos el tipo de letra. tipoLetra = pygame.font.SysFont(‘arial’, 48) Segundo, generamos el texto. texto = tipoLetra.render('Hola', True, color1, color2) Y tercero, lo dibujamos offscreen.
  • 83. ¿Y cómo dibujar Texto ? Primero, definimos el tipo de letra. tipoLetra = pygame.font.SysFont(‘arial’, 48) Suavizar Segundo, generamos el texto. de texto de fondo texto = tipoLetra.render('Hola', True, color1, color2) Y tercero, lo dibujamos offscreen.
  • 84. ¿Y cómo dibujar Texto ? Primero, definimos el tipo de letra. tipoLetra = pygame.font.SysFont(‘arial’, 48) Suavizar Segundo, generamos el texto. de texto de fondo texto = tipoLetra.render('Hola', True, color1, color2) Y tercero, lo dibujamos offscreen. visor.blit(texto, textRect)
  • 85. ¿Y cómo dibujar Texto ? Primero, definimos el tipo de letra. tipoLetra = pygame.font.SysFont(‘arial’, 48) Suavizar Segundo, generamos el texto. de texto de fondo texto = tipoLetra.render('Hola', True, color1, color2) Y tercero, lo dibujamos offscreen. visor.blit(texto, textRect) lugar
  • 86.
  • 87. ¡Todo es un objeto!
  • 88. ¡Todo es un objeto! Siempre podemos acceder a sus propiedades o usar sus métodos.
  • 89. ¡Todo es un objeto! Siempre podemos acceder a sus propiedades o usar sus métodos. xCentro = visor.get_rect( ).centerx
  • 90. ¡Todo es un objeto! Siempre podemos acceder a sus propiedades o usar sus métodos. xCentro = visor.get_rect( ).centerx visor.fill((0,0,0))
  • 91. ¡Todo es un objeto! Siempre podemos acceder a sus propiedades o usar sus métodos. Consulta la Documentación. xCentro = visor.get_rect( ).centerx visor.fill((0,0,0))