Baixe o app para aproveitar ainda mais
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
Compartilhar