Quiero crear un juego   Planificaci´n
                                  o      Grafismo   Audio   Programaci´n
                                                                     o    Inteligencia Artificial   Conclusiones




                             Videojuegos y Software Libre

                                         Manuel Palomo Duarte
                                         David Saltares M´rquez
                                                         a
                                        Jos´ Tom´s Tocino Garc´
                                           e     a              ıa
                                       Juan Manuel Dodero Beardo
                                        Antonio Garc´ Dom´
                                                    ıa     ınguez
                                        Antonio Balderas Alberico


                                  Open Source World Conference
                                         Enero de 2012
Quiero crear un juego   Planificaci´n
                                  o    Grafismo   Audio   Programaci´n
                                                                   o    Inteligencia Artificial   Conclusiones




´
Indice de contenidos

       1    Quiero crear un juego

       2    Planificaci´n
                      o

       3    Grafismo

       4    Audio

       5    Programaci´n
                      o

       6    Inteligencia Artificial

       7    Conclusiones
Quiero crear un juego   Planificaci´n
                                  o    Grafismo   Audio   Programaci´n
                                                                   o    Inteligencia Artificial   Conclusiones




¿Qu´ necesito?
   e




                             Quiero crear un juego, ¿y ahora qu´?
                                                               e

       Necesitamos
           Hardware: el equipo m´s barato nos sirve
                                a
               Software: veremos si es posible con Software Libre
               ¡Muchas ganas!: lo m´s importante
                                   a
Quiero crear un juego   Planificaci´n
                                  o    Grafismo   Audio   Programaci´n
                                                                   o    Inteligencia Artificial   Conclusiones




Elementos del desarrollo




       Elementos
           Planificaci´n
                     o
               Grafismo
               Sonido
               Programaci´n
                         o
Quiero crear un juego   Planificaci´n
                                  o    Grafismo   Audio   Programaci´n
                                                                   o    Inteligencia Artificial   Conclusiones




Planner
       Utilidad
            Definir tareas
               Precedencia entre tareas
               Asignar tareas
Quiero crear un juego   Planificaci´n
                                  o    Grafismo   Audio    Programaci´n
                                                                    o    Inteligencia Artificial   Conclusiones




The Gimp



                                                         Dise˜o gr´fico
                                                             n    a



    Utilidad
         Dise˜o de personajes
             n
            Escenarios
            Montajes
            R´tulos
             o
Quiero crear un juego   Planificaci´n
                                  o    Grafismo   Audio   Programaci´n
                                                                   o    Inteligencia Artificial   Conclusiones




The Gimp - Informaci´n adicional
                    o

       Tutoriales
           http://www.gimp.org/tutorials/
               http://www.gimp.org.es/
Quiero crear un juego   Planificaci´n
                                  o    Grafismo   Audio    Programaci´n
                                                                    o    Inteligencia Artificial   Conclusiones




Inkscape


                                                         Dibujo vectorial




    Utilidad
         Personajes
            Im´genes escalables
              a
            Logos
Quiero crear un juego   Planificaci´n
                                  o    Grafismo   Audio   Programaci´n
                                                                   o    Inteligencia Artificial   Conclusiones




Inkscape - Informaci´n adicional
                    o
       Tutoriales
           http://www.inkscape.org/doc/basic/tutorial-basic.es.html
               http://inkscapetutorials.wordpress.com/
Quiero crear un juego   Planificaci´n
                                  o    Grafismo   Audio    Programaci´n
                                                                    o    Inteligencia Artificial   Conclusiones




Synfig

                                                         Animaci´n 2D
                                                                o




    Utilidad
         Animaciones de los
         personajes
            Escenas de v´
                        ıdeo
Quiero crear un juego   Planificaci´n
                                  o    Grafismo   Audio   Programaci´n
                                                                   o    Inteligencia Artificial   Conclusiones




Synfig - Informaci´n adicional
                 o
       Tutoriales
           http://synfig.org/wiki/Main Page/es
Quiero crear un juego   Planificaci´n
                                  o    Grafismo   Audio    Programaci´n
                                                                    o    Inteligencia Artificial   Conclusiones




Blender



                                                         Modelado y animaci´n en 3D
                                                                           o




    Utilidad
         Personajes y escenarios en
         3D
            Animaciones
            Escenas cinem´ticas
                         a
Quiero crear un juego   Planificaci´n
                                  o    Grafismo   Audio   Programaci´n
                                                                   o    Inteligencia Artificial   Conclusiones




Blender - Informaci´n adicional
                   o
       Tutoriales
           Aprende Blender en 24h
               http://www.blender.org/education-help/tutorials/
Quiero crear un juego   Planificaci´n
                                  o    Grafismo   Audio    Programaci´n
                                                                    o    Inteligencia Artificial   Conclusiones




Audacity


                                                         Edici´n de sonido
                                                              o




    Utilidad
         SFX (Efectos de sonido)
            Voces
            Banda sonora
Quiero crear un juego   Planificaci´n
                                  o    Grafismo   Audio    Programaci´n
                                                                    o    Inteligencia Artificial   Conclusiones




Simple DirectMedia Layer (SDL)


                                                         Librer´ para desarrollar juegos
                                                               ıa
                                                         2D en C/C++


    Funcionalidades
        V´ıdeo: im´genes, texto...
                  a
            Gesti´n de eventos
                 o
            Audio
            Tiempo
            Multiplataforma
Quiero crear un juego   Planificaci´n
                                  o    Grafismo   Audio   Programaci´n
                                                                   o    Inteligencia Artificial   Conclusiones




SDL - Informaci´n adicional
               o


       Tutoriales
           http://osl.uca.es/wikijuegos/
               http://lazyfoo.net/SDL tutorials/index.php
Quiero crear un juego   Planificaci´n
                                  o    Grafismo   Audio    Programaci´n
                                                                    o    Inteligencia Artificial   Conclusiones




Gosu


                                                         Una capa por encima de SDL
                                                         con orientaci´n a objetos y
                                                                      o
                                                         aceleraci´n gr´fica para C++ y
                                                                  o    a
                                                         Ruby


    Funcionalidades
        Todas las de SDL
            M´s c´moda de usar
             a o
            Aceleraci´n gr´fica
                     o    a
Quiero crear un juego   Planificaci´n
                                  o    Grafismo   Audio   Programaci´n
                                                                   o    Inteligencia Artificial   Conclusiones




Gosu - Informaci´n adicional
                o
       Tutoriales
           http://libgosu.org
Quiero crear un juego   Planificaci´n
                                  o    Grafismo   Audio    Programaci´n
                                                                    o    Inteligencia Artificial   Conclusiones




PyGame




                                                         Wrapper de SDL para Python



    Funcionalidades
        Todas las de SDL
            M´s c´moda de usar
             a o
            La potencia de Python
Quiero crear un juego   Planificaci´n
                                  o    Grafismo   Audio   Programaci´n
                                                                   o    Inteligencia Artificial   Conclusiones




PyGame - Informaci´n adicional
                  o
       Tutoriales
           http://www.pygame.org/docs/
               http://www.pygame.org/wiki/tutorials
Quiero crear un juego   Planificaci´n
                                  o    Grafismo   Audio    Programaci´n
                                                                    o    Inteligencia Artificial   Conclusiones




Ogre3D

                                                         Motor gr´fico 3D para C++
                                                                  a
                                                         multiplataforma


    Funcionalidades
        Carga de modelos y
        texturas
            Animaciones
            Efectos
            Arquitectura modular y
            extensible
            Conversores para muchos
            formatos
Quiero crear un juego   Planificaci´n
                                  o    Grafismo   Audio   Programaci´n
                                                                   o    Inteligencia Artificial   Conclusiones




Ogre3D - Informaci´n adicional
                  o

       Tutoriales
           http://osl2.uca.es/iberogre
               http://ogre3d.org/tikiwiki/tiki-index.php
Quiero crear un juego   Planificaci´n
                                  o    Grafismo   Audio    Programaci´n
                                                                    o    Inteligencia Artificial   Conclusiones




Panda3D



                                                         Motor gr´fico 3D para Python y
                                                                 a
                                                         C++ multiplataforma




    Funcionalidades
        Carga de modelos y
        texturas
            Animaciones y efectos
            Colisiones
Quiero crear un juego   Planificaci´n
                                  o    Grafismo   Audio   Programaci´n
                                                                   o    Inteligencia Artificial   Conclusiones




Panda3D - Informaci´n adicional
                   o

       Tutoriales
           http://www.panda3d.org/wiki/index.php/Main Page
Quiero crear un juego   Planificaci´n
                                  o     Grafismo   Audio    Programaci´n
                                                                     o    Inteligencia Artificial   Conclusiones




Otras librer´
            ıas



                                       Hay much´
                                               ısimas librer´
                                                            ıas


    2D
            Allegro (C/C++)
            JGame (Java)
                                                          3D
            ...
                                                               Irrlicht (C++)
                                                               Crystal Space (C++)
                                                               ...
Quiero crear un juego   Planificaci´n
                                  o    Grafismo   Audio   Programaci´n
                                                                   o    Inteligencia Artificial   Conclusiones




Inteligencia artificial (IA) para videojuegos


    Programaci´n
              o
        La programaci´n de IA
                     o
        puede ser compleja ...
            ... pero existen t´cnicas que
                              e
            pueden facilitarla
            En la Universidad de C´diz
                                  a
            usamos un videojuego para
            aprender a programar IA
            con sistemas expertos
            basados en reglas
    http://code.google.com/p/gsiege
Quiero crear un juego   Planificaci´n
                                  o    Grafismo   Audio   Programaci´n
                                                                   o    Inteligencia Artificial   Conclusiones




Hay herramientas suficientes




       Conclusiones
           Hay herramientas en cada campo...
               ...aunque algunos est´n m´s evolucionados que otros
                                    a   a
               Tenemos m´s que de sobra para hacer juegos con Software
                        a
               Libre
Quiero crear un juego    Planificaci´n
                                   o       Grafismo       Audio      Programaci´n
                                                                              o        Inteligencia Artificial    Conclusiones




                        http://groups.google.com/group/advuca/


              ¡Muchas gracias por vuestra
                      atenci´n!
                            o
                                                 ¿Dudas?
           Trabajo financiado por el Proyecto La competitividad y el an´lisis cr´
                                                                      a        ıtico en la evaluaci´n (CIE44) de la
                                                                                                   o
        “Convocatoria 2010 de Proyectos de Innovaci´n Educativa Universitaria para el PDI de la Universidad de C´diz”
                                                   o                                                              a

Videojuegos

  • 1.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones Videojuegos y Software Libre Manuel Palomo Duarte David Saltares M´rquez a Jos´ Tom´s Tocino Garc´ e a ıa Juan Manuel Dodero Beardo Antonio Garc´ Dom´ ıa ınguez Antonio Balderas Alberico Open Source World Conference Enero de 2012
  • 2.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones ´ Indice de contenidos 1 Quiero crear un juego 2 Planificaci´n o 3 Grafismo 4 Audio 5 Programaci´n o 6 Inteligencia Artificial 7 Conclusiones
  • 3.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones ¿Qu´ necesito? e Quiero crear un juego, ¿y ahora qu´? e Necesitamos Hardware: el equipo m´s barato nos sirve a Software: veremos si es posible con Software Libre ¡Muchas ganas!: lo m´s importante a
  • 4.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones Elementos del desarrollo Elementos Planificaci´n o Grafismo Sonido Programaci´n o
  • 5.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones Planner Utilidad Definir tareas Precedencia entre tareas Asignar tareas
  • 6.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones The Gimp Dise˜o gr´fico n a Utilidad Dise˜o de personajes n Escenarios Montajes R´tulos o
  • 7.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones The Gimp - Informaci´n adicional o Tutoriales http://www.gimp.org/tutorials/ http://www.gimp.org.es/
  • 8.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones Inkscape Dibujo vectorial Utilidad Personajes Im´genes escalables a Logos
  • 9.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones Inkscape - Informaci´n adicional o Tutoriales http://www.inkscape.org/doc/basic/tutorial-basic.es.html http://inkscapetutorials.wordpress.com/
  • 10.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones Synfig Animaci´n 2D o Utilidad Animaciones de los personajes Escenas de v´ ıdeo
  • 11.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones Synfig - Informaci´n adicional o Tutoriales http://synfig.org/wiki/Main Page/es
  • 12.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones Blender Modelado y animaci´n en 3D o Utilidad Personajes y escenarios en 3D Animaciones Escenas cinem´ticas a
  • 13.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones Blender - Informaci´n adicional o Tutoriales Aprende Blender en 24h http://www.blender.org/education-help/tutorials/
  • 14.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones Audacity Edici´n de sonido o Utilidad SFX (Efectos de sonido) Voces Banda sonora
  • 15.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones Simple DirectMedia Layer (SDL) Librer´ para desarrollar juegos ıa 2D en C/C++ Funcionalidades V´ıdeo: im´genes, texto... a Gesti´n de eventos o Audio Tiempo Multiplataforma
  • 16.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones SDL - Informaci´n adicional o Tutoriales http://osl.uca.es/wikijuegos/ http://lazyfoo.net/SDL tutorials/index.php
  • 17.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones Gosu Una capa por encima de SDL con orientaci´n a objetos y o aceleraci´n gr´fica para C++ y o a Ruby Funcionalidades Todas las de SDL M´s c´moda de usar a o Aceleraci´n gr´fica o a
  • 18.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones Gosu - Informaci´n adicional o Tutoriales http://libgosu.org
  • 19.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones PyGame Wrapper de SDL para Python Funcionalidades Todas las de SDL M´s c´moda de usar a o La potencia de Python
  • 20.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones PyGame - Informaci´n adicional o Tutoriales http://www.pygame.org/docs/ http://www.pygame.org/wiki/tutorials
  • 21.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones Ogre3D Motor gr´fico 3D para C++ a multiplataforma Funcionalidades Carga de modelos y texturas Animaciones Efectos Arquitectura modular y extensible Conversores para muchos formatos
  • 22.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones Ogre3D - Informaci´n adicional o Tutoriales http://osl2.uca.es/iberogre http://ogre3d.org/tikiwiki/tiki-index.php
  • 23.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones Panda3D Motor gr´fico 3D para Python y a C++ multiplataforma Funcionalidades Carga de modelos y texturas Animaciones y efectos Colisiones
  • 24.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones Panda3D - Informaci´n adicional o Tutoriales http://www.panda3d.org/wiki/index.php/Main Page
  • 25.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones Otras librer´ ıas Hay much´ ısimas librer´ ıas 2D Allegro (C/C++) JGame (Java) 3D ... Irrlicht (C++) Crystal Space (C++) ...
  • 26.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones Inteligencia artificial (IA) para videojuegos Programaci´n o La programaci´n de IA o puede ser compleja ... ... pero existen t´cnicas que e pueden facilitarla En la Universidad de C´diz a usamos un videojuego para aprender a programar IA con sistemas expertos basados en reglas http://code.google.com/p/gsiege
  • 27.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones Hay herramientas suficientes Conclusiones Hay herramientas en cada campo... ...aunque algunos est´n m´s evolucionados que otros a a Tenemos m´s que de sobra para hacer juegos con Software a Libre
  • 28.
    Quiero crear unjuego Planificaci´n o Grafismo Audio Programaci´n o Inteligencia Artificial Conclusiones http://groups.google.com/group/advuca/ ¡Muchas gracias por vuestra atenci´n! o ¿Dudas? Trabajo financiado por el Proyecto La competitividad y el an´lisis cr´ a ıtico en la evaluaci´n (CIE44) de la o “Convocatoria 2010 de Proyectos de Innovaci´n Educativa Universitaria para el PDI de la Universidad de C´diz” o a