Download Programming Videogames

Document related concepts
no text concepts found
Transcript
La Programación en Videojuegos
M.C. Juan Carlos Olivares Rojas
Huetamo, Michoacán, Marzo 2011
Agenda
• Introducción
• Herramientas de Programación
• Herramientas
programación
• Conclusiones
didácticas
de
Introducción
Definición
• Un videojuego o juego de vídeo es un
software
creado
para
el
entretenimiento en general y basado
en la interacción entre una o varias
personas y un aparato electrónico que
ejecuta dicho software.
• Es un sistema de información típico.
• Visualización
• Sonido
• Comunicaciones
• Game Loop
Anatomía de un VJ
• Entrada
• No se sabe a ciencia cierta
cuando
se
originaron
los
videojuegos.
Historia
Tennis en un
Osciloscopio
Historia
Herramientas de Programación
Programación de Videojuegos
• “Es el arte de instruir a un
computador
sobre
los
pasos
necesarios
para
resolver
los
problemas que influyen en la
creación de un videojuego”.
• Programar un videojuego es como
programar otro software
Programación de Videojuegos
Proceso de Desarrollo
• En un videojuego
muchas personas:
•
•
•
•
•
•
Productor
Diseñador
Programadores
Artistas, animadores
Tester
Otros …
trabajan
Proceso de Desarrollo
• Las fases de desarrollo de un
videojuego son:
• El concepto: la idea fundamental
en 25 palabras.
• Preproducción: desarrollo de las
bases de la idea (Storyboard).
Es el “modelado” del software.
Procesos de Desarrollo
• Producción:
programación,
implementación de diseños.
• Aseguramiento de la calidad
(QA): un videojuego no debe
tener errores. Se debe de probar
de forma robusta. El código y el
contenido deben de estar
completos.
Concept Design
Diseño
• Máquina de estados del PacMan
Modelado
Diseño Visual
Parado
Sentado
Talleres
• Robótica.
• Desarrollo de lógica
empleando ajedrez.
programable
• Programación para celulares.
• Promodel.
Programación Bajo Nivel
• Lenguaje ensamblador
• Se utilizan SDK y herramientas
específicas
Programación Alto Nivel
• Reusable a nivel de código
fuente y recientemente a nivel
de código binario.
• Ventajas:
• Manejo de memoria automático
• Disminución del código críptico
• Código multiplataforma
Programación en Java
• Desventajas:
• Ejecutables ligeramente más lentos
que C++
• La documentación de las nuevas
APIs es escasa
• Tecnologías muy nuevas en este
campo.
Programación en Java
Herramientas Estándar
Herramientas Estándar
Arquitectura de un videojuego
Motores de Render
IdTech3
Motores de Física
Motores de Sonido
Motores de GUI
• Interfaces Gráficas de Usuario.
• Librería CEGUI.
• Librería ButtonGUI.
GameMaker
Herramientas Didácticas
Juegos Educativos
• La obra HOMO LUDENS de Johan
Huizinga habla sobre la importancia
del juego en la cultura humana.
• La gran mayoría de las herramientas
de programación de videojuegos son
avanzadas y para aprender no es
sencillo.
Scratch
Alice
Caso de GreenFoot
GreenFoot
Conclusiones
Conclusiones
• La industria de los videojuegos es
más grande que la de la música y cine
juntas.
• Se debe de empezar a programar
videojuegos aunque sea sólo la lógica
o con herramientas sencillas.
Conclusiones
• Las
tendencias
videojuegos son:
del
área
de
• Programación en videojuegos móviles
• Software
incompleto:
Massive
Multiplayer Online Role Playing
Game.
• Uso del componente social
GAME OVER
Edificio I, Ins. Tec. de Morelia, DSC
@jcolivares
MSN: [email protected]
E-mail: [email protected]
Web: http://antares.itmorelia.edu.mx/~jcolivar