8/6/2019 Desarrollando Juegos con Python
1/47
Desarrollando Juegos conPython
Manuel Alejandro Cern Estrada
Colombia
8/6/2019 Desarrollando Juegos con Python
2/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.2
Dinmica de la charla
Qu es Python
Python y los juegos Herramientas en Python
PyGame
Panda3D Otros...
8/6/2019 Desarrollando Juegos con Python
3/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.3 Involucrate + GNOME 2008
Qu es Python?
8/6/2019 Desarrollando Juegos con Python
4/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.4
Python
Lenguaje de Programacin de Alto Nivel
Interpretado y Dinmico
Multiparadigma,
Multiplataforma
Interoperable Fcil de Usar y Aprender
De Cdigo Abierto
8/6/2019 Desarrollando Juegos con Python
5/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.5 Involucrate + GNOME 2008
Python para hacerJuegos? Una locura!
Python es Leeeeeento
8/6/2019 Desarrollando Juegos con Python
6/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.6
Python en la Industria de los
Videojuegos
Como Lenguaje de Scripting EVE ONLINE
Como Lenguaje Principal
ToonTown, Pirates of the Caribbean
En muchos juegos independientes
No todos los juegos tienen que costar unchirrin de dlares
8/6/2019 Desarrollando Juegos con Python
7/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.7 Involucrate + GNOME 2008
Herramientas para hacerjuegos con Python
8/6/2019 Desarrollando Juegos con Python
8/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.8 Involucrate + GNOME 2008
PyGame
Aqu deberan ser las :6:40
8/6/2019 Desarrollando Juegos con Python
9/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.9
PyGame
SDL Grficos 2D + conexin OpenGL
Musica y Efectos de Sonido
Entrada (Teclado y Otros)
Otros
8/6/2019 Desarrollando Juegos con Python
10/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.10 Involucrate + GNOME 2008
Algunos Juegos
8/6/2019 Desarrollando Juegos con Python
11/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.11 Involucrate + GNOME 2008
8/6/2019 Desarrollando Juegos con Python
12/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.12 Involucrate + GNOME 2008
8/6/2019 Desarrollando Juegos con Python
13/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.13 Involucrate + GNOME 2008
8/6/2019 Desarrollando Juegos con Python
14/47
8/6/2019 Desarrollando Juegos con Python
15/47
8/6/2019 Desarrollando Juegos con Python
16/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.16 Involucrate + GNOME 2008
Todava no me convence.
En verdad se puedenhacer juegos ms rpido?
!!PyWeek!!
8/6/2019 Desarrollando Juegos con Python
17/47
Manuel Alejandro Cer
n Estrada. Creative Commons Attribution License 2.0.17
PyWeek
Hacer un juego en una semana con Python.
Prximo 30 de Marzo.
Se aprende mucho y se divierte todava ms!!
No hay que ser experto.
8/6/2019 Desarrollando Juegos con Python
18/47
Manuel Alejandro Cer
n Estrada. Creative Commons Attribution License 2.0.18
Involucrate + GNOME 2008
Panda3D
Si no se ha acabado el tiempoes un Milagro
8/6/2019 Desarrollando Juegos con Python
19/47
Manuel Alejandro Cer
n Estrada. Creative Commons Attribution License 2.0.
19
Historia de Panda 3D
Disney VR Studio
quera renovar sussistemas DWD
Se requera unsystema ms
portable
8/6/2019 Desarrollando Juegos con Python
20/47
Manuel Alejandro Cer
n Estrada. Creative Commons Attribution License 2.0.
20
Historia de Panda3D
El ProyectoToonTown
Se necesita otromotor
Como DWD peromas modular yflexible
8/6/2019 Desarrollando Juegos con Python
21/47
Manuel Alejandro Cer
n Estrada. Creative Commons Attribution License 2.0.
21
Nace Panda3D
Platform AgnosticNetworkedDisplayArchitecture -Panda3D
8/6/2019 Desarrollando Juegos con Python
22/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.22
Historia de Panda3D
En 2002 Panda3D se vuelve SoftwareLibre
Todava necesitaba muchos retoques
Jeff Schell de Disney VR Studio entra a
CMU ETC El ETC estaba buscando algo abierto y
flexible
8/6/2019 Desarrollando Juegos con Python
23/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.23
Tres sectores confluyen
Industria
Comunidad Academia
Panda3DPanda3D
8/6/2019 Desarrollando Juegos con Python
24/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.24 Involucrate + GNOME 2008
La Tecnologa detrs de
Panda3D
8/6/2019 Desarrollando Juegos con Python
25/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.25
Lenguaje de Programacin
C++++Pythonython
8/6/2019 Desarrollando Juegos con Python
26/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.26
Lenguaje de Programacin
Ncleo en C++. Rpido y eficiente
Recubrimiento en Python. Facilidad de Uso yflexibilidad
Escribir un programa con Panda3D
usualmente consiste en escribir un programaen python que maneje la librera 3D
8/6/2019 Desarrollando Juegos con Python
27/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.27
Extensibilidad
Extensibilidad a travs de Mdulos de C++
Extensibilidad a travs de Mdules de Python
El sistema Interrogate ayuda manteneracoplados los bindings
8/6/2019 Desarrollando Juegos con Python
28/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.28
Independencia del API
OpenGL Direct3D
Abstraccin de API
Escena Grfica
8/6/2019 Desarrollando Juegos con Python
29/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.29
Caractersticas de Panda3D
Carga deModelos 3D -eggs
8/6/2019 Desarrollando Juegos con Python
30/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.30
Caractersticas de Panda3D
Carga deEntornos 3D -eggs
8/6/2019 Desarrollando Juegos con Python
31/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.31
Caractersticas de Panda3D
EfectosEspeciales
CartoonRender
8/6/2019 Desarrollando Juegos con Python
32/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.32
Caractersticas de Panda3D
Efectos
Especiales
Niebla
8/6/2019 Desarrollando Juegos con Python
33/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.33
Caractersticas de Panda3D
Efectos
Especiales
Efectos deLuz
8/6/2019 Desarrollando Juegos con Python
34/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.34
Caractersticas de Panda3D
Efectos
Especiales
MotionTrails
8/6/2019 Desarrollando Juegos con Python
35/47
8/6/2019 Desarrollando Juegos con Python
36/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.36
Caractersticas de Panda3D
Manejo de
Objetos 3D
8/6/2019 Desarrollando Juegos con Python
37/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.37
Caractersticas de Panda3D
Manejo de la
Iluminacin
8/6/2019 Desarrollando Juegos con Python
38/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.38
Caractersticas de Panda3D
Normal
Mapping
8/6/2019 Desarrollando Juegos con Python
39/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.39
Caractersticas de Panda3D
Sistemas de
Partculas
8/6/2019 Desarrollando Juegos con Python
40/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.40
Caractersticas de Panda3D
Seleccin en el
Espacio 3D
8/6/2019 Desarrollando Juegos con Python
41/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.41
Caractersticas de Panda3D
Geometra
Procedural
8/6/2019 Desarrollando Juegos con Python
42/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.42
Caractersticas de Panda3D
Renderizar a
Textura
8/6/2019 Desarrollando Juegos con Python
43/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.43
Caractersticas de Panda3D
Efectos de
Sonido yMsica
8/6/2019 Desarrollando Juegos con Python
44/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.44
Caso de Estudio
8/6/2019 Desarrollando Juegos con Python
45/47
8/6/2019 Desarrollando Juegos con Python
46/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.46
Enlaces de Inters
Web de Panda 3D:http://www.panda3d.org
Web del ETC de CMUhttp://www.etc.cmu.edu/
http://www.panda3d.org/http://www.etc.cmu.edu/http://www.etc.cmu.edu/http://www.panda3d.org/8/6/2019 Desarrollando Juegos con Python
47/47
Manuel Alejandro Cern Estrada. Creative Commons Attribution License 2.0.47 Involucrate + GNOME 2008
Muchas gracias!
Del mismo creador e esta charla llega:
Desarrollo de Aplicaciones GNOME con MonoDevelop
MonoUML y MonoHotDraw