Slide 1

Slide 1 text

Python e Games Python Brasil 11 2015

Slide 2

Slide 2 text

Quem sou eu ● Julio Cesar Eiras Melanda ● Pythonista desde 2007 ● Universidade Federal de Itajubá ● Toptal ● Programe em Python – http://programeempython.com.br ● Desenvolvimento web, cursos de programação, entusiasta de desenvolvimento de jogos

Slide 3

Slide 3 text

10/11/2015 Python Brasil 11 3 Usos de Python em jogos ● Jogo em si ● Scripting ● Servidor

Slide 4

Slide 4 text

10/11/2015 Python Brasil 11 4 Jogos que usam Python ● Frets on Fire (Pygame + PyOpenGL) ● EVE Online (Stackless Python) ● Disney's Pirates of the Caribbean Online (Panda 3D) ● Battlefield 2 e 2142 (lógica e controles) ● Fonte: https://wiki.python.org/moin/PythonGames

Slide 5

Slide 5 text

10/11/2015 Python Brasil 11 5 Como criar jogos com Python ● Bibliotecas gráficas (TkInter, PyQt5, PyGTK) ● Game Engines (Pygame, Cocos2d, Pyglet) ● Game servers (Flask, Bottle, Falcon, Django)

Slide 6

Slide 6 text

10/11/2015 Python Brasil 11 6 Game Engines ● Abstraem conceitos importantes do funcionamento de jogos para simplificar o desenvolvimento ● Framework gráfico ● Biblioteca de física

Slide 7

Slide 7 text

10/11/2015 Python Brasil 11 7 Pygame https://www.pygame.org

Slide 8

Slide 8 text

10/11/2015 Python Brasil 11 8 Pygame ● Usa SDL ● Não depende de OpenGL ● Não força uso de classes e orientação a objetos ● Suporta múltiplos backends gráficos (opengl, directx, windib, x11, linux frame buffer, ASCI Art) ● Multicore (libera o infame GIL) ● Python 2 e 3 ● Pode ser usada só como engine junto a outras engines gráficas, como pyglet por exemplo ou PyOpenGL

Slide 9

Slide 9 text

10/11/2015 Python Brasil 11 9 Pygame ● Frets on fire ● Arena Game Show Shooter ● Dark Gates (steam!)

Slide 10

Slide 10 text

10/11/2015 Python Brasil 11 10 Cocos2D http://python.cocos2d.org/

Slide 11

Slide 11 text

10/11/2015 Python Brasil 11 11 Cocos2D ● Cocos2D original, foi o que começou a biblioteca ● Baseado em Pyglet e OpenGL ● Força um pouco o uso de classes ● Usa conceitos como diretor, cena, camada para modelar entidades do jogo. ● Python 2 e 3

Slide 12

Slide 12 text

10/11/2015 Python Brasil 11 12 Cocos2D ● Tetrico ● Port inicial Arena Game Show Shooter

Slide 13

Slide 13 text

10/11/2015 Python Brasil 11 13 Ren'Py http://www.renpy.org/

Slide 14

Slide 14 text

10/11/2015 Python Brasil 11 14 Ren'Py ● Visual Novels e Simulações ● Cross plataforma – Computador e mobile ● Linguagem de script própria para storytelling mais linear ● Python para lógicas mais complexas ● Fácil de customizar

Slide 15

Slide 15 text

10/11/2015 Python Brasil 11 15 Ren'Py ● Icebound (Steam)

Slide 16

Slide 16 text

10/11/2015 Python Brasil 11 16 Panda3D https://www.panda3d.org/

Slide 17

Slide 17 text

10/11/2015 Python Brasil 11 17 Panda3D ● Python e C++ ● Criado para uso da Disney ● Uso direto de funções gráficas mais avançadas como shaders, por exemplo ● Importa de Maya, 3DS Max e Blender ● Biblioteca de Física inclusa (PhysX) ● Sistemas de particulas ● IA simples

Slide 18

Slide 18 text

10/11/2015 Python Brasil 11 18 Panda3D ● Airblade (demo online) ● Angels Fall First: The Second Antarean War ● Disney's Pirates of the Caribbean Online

Slide 19

Slide 19 text

10/11/2015 Python Brasil 11 19 Blender Game Engine https://www.blender.org/

Slide 20

Slide 20 text

10/11/2015 Python Brasil 11 20 Blender Game Engine ● Audio 3D com OpenAL ● Exporta os modelos para outras engines ● Integrado com Física de balística ● Python para controle avançado e IA ● Roda jogos dentro do Blender sem precisar compilar

Slide 21

Slide 21 text

10/11/2015 Python Brasil 11 21 Blender Game Engine ● Yo Frankie! ● Super Blender Galaxy

Slide 22

Slide 22 text

10/11/2015 Python Brasil 11 22 Pyglet https://bitbucket.org/pyglet/pyglet/wiki/Home

Slide 23

Slide 23 text

10/11/2015 Python Brasil 11 23 Pyglet ● Sem dependências externas ● Usa multiplos monitores facilmente ● É uma biblioteca de multimedia e “windowing” que pode ser usada para criação de jogos ● Muitas vezes usada com Pygame

Slide 24

Slide 24 text

10/11/2015 Python Brasil 11 24 Pyglet ● Clone simples de Minecraft

Slide 25

Slide 25 text

10/11/2015 Python Brasil 11 25 Fife Engine http://www.fifengine.net/

Slide 26

Slide 26 text

10/11/2015 Python Brasil 11 26 Fife Engine ● Jogos de ROG e RTS, 2.5D ● Audio em OGG ● Editor de Mapas ● Editor de Atlas de imagens ● Console in game com suporte a python/scripts ● SDL ou OpenGL

Slide 27

Slide 27 text

10/11/2015 Python Brasil 11 27 ● Zero-Projekt ● Unknown Horizons

Slide 28

Slide 28 text

10/11/2015 Python Brasil 11 28 Kivy http://kivy.org/

Slide 29

Slide 29 text

10/11/2015 Python Brasil 11 29 Kivy ● Cross Plataforma ● Usa GPU ● Multitouch ● Cria jogo Mobile com Python ● Começou rodando sobre Pygame, hoje usa SDL diretamente

Slide 30

Slide 30 text

10/11/2015 Python Brasil 11 30 Kivy ● Defletouch ● Fishlife ● Memory Kivy

Slide 31

Slide 31 text

10/11/2015 Python Brasil 11 31 Onde trabalhar ● Empresas que tem vagas que pedem Python como linguagem de scripting – Unreal – Crytek – Activision – Blizzard – EA ● A sua empresa!

Slide 32

Slide 32 text

10/11/2015 Python Brasil 11 32 Duvidas?