Programación de un videojuego 2D con Open Source · • Movimiento de enemigos • El producto...
Transcript of Programación de un videojuego 2D con Open Source · • Movimiento de enemigos • El producto...
![Page 1: Programación de un videojuego 2D con Open Source · • Movimiento de enemigos • El producto final ¿Otro lenguaje? Claro, veamos un ejemplo con Ruby. Estadísticas (prestadas)](https://reader031.fdocument.pub/reader031/viewer/2022022101/5bb231b609d3f2f1188ca78b/html5/thumbnails/1.jpg)
Programación de un videojuego 2D con Open
SourceNelson Rojas Núñez
![Page 2: Programación de un videojuego 2D con Open Source · • Movimiento de enemigos • El producto final ¿Otro lenguaje? Claro, veamos un ejemplo con Ruby. Estadísticas (prestadas)](https://reader031.fdocument.pub/reader031/viewer/2022022101/5bb231b609d3f2f1188ca78b/html5/thumbnails/2.jpg)
Dedicada los que perseveran sin rendirse
![Page 3: Programación de un videojuego 2D con Open Source · • Movimiento de enemigos • El producto final ¿Otro lenguaje? Claro, veamos un ejemplo con Ruby. Estadísticas (prestadas)](https://reader031.fdocument.pub/reader031/viewer/2022022101/5bb231b609d3f2f1188ca78b/html5/thumbnails/3.jpg)
Motivación
![Page 4: Programación de un videojuego 2D con Open Source · • Movimiento de enemigos • El producto final ¿Otro lenguaje? Claro, veamos un ejemplo con Ruby. Estadísticas (prestadas)](https://reader031.fdocument.pub/reader031/viewer/2022022101/5bb231b609d3f2f1188ca78b/html5/thumbnails/4.jpg)
Estructura de un videojuego
• La idea
![Page 5: Programación de un videojuego 2D con Open Source · • Movimiento de enemigos • El producto final ¿Otro lenguaje? Claro, veamos un ejemplo con Ruby. Estadísticas (prestadas)](https://reader031.fdocument.pub/reader031/viewer/2022022101/5bb231b609d3f2f1188ca78b/html5/thumbnails/5.jpg)
Estructura de un videojuego
• El loop de trabajo
![Page 6: Programación de un videojuego 2D con Open Source · • Movimiento de enemigos • El producto final ¿Otro lenguaje? Claro, veamos un ejemplo con Ruby. Estadísticas (prestadas)](https://reader031.fdocument.pub/reader031/viewer/2022022101/5bb231b609d3f2f1188ca78b/html5/thumbnails/6.jpg)
Estructura de un videojuego
• Dibujar personajes
![Page 7: Programación de un videojuego 2D con Open Source · • Movimiento de enemigos • El producto final ¿Otro lenguaje? Claro, veamos un ejemplo con Ruby. Estadísticas (prestadas)](https://reader031.fdocument.pub/reader031/viewer/2022022101/5bb231b609d3f2f1188ca78b/html5/thumbnails/7.jpg)
Estructura de un videojuego
• Mover personajes en pantalla
![Page 8: Programación de un videojuego 2D con Open Source · • Movimiento de enemigos • El producto final ¿Otro lenguaje? Claro, veamos un ejemplo con Ruby. Estadísticas (prestadas)](https://reader031.fdocument.pub/reader031/viewer/2022022101/5bb231b609d3f2f1188ca78b/html5/thumbnails/8.jpg)
Estructura de un videojuego
• Reconocer colisión
![Page 9: Programación de un videojuego 2D con Open Source · • Movimiento de enemigos • El producto final ¿Otro lenguaje? Claro, veamos un ejemplo con Ruby. Estadísticas (prestadas)](https://reader031.fdocument.pub/reader031/viewer/2022022101/5bb231b609d3f2f1188ca78b/html5/thumbnails/9.jpg)
Estructura de un videojuego
• ¿Pierde o gana?
![Page 10: Programación de un videojuego 2D con Open Source · • Movimiento de enemigos • El producto final ¿Otro lenguaje? Claro, veamos un ejemplo con Ruby. Estadísticas (prestadas)](https://reader031.fdocument.pub/reader031/viewer/2022022101/5bb231b609d3f2f1188ca78b/html5/thumbnails/10.jpg)
SDL
• Simple DirectMedia Layer– Video– Audio– CDRom– Entrada de Joystick– Temporizadores
![Page 11: Programación de un videojuego 2D con Open Source · • Movimiento de enemigos • El producto final ¿Otro lenguaje? Claro, veamos un ejemplo con Ruby. Estadísticas (prestadas)](https://reader031.fdocument.pub/reader031/viewer/2022022101/5bb231b609d3f2f1188ca78b/html5/thumbnails/11.jpg)
SDL
• No te preocupes por el hardware
![Page 12: Programación de un videojuego 2D con Open Source · • Movimiento de enemigos • El producto final ¿Otro lenguaje? Claro, veamos un ejemplo con Ruby. Estadísticas (prestadas)](https://reader031.fdocument.pub/reader031/viewer/2022022101/5bb231b609d3f2f1188ca78b/html5/thumbnails/12.jpg)
SDL
• Extensible– Mixer– Image– Text– …
![Page 13: Programación de un videojuego 2D con Open Source · • Movimiento de enemigos • El producto final ¿Otro lenguaje? Claro, veamos un ejemplo con Ruby. Estadísticas (prestadas)](https://reader031.fdocument.pub/reader031/viewer/2022022101/5bb231b609d3f2f1188ca78b/html5/thumbnails/13.jpg)
SDL
• Puedes usar diferentes lenguajes– C– C++– Python (PyGame)– Ruby (RubyGame)– Php– Java
![Page 14: Programación de un videojuego 2D con Open Source · • Movimiento de enemigos • El producto final ¿Otro lenguaje? Claro, veamos un ejemplo con Ruby. Estadísticas (prestadas)](https://reader031.fdocument.pub/reader031/viewer/2022022101/5bb231b609d3f2f1188ca78b/html5/thumbnails/14.jpg)
Manos a la obra
• Ventana Inicial• Jugador • Movimiento• Enemigos• Clones de sombra• Movimiento de enemigos• El producto final
![Page 15: Programación de un videojuego 2D con Open Source · • Movimiento de enemigos • El producto final ¿Otro lenguaje? Claro, veamos un ejemplo con Ruby. Estadísticas (prestadas)](https://reader031.fdocument.pub/reader031/viewer/2022022101/5bb231b609d3f2f1188ca78b/html5/thumbnails/15.jpg)
¿Otro lenguaje?
Claro, veamos un ejemplo con Ruby
![Page 16: Programación de un videojuego 2D con Open Source · • Movimiento de enemigos • El producto final ¿Otro lenguaje? Claro, veamos un ejemplo con Ruby. Estadísticas (prestadas)](https://reader031.fdocument.pub/reader031/viewer/2022022101/5bb231b609d3f2f1188ca78b/html5/thumbnails/16.jpg)
Estadísticas (prestadas)
Ventas en 2005 -> 29 billones de dólares
Estimación a 2010 -> 42 billones de dólares
43% de los jugadores son “mujeres”Edad promedio jugadores -> 30 añosConsumidor objetivo -> 37 años83% de los juegos no tienen contenidos
para adultos.Fuente: http://www.ted.com/talks/david_perry_on_videogames.html
![Page 17: Programación de un videojuego 2D con Open Source · • Movimiento de enemigos • El producto final ¿Otro lenguaje? Claro, veamos un ejemplo con Ruby. Estadísticas (prestadas)](https://reader031.fdocument.pub/reader031/viewer/2022022101/5bb231b609d3f2f1188ca78b/html5/thumbnails/17.jpg)
Ideas curiosas sobre los video juegos (prestadas)
Jane McGonigal dice que los videojuegos pueden alargar tu vida 10 años extras.
También dice que si jugamos más videojuegos podremos salvar el mundo.
Fuente: http://www.ted.com/talks/jane_mcgonigal_the_game_that_can_give_you_10_extra_years_of_life.html
![Page 18: Programación de un videojuego 2D con Open Source · • Movimiento de enemigos • El producto final ¿Otro lenguaje? Claro, veamos un ejemplo con Ruby. Estadísticas (prestadas)](https://reader031.fdocument.pub/reader031/viewer/2022022101/5bb231b609d3f2f1188ca78b/html5/thumbnails/18.jpg)
¿Por qué la gente detesta los videojuegos?
¡Son una pérdida de tiempo!
![Page 19: Programación de un videojuego 2D con Open Source · • Movimiento de enemigos • El producto final ¿Otro lenguaje? Claro, veamos un ejemplo con Ruby. Estadísticas (prestadas)](https://reader031.fdocument.pub/reader031/viewer/2022022101/5bb231b609d3f2f1188ca78b/html5/thumbnails/19.jpg)
En defensa de los videojuegos
Las personas, justo antes de morir, desearían haber tenido más tiempo para hacer las cosas que eran entretenidas, no haber trabajado tanto, haber compartido más con la familia, con los amigos… creo que se entiende la idea ya
![Page 20: Programación de un videojuego 2D con Open Source · • Movimiento de enemigos • El producto final ¿Otro lenguaje? Claro, veamos un ejemplo con Ruby. Estadísticas (prestadas)](https://reader031.fdocument.pub/reader031/viewer/2022022101/5bb231b609d3f2f1188ca78b/html5/thumbnails/20.jpg)
¿Qué podemos hacer nosotros?
Jugar (jupiiii)Programar videojuegosInvertir tiempo en aquello que te hace
feliz
![Page 21: Programación de un videojuego 2D con Open Source · • Movimiento de enemigos • El producto final ¿Otro lenguaje? Claro, veamos un ejemplo con Ruby. Estadísticas (prestadas)](https://reader031.fdocument.pub/reader031/viewer/2022022101/5bb231b609d3f2f1188ca78b/html5/thumbnails/21.jpg)
En resumen
Pasa a la acción
![Page 22: Programación de un videojuego 2D con Open Source · • Movimiento de enemigos • El producto final ¿Otro lenguaje? Claro, veamos un ejemplo con Ruby. Estadísticas (prestadas)](https://reader031.fdocument.pub/reader031/viewer/2022022101/5bb231b609d3f2f1188ca78b/html5/thumbnails/22.jpg)
Un momento…
Y el proyecto final… ¿logré hacer el video juego completo?
![Page 23: Programación de un videojuego 2D con Open Source · • Movimiento de enemigos • El producto final ¿Otro lenguaje? Claro, veamos un ejemplo con Ruby. Estadísticas (prestadas)](https://reader031.fdocument.pub/reader031/viewer/2022022101/5bb231b609d3f2f1188ca78b/html5/thumbnails/23.jpg)
Muchas gracias
@nelsonrojas