Introdução ao Desenvolvimento de Jogos em Python com PyGame
Descrição do livro
Introdução ao Desenvolvimento de Jogos em Python com PyGame, ensina você a criar jogos atraentes usando o Python e a biblioteca PyGame para desenvolvimento de jogos. O livro ensinará você a criar o visual, tratar eventos, criar jogos 3D, acrescentar elementos de mídia e integrar a OpenGL ao seu jogo Python.
Você obterá insights técnicos valiosos e acompanhará a criação de um videogame de verdade, que poderá ser baixado gratuitamente. Escrito por Will McGugan e Harrison Kinsley, veteranos no mercado e experts em Python, esta é uma introdução completa e prática ao desenvolvimento de jogos em Python. Você poderá tirar proveito de várias dicas e truques que os autores colecionaram ao longo de suas carreiras enquanto criavam jogos para alguns dos principais desenvolvedores de jogos do mundo.
Você aprenderá a:
usar o PyGame e o Python para desenvolvimento de jogos;
criar os aspectos visuais, tratar eventos e realizar outras tarefas;
desenvolver jogos 3D usando o Python;
acrescentar elementos de mídia;
criar backgrounds visualmente dinâmicos ao integrar a OpenGL e outros recursos em seu jogo baseado em Python;
criar um projeto de jogo passo a passo.
Sumário
- Sobre os autores
- Sobre o revisor técnico
- Introdução
- Capítulo 1 ■ Introdução ao Python
- Seu primeiro contato com o Python
- Números
- Strings
- Listas e tuplas
- Desempacotamento
- Loops
- Python na prática
- Resumo
- Seu primeiro contato com o Python
- Capítulo 2 ■ Explorando o Python
- Criando scripts
- Trabalhando com lógica
- Entendendo os booleanos
- Instrução if
- Operador and
- Operador or
- Operador not
- Instrução else
- Instrução elif
- Entendendo as funções
- Definindo funções
- Valores default
- Introdução à programação orientada a objetos
- Usando classes
- Criando um objeto
- Fazendo acréscimos à nossa classe
- Python na prática
- Usando a biblioteca-padrão
- Introdução à importação
- Módulos úteis para jogos
- Módulo math
- Resumo
- Capítulo 3 ■ Introdução ao Pygame
- História do Pygame
- Instalando o Pygame
- Usando o Pygame
- Hello World novamente
- Compreendendo os eventos
- Obtendo eventos
- Tratando eventos de movimento do mouse
- Tratando eventos de botões do mouse
- Tratando eventos de teclado
- Filtrando eventos
- Postando eventos
- Abrindo um display
- Displays de tela cheia
- Janelas do Pygame que podem ser redimensionadas
- Janelas sem bordas
- Flags adicionais de display
- Usando o módulo de fontes
- Pygame em ação
- Resumo
- Capítulo 4 ■ Criando o visual
- Usando a eficácia do pixel
- Trabalhando com cores
- Representando as cores no Pygame
- Gradação de cores
- Misturando cores
- Usando imagens
- Criando imagens com um canal alpha
- Armazenando imagens
- Trabalhando com objetos de superfície
- Criando superfícies
- Preenchendo as superfícies
- Obtendo pixels em uma superfície
- Blitting
- Desenhando com o Pygame
- pygame draw rect
- pygame draw polygon
- pygame draw circle
- pygame draw ellipse
- pygame draw arc
- pygame draw line
- pygame draw lines
- pygame draw aaline
- Resumo
- Capítulo 5 ■ Movendo objetos
- Compreendendo a taxa de frames
- Movimento em linha reta
- O segredo é o tempo
- Movimento diagonal
- Explorando os vetores
- Criando vetores
- Armazenando vetores
- Magnitude de um vetor
- Vetores unitários
- Soma de vetores
- Subtração de vetores
- Negação de vetores
- Multiplicação e divisão de vetores
- Usando vetores para criar movimento
- Movimento diagonal
- Classe de vetor de Game Objects
- Resumo
- Capítulo 6 ■ Aceitando entrada do usuário
- Controlando o jogo
- Entendendo o controle pelo teclado
- Detectando pressionamentos de teclas
- Movimentos direcionais com as teclas
- Movimentos de rotação com as teclas
- Implementando o controle pelo mouse
- Movimentos de rotação com o mouse
- Gameplay com o mouse
- Implementando o controle pelo joystick
- Básico sobre o joystick
- Botões do joystick
- Controles de direção do joystick
- Objetos joystick
- Vendo os joysticks em ação
- Resumo
- Capítulo 7 ■ Leve-me ao seu líder
- Criando a inteligência artificial em jogos
- O que é inteligência?
- Explorando a IA
- Implementando as máquinas de estado
- Entidades de jogos
- Criando mundos
- Classe de entidade Ant
- Criando o cérebro
- Resumo
- Criando a inteligência artificial em jogos
- Capítulo 8 ■ Passando para a terceira dimensão
- Criando a ilusão de profundidade
- Entendendo o espaço 3D
- Usando vetores 3D
- Movimento baseado em tempo em 3D
- Projeção de pontos 3D
- Projeções paralelas
- Projeções de perspectiva
- Campo de visão
- Um mundo 3D
- Resumo
- Capítulo 9 ■ Explorando a terceira dimensão
- O que é uma matriz?
- Usando a classe de matriz
- Componentes da matriz
- Matriz de translação
- Matriz de escala
- Matriz de rotação
- Multiplicação de matrizes
- Matrizes em ação
- Introdução à OpenGL
- Instalando o PyOpenGL
- Inicializando a OpenGL
- Básico sobre a OpenGL
- Vendo a OpenGL em ação
- Resumo
- O que é uma matriz?
- Capítulo 10 ■ Fazendo barulho
- O que é som?
- Armazenando sons
- Formatos dos sons
- Criando efeitos sonoros
- Efeitos sonoros em estoque
- Reproduzindo sons com o Pygame
- Objetos Sound
- Canais de som
- Funções de mixer
- Ouvindo o mixer em ação
- Tocando músicas com o Pygame
- Obtendo músicas
- Tocando músicas
- As músicas em ação
- Resumo
- Capítulo 11 ■ Luzes, câmera, ação!
- Carregando texturas com a OpenGL
- Coordenadas de textura
- Renderizando texturas
- Apagando texturas
- Vendo as texturas em ação
- Mip mapping
- Parâmetros de textura
- Filtros min e max
- Wrapping de textura
- Trabalhando com modelos
- Armazenando modelos
- Formato OBJ para modelos 3D
- Fazendo parse de arquivos OBJ
- Arquivos de biblioteca de materiais
- Vendo os modelos em ação
- Usando a classe Model3D
- Resumo
- Carregando texturas com a OpenGL
- Capítulo 12 ■ Criando o cenário com a OpenGL
- Entendendo a iluminação
- Habilitando a iluminação
- Definindo os parâmetros das luzes
- Trabalhando com materiais
- Ajustando os parâmetros
- Administrando as luzes
- Entendendo o blending
- Usando o blending
- Alpha blending
- Blending aditivo
- Blending subtrativo
- Vendo o blending em ação
- Problemas com blending
- Entendendo o fog
- Parâmetros de fog
- Vendo o fog em ação
- Renderizando o backdrop
- Skyboxes
- Vendo as skyboxes em ação
- Melhorias na skybox
- Onde buscar ajuda
- Resumo
- Apêndice A ■ Referência ao Game Objects
- Importação
- Contribuição
- gameobjects color Color
- Construtor
- Atributos
- Métodos
- Métodos da classe
- gameobjects matrix44 Matrix44
- Construtor
- Atributos
- Métodos
- Métodos da classe
- gameobjects vector2 Vector2
- Construtor
- Atributos
- Métodos
- Métodos da classe
- gameobjects vector3 Vector3
- Construtor
- Atributos
- Métodos
- Métodos da classe
- Apêndice B ■ Empacotando o seu jogo
- Criando pacotes Windows
- Usando o cx_Freeze
- Criando o instalador
- Criando pacotes para Linux
- Criando pacotes para Mac
- Criando pacotes Windows
Sobre os autores
Harrison Kinsley é desenvolvedor de software e empreendedor e mora no Texas. Tem vários negócios, todos baseados em Python. http://pythonprogramming.net é um site de tutoriais para programação Python criado por ele, juntamente com seu canal no YouTube, e disponibiliza quase mil tutoriais sobre Python. O site em si também foi criado com o Flask… Ver perfil completo ▶
Will McGugan é desenvolvedor de software; ele mora e trabalha no noroeste da Inglaterra. Trabalhou com videogames e computação gráfica desde o início do 3D e criou diversos jogos shareware em seu tempo livre. Will trabalha na Evolution Studios, um dos principais estúdios de desenvolvimento de games do mundo. Também tem bastante experiência no… Ver perfil completo ▶
Livros relacionados
Recursos
Opinião dos leitores
Welton V de S
Esse livro é muito bom. Comprei dois e pedi para meu professor sorteá-lo no projeto dele para ensinar programação para crianças. Este livro consegue ser uma introdução perfeita ao Python, rápido e fácil de ler, e com muitos exemplos simples e avançados na dose certa.
Manuel G
Livro atualizado e de fácil compreensão, leitura obrigatória para os apaixonados por Python.
Geraldo J de C N
O conteudo é muito bom, atualizado, tem a abrangência a que se propõe, é de fácil e agradável leitura.
André L N
O livro é uma ótima introdução ao pygame.






