Buscar

aula_pi_02_game_engine

Prévia do material em texto

Professor: Ronilson Morais Lobo 
Salvador / 2014 
Motor	
  do	
  Jogo	
  ou	
  Engine	
  gráfica	
  
—  Definição – Conhecida como motor de jogo ou 
game engine, é um software que compreende 
um conjunto de bibliotecas, que serve para 
simplificar e abstrair a implementação de um 
game, de modo a dar uma resposta em tempo 
real do resultado do jogo e dar suporte a 
incluir, simulação de física e animação. 
Obje5vos	
  	
  
—  Simular a física do mundo real dentro do 
ambiente de desenvolvimento do jogo, 
—  Permitir a interação entre os objetos dos jogos, 
tais como estruturas e animações 
tridimensionais. 
—  Apresentar um conjunto de bibliotecas, que 
apresentam soluções imediatas para o 
desenvolvimento de jogos em tempo real. 
Obje5vos	
  	
  
—  Renderizar gráficos 2D e 3D e um motor de 
física para simular eventos necessários para dá 
movimento e interação entre as peças do jogo, 
—  Tratar de colisões, inteligência artificial, 
ordenamento de animações e áudio, 
—  Gerenciar arquivos e a de execução de códigos 
e execução de script. 
Engine	
  e	
  a	
  Linguagem	
  de	
  programação	
  
—  Não há como negar que para alguns movimentos 
e interações sofisticados, a engine necessita 
trabalhar em conjunto com uma linguagem de 
programação que atenda a alguns requisitos 
que não sejam imediatamente atendidos pela 
engine gráfica. 
Engine	
  e	
  a	
  Linguagem	
  de	
  programação	
  
—  Para atender a estas necessidades o qualquer 
motor de jogo oferece ao desenvolvedor uma 
interface que para alguns requisitos não 
necessitam de nenhum tipo de código ou 
linguagem de programação. 
Exemplo	
  Blender	
  Engine	
  
—  Recursos necessários na Engine – Exemplo: 
—  Modelagem 3D, 
—  Materiais, texturas e iluminação, 
—  BGE (Blender Game Engine) 
—  Programação para Física real 
—  Animação 3D 
Imagem 01 – Marcas Blender e Python 
Imagem 02 – Modelagem 
Modelagem	
  3D	
  
Imagem 03 – Materiais, Texturas e Iluminação 
Materiais,	
  texturas	
  e	
  iluminação	
  
Imagem 05 – Animação com esqueleto 
Animação	
  3D	
  
Imagem 04 – Modelagem para animação 
Exemplo	
  Blender	
  Engine	
  
—  Blocos de lógica sem programação 
—  Este sistema compreende o uso dos blocos de 
lógica, em que as funções do jogo são criadas 
utilizando configurações e parâmetros que, 
ligados entre si, usam o motor de jogos 
integrados para controlar as ações, físicas e 
comportamentos dos objetos e personagens. 
Exemplo	
  Blender	
  Engine	
  
—  Engine Gráfica do Blender 
Imagem 06 – Implementação e Engine Gráfica. 
Exemplo	
  Blender	
  Engine	
  
—  Programação Pythom 
—  Entretanto para algumas funções de jogo, 
exigiram a inclusão de alguns códigos e 
linguagem de programação junto aos blocos de 
lógica. Para este fim o Blender utiliza a 
linguagem de programação Python. 
Mul5mídia	
  em	
  Jogos	
  
—  Para Filho (2000, p. 3), a multimídia pode ser 
compreendida como a integração de textos, 
imagens, gráficos, áudio e vídeo, controlados 
por computador e que estabelecem uma 
comunicação entre usuário e máquina, através 
das informações contidas nos diferentes meios 
ou mídias. 
Mul5mídia	
  em	
  Jogos	
  
—  Segundo Desidário e Rossi (2009, p. 43) meio ou 
mídia refere-se ao modo como a informação é 
transmitida, o “intermediário”, se existem mais 
de um meio de transmissão da informação, 
existe um sistema de comunicação multimeios. 
O meio é um código entre o emissor e receptor 
de informações. 
Imagem 07 – Multimídia nos Jogos 
Mapa de bits Vetor 
3D Animação 
Áudio 
Vídeo 
Exemplo	
  Jogo	
  com	
  mul5mídia	
  
—  A representação de um carro em um 
determinado jogo, ajuda a entender o conceito 
de multimídia, desta forma o automóvel pode 
ser representado não apenas com uma imagem 
do veículo, mas com ações, movimentos, 
sonoridades e características únicas. 
Exemplo	
  Jogo	
  com	
  mul5mídia	
  
—  A condição do carro é percebida pelo usuário 
através de diferentes meios, uma vez que o 
movimento do carro pode ser uma animação, 
enquanto o seu barulho é representado por um 
áudio sincronizado em relação às ações dos 
usuários. 
Exemplo	
  Jogo	
  com	
  mul5mídia	
  
—  Tal como em outros sistemas de interface 
gráfica, os jogos digitais podem ter em sua 
composição uma combinação de diferentes 
meios, para estabelecer um diálogo com seus 
jogadores, daí a importância da multimídia em 
jogos, que é justamente estabelecer uma 
comunicação eficiente através dos diferentes 
recursos digitais disponíveis. 
Caracterís5cas	
  da	
  Mul5mídia	
  para	
  Jogos	
  	
  
—  Conforme classificado por Filho (2000, p. 3) a 
multimídia apresenta características únicas, 
que podem agregar o componente interativo, 
em que a situação do usuário diante do 
computador não é passiva, mas participante de 
uma atividade. 
Caracterís5cas	
  da	
  Mul5mídia	
  para	
  Jogos	
  	
  
—  Outro elemento da interatividade é o acesso 
não-linear, onde a informação é acessível a 
vontade do usuário, podendo ele intervir a 
qualquer momento na execução de um vídeo, 
áudio ou animação. Os jogos digitais 
apresentam também o componente interativo, 
uma vez que seus usuários ao interagir deixam 
de ser um espectador e passa a executar 
tarefas e controlar ações determinadas pelo 
jogo. 
Caracterís5cas	
  da	
  Mul5mídia	
  para	
  Jogos	
  	
  
—  Exemplo 
—  Tomando o mesmo exemplo o movimento do 
carro dentro do jogo é determinado pela 
vontade do usuário, de modo que é ele quem 
condiciona se o veículo vai para esquerda ou 
direita, se vai para frente ou de ré. 
Caracterís5cas	
  da	
  Mul5mídia	
  para	
  Jogos	
  	
  
—  Exemplo 
—  A interação ocorre de acordo com a vontade do 
usuário e esta condição lhe permite interagir, 
tornando-o um protagonista da história. 
—  Dessa forma a interatividade alinhada ao 
controle de textos, artes gráficas, animações, 
áudios e vídeos, tornam os jogos digitais 
atrativos para seus usuários. 
Elementos	
  Mul5mídia	
  em	
  Jogos	
  
—  (imagens bitmaps, desenho vetorial, 3D, áudio 
e vídeo) são utilizados na criação das estruturas 
de jogos tridimensionais, 
—  Integração por meio de ferramentas de autoria. 
Imagem 08 – Elementos Multimídia 
Mapa de bits Vetor 
3D Animação 
Áudio 
Vídeo 
Ferramentas	
  de	
  autoria	
  (Game	
  Engine)	
  
—  São ferramentas de software para combinação, 
customização, ordenação e controle de 
apresentação dos elementos de multimídia, 
proporcionando a interação com designer e 
programadores. 
Ferramentas	
  Necessárias	
  	
  
—  Softwares de edição (aplicativos fechados, 
utilizados para criação de material gráfico, 
animação e edição de áudio e vídeo), 
—  Linguagem de programação utilizada nos 
diferentes ambientes de desenvolvimento de 
aplicativos multimídia, dentre eles: Microsoft 
XNA, Apple Xcode e Google Android SDK. 
Ferramentas	
  Necessárias	
  	
  
—  Ferramentas de autoria (Game Engine) que 
permitem a manipulação direta dos elementos 
multimídia em sua interface de 
desenvolvimento além de dá suporte a 
programação dos scripts do jogo. 
Game	
  Engine	
  Exemplos	
  
—  Blender 3D - Ferramenta de autoria para 
ambientes virtuais interativos. Uma vez que o 
Blender 3D oferece um editor de desenho 
tridimensional e um motor de jogo para 
desenvolvimento de jogos. 
Imagem 09 – Blender 3D 
Game	
  Engine	
  Exemplos	
  
—  Unity 3D - É um motor de jogo proprietário, 
porém não é um editor 3D, desta forma, 
necessita-se da importação dos desenhostridimensionais de editores 3D, tais como o 
Blender 3D, Autodesk 3ds Max, Autodesk Maya, 
Cinema 4D entre outros. 
Imagem 10 – Unity 3D 
Game	
  Engine	
  Exemplos	
  
—  Dentre suas características apresenta suporte a 
física em tempo real, bem como detector de 
colisão. A linguagem de programação utilizada 
compreende o Boo, C# e JavaScript. Oferece 
opções para desenvolver aplicativos para 
plataformas Mac OS, Windows, Web, iOS e 
Android. 
Imagem 10 – Unity 3D 
Game	
  Engine	
  Exemplos	
  
—  UDK Unreal Engine - Compreende também um 
motor de jogo proprietário e como o Unity não 
oferece um editor gráfico 3D como o Blender, 
tem a necessidade de importar arquivos 3D de 
outros editores, a linguagem de programação 
compreende o Unreal Script e C#. 
Imagem 11 – UDK Unreal Engine 
Game	
  Engine	
  Exemplos	
  
—  Oferece suporte a desenvolvimento para 
diferentes plataformas: Mac OS, Windows, Web, 
Apple iOS, Google Android, PS3 e PSVITA, 
Microsoft XBOX 360 e Nintendo Wii U. 
Imagem 11 – UDK Unreal Engine 
Game	
  Engine	
  Exemplos	
  
—  Ogre 3D - Motor de jogo conhecido por (Object-
oriented Graphics Rendenring Engine) que 
significa Motor gráfico 3D orientado a objeto, 
como o Blender é de código aberto. Utiliza as 
linguagens C++, Python e Java. Permite 
desenvolver jogos para Linux, Windows e MacOs 
Imagem 12 – Ogre 3d Engine 
Mul5plataforma	
  
—  Mesmo game em diferentes plataformas 
Imagem 13 – Multiplataforma 
Funções	
  da	
  Game	
  Engines	
  	
  
—  Renderização 2D e 3D em tempo real do Game. 
—  Controle da animação. 
—  Controle do Áudio e Vídeo. 
—  Controle de Colisão. 
—  Shading e Iluminação. 
—  Editor de Níveis (Level Editor) 
—  Física Real. 
—  Ferramentas de customização. 
Funções	
  da	
  Game	
  Engines	
  	
  
—  API (de Application Programming Interface (ou 
Interface de Programação de Aplicativos) é um 
conjunto de rotinas e padrões estabelecidos por 
um software para a utilização das suas 
funcionalidades por aplicativos que não 
pretendem envolver-se em detalhes da 
implementação do software, mas apenas usar 
seus serviços. 
Funções	
  da	
  Game	
  Engines	
  	
  
—  Recursos - Projetos completos, que podem vim 
no pacote do software. 
—  Scripting de programação. 
—  Inteligência Artificial (AI). 
—  Rigging 3D. 
Tarefa	
  para	
  Casa	
  
—  Relacionar os possíveis recursos das engines, 
relacionados as funções das Game Engines. 
—  Apresentar exemplos. 
—  Discutir em sala as vantagens e desvantagens 
da comparação. 
—  Discutir as possibilidades. 
Ronilson Morais Lobo 
http://www.lucasstoys.com.br 
design@lucasstoys.com.br 
ronniemlobo@gmail.com

Continue navegando

Outros materiais