Baixe o app para aproveitar ainda mais
Prévia do material em texto
DESENVOLVIMENTO DE JOGOS 2D Introdução Unity 2D Prof. Milton Escóssia Curso de Jogos Digitais CRIANDO UM PROJETO NA UNITY CRIANDO UM PROJETO NA UNITY ÁREA DE TRABALHO Composta de várias janelas chamadas views, cada uma com um propósito específico. ÁREA DE TRABALHO View Hierarchy View Inspector View Game View Project View Scene Toolbar Menu Principal PROJECT VIEW Interface para manipulação e organização dos vários arquivos (Assets). Composta por scripts, modelos, texturas, efeitos de áudio e Prefabs. A estrutura exibida na janela Project corresponde à subpasta Assets da pasta do projeto no sistema de arquivos do computador. PROJECT VIEW A manipulação de sua estrutura e conteúdo dentro da Unity3D para manter a integridade dos metadados dos elementos. A atualização de um dos elementos por um editor externo, ou mesmo a adição de novos Assets, deve ser feita diretamente no sistema de arquivos. PROJECT VIEW X WINDOWS EXPLORER HIERARCHY VIEW Exibe todos os elementos da cena que se está editando. Permite organizar e visualizar a hierarquia de composição entre os vários objetos que compõem a cena (grafo de cena). SCENE VIEW Janela de manipulação dos elementos visuais no editor de cenas da Unity. Permite a orientação e posicionamento dos elementos. Feedback imediato do efeito das alterações efetuadas. Manipulação gráfica dos objetos através de Drag and Drop. Permite a manipulação de objetos tais como câmeras, cenários, personagens e demais elementos que compõem a cena. SCENE VIEW A Unity fornece várias formas de navegação a fim de aumentar a produtividade do desenvolvedor. Disponibiliza ferramentas básicas de manipulação dos elementos da cena através de teclas de atalho: pan (q), translação (w) , rotação (e), escala (r) SCENE VIEW Ferramentas básicas de manipulação dos elementos da cena GAME VIEW Permite a visualização da aplicação em desenvolvimento da forma como será exibida quando finalizada. Permite a prévia de como os elementos estão se comportando dentro da aplicação. A Unity fornece a opção de se paralisar (botão pause) a simulação enquanto ela estiver em depuração, de forma a possibilitar que os parâmetros dos vários elementos possam ser ajustados para experimentação. GAME VIEW Permite o ajuste de parâmetros em tempo de execução. Permite a visualização de informações estatísticas (stats) sobre a simulação: tempo de processamento número de frames por segundo, número de triângulos e vértices renderizados, memória de textura utilizada, etc GAME VIEW INSPECTOR VIEW Permite o acesso aos vários parâmetros de um elemento presente no cenário. Permite acesso aos atributos de seus componentes (Components). Permite o ajuste dos atributos públicos (parâmetros) de cada componente, inclusive durante a execução da aplicação CONCEITOS BÁSICOS DA UNITY3D GAME OBJECTS Alguns motores de jogos são baseados no uso de especialização/herança para as classes que irão representar objetos de jogo (game objects). ◦ os elementos de um jogo herdam de uma classe básica (normalmente algo como GameObject) ◦ A classe especializada insere as novas funcionalidades. Problema : ◦ forma obsoleta de uso de herança, que ocasiona pouca flexibilidade quando os objetos de jogo possuem múltiplos comportamentos, o que exigiria herança múltipla. GAME OBJECTS A Unity3D é baseada em um modelo mais moderno para a arquitetura de objetos de jogo baseado em composição (uso de padrões de projeto). ◦ um objeto de jogo é especificado através da composição de várias funcionalidades, que são agregadas (ou removidas). ◦ Cada funcionalidade é implementada por um componente (classe que herda de um componente básico). Esse container genérico é denominado Game Object. GAME OBJECTS “Game Object é uma panela vazia e os componentes são os ingredientes que irão criar sua receita de jogabilidade”. (Unity) Atua como um repositório de funcionalidades (componentes). Os componentes são repositórios de funcionalidades responsáveis por implementar os diversos comportamentos que um Game Object pode ter. Um componente pode ser : ◦ um script, ◦ uma geometria de colisão, ◦ uma textura de GUI. Game Objects podem representar qualquer coisa no cenário, sendo caracterizados como uma simples câmera ou um personagem. GAME OBJECTS Todos os Game Objects já possuem pelo menos o componente Transform. posicionamento, orientação e escala no sistema referencial da cena. definição da hierarquia de transformações, Permite o efeito de transformação relativa de acordo com a estrutura de ascendência/descendência de cada Game Object. TIPOS DE GAME OBJECTS Básicos: Primitivas Geométricas 3D Camera Luzes Sistema de particulas Prefabs Tecidos Terrenos TIPOS DE GAME OBJECTS Outros: Ragdoll Tree Zona de Ventania Zona de Audio PRIMITIVAS GEOMETRICAS 3D Representam objetos 3D básicos Cubo Esfera Capsula Cilindro Plano PRIMITIVAS GEOMETRICAS 3D Cubo Esfera Cilindro Cápsula Plano CAMERA Usado para exibir o mundo do jogo (game world) ao jogador. Deve-se ter ao menos uma câmera em uma cena. Pode-se ter mais de uma câmera. Isso irá permitir janelas de visualização múltipla (2 jogadores) ou efeitos avançados de visão. Pode-se criar animações, ou controles com o uso de Física. CAMERA CAMERA CAMERA Ortográfica Perspectiva ASSET São recursos externos (arquivos de conteúdo) do qual se pode criar um jogo. Textura Modelos 3D TIPOS DE ASSETS Audio Clip Cubemap Texture Modelos Modelos 3D FBX Importer, Rig options FBX Importer - Animations Tab Flare Font Material Malhas Movie Texture Procedural Material Assets Render Texture Text Asset Texture 2D FLUXO DE CRIAÇÃO DE UM ASSET Criando texturas Crie um desenho/imagem e salve-o como PNG. Criando modelos 3D Crie um modelo 3D e exporte o modelo como FBX. IMPORTANDO UM ASSET Basta salvar o Asset na pasta do projeto Unity. A Unity detectará o Asset automaticamente e o importará para o projeto (Project View). CONFIGURAÇÕES DE IMPORTAÇÃO Ao selecionar o Asset, as propriedades do Asset serão exibidos no Inspector View, onde pode ser manipulado. ADICIONANDO UM ASSET A CENA Basta clicar no Asset desejado a partir da Project View e arrastá-lo para a Hierarchy or Scene View para adicioná-lo a Cena. Ao arrastar um Asset para a cena, você irá criar um GameObject composto por um componente Mesh Renderer. Se o Asset for uma textura, este deve ser arrastado para um GameObject existente na cena. RELAÇÃO ENTRE ASSET E GAMEOBJECT Uma Textura é aplicado a um Material. Um Material é aplicado a um GameObject (com um Mesh Renderer Component) Uma Animação é aplicado a um GameObject (com um Animation Component) Um arquivo de audio é aplicado a um GameObject (com um Audio Source Component) ATUALIZANDO UM ASSETS Após importar o Asset para o seu Projeto, para atualizar o Asset basta dar um duplo-clique a partir da Project View para que a Unity executará o respectivo editor externo para editar o Asset. Ao salvar as modificações a Unity reconhecerá automaticamente a atualização. PREFAB Prefabs são coleções de GameObjects e Components que podem ser re-utilizados em uma cena. Vários objetos identicos podem ser criados a partir de um único Prefab, chamado de instanciação. Qualquer mudança feita em um Prefab irá automaticamente ser aplicadaa uma instancia. CRIANDO UM PREFAB A partir de um GameObject Basta arrastar o GameObject para a Project View A partir da Project View Através do botão do mouse: Usando o botão direto do mouse dentro da Project View: create > Prefab. Através do combo na barra de ferramentas da Project View Selecione o item Create, será aberto uma janela. Nessa nova janela selecione a opção Prefab JOGOS 2D NA UNITY A Unity 3D lançou a versão 4.3 da engine com recursos exclusivos para o desenvolvimento de jogos 2D. Possui ferramentas internas para criar spritesheets, animações e física com Box2D. FERRAMENTAS PARA JOGOS 2D NA UNITY Novo tipo de asset: Sprite Animators permite o controle de animações Suporte a física 2D JOGOS 2D NA UNITY JOGOS 2D NA UNITY 1-Unity 43 2D Game Development Walkthrough COMPONENTES 2D DA UNITY Conjunto de componentes para criação de gráficos e física 2D na Unity. a. Componente gráfico 2D: Sprite Renderer b. Componentes físicos 2D: Colliders: Rigidbody 2D Circle Collider 2D Box Collider 2D Polygon Collider 2D Edge Collider 2D Physics Material 2D Junções físicas Spring Joint 2D Distance Joint 2D Hinge Joint 2D Slider Joint 2D SPRITE RENDERER componente que permite exibir Sprites em cenas 2D e 3D. COLISORES 2D Colliders: Rigidbody 2D Circle Collider 2D Box Collider 2D Polygon Collider 2D Edge Collider 2D CRIANDO UM PROJETO 2D NA UNITY CRIANDO UM PROJETO 2D NA UNITY CRIANDO UM PROJETO 2D NA UNITY CRIANDO UM PROJETO 2D NA UNITY APRESENTANDO O AMBIENTE UNITY 2D APRESENTANDO O AMBIENTE UNITY 2D APRESENTANDO O AMBIENTE UNITY 2D APRESENTANDO O AMBIENTE UNITY 2D APRESENTANDO O AMBIENTE UNITY 2D APRESENTANDO O AMBIENTE UNITY 2D APRESENTANDO O AMBIENTE UNITY 2D APRESENTANDO O AMBIENTE UNITY 2D APRESENTANDO O AMBIENTE UNITY 2D IDENTIFICANDO O MODO DE EDIÇÃO DA UNITY Para identificar o modo de edição da Unity, basta verificar o valor da propriedade "Default Behavior Mode“ no “Editor Settings”. Edit\Project Settings\Editor Obs: A propriedade "Default Behavior Mode" define o padrão de configuração dos imports dos assets para o projeto. MODO 2D X MODO 3D Ao solicitar o import de uma imagem (.png), a Unity “pensa”: Modo 2D Modo 3D Sprite Textura MODO DE VISUALIZAÇÃO DA CENA 2D O botão do modo de visualização 2D. Permite fazer a mudança da visualização da câmera da cena entre a projeção em perspectiva e ortográfica. MODO DE VISUALIZAÇÃO DA CENA 2D Modo 2D Quando habilitado, a orientação é fixada de forma que os pontos positivos do eixo Y são para cima, e do eixo X para a direita. A mudança do modo de visualização não interfere na visualização da cena durante a execução do jogo. Permite auxiliar na organização dos objetos da cena. MODO DE VISUALIZAÇÃO DA CENA 2D Modo 2D habilitado Modo 2D desabilitado MODO DE VISUALIZAÇÃO DA CENA 2D Modo 2D habilitado MODO DE VISUALIZAÇÃO DA CENA 2D Modo 2D desabilitado MODOS DE VISUALIZAÇÃO DA CÂMERA DA CENA Perspectiva Ortográfica • Objetos mais distantes da câmera tem a ilusão de serem menores em relação aos objetos mais próximos. • Modo de visualização dos objetos no mundo real. • Um objeto distante da câmera terá a aparência de estar atrás de qualquer objetos mais próximo a câmera. • Seu tamanho permanecerá o mesmo independente de sua posição. SPRITE X SPRITE SHEET Sprite Imagem 2D individual de um objeto contido em um único arquivo de imagem. Sprite Sheet Conjunto de imagens de um objeto contido em um único arquivo de imagem. Representa posições distintas do objeto realizando uma ação. Sua sequencia representa a animação deste objeto. SPRITE X SPRITE SHEET Sprite Sprite Sheet SPRITE X SPRITE SHEET SPRITE X SPRITE SHEET SPRITE ASSETS Ao exibir uma imagem na cena, a Unity anexa ao Game Object o componente "Sprite Renderer“. Obs: A propriedade "Sprite" exibe o nome do recurso externo (Asset), neste caso do Sprite a ser renderizado. Somente um Sprite pode ser assinalado por vez. SPRITE ASSETS Ao adicionar uma imagem a cena na Unity, é criado uma geometria para o objeto. modo FREE modo PRO cada sprite é mapeado para uma geometria de um simples retângulo cada sprite recebe uma malha específica que se ajusta aos pixels coloridos da imagem. SLICING SPRITE SHEETS A Unity permite definir se a imagem é um Sprite ou um Sprite Sheet. Ao selecionar um arquivo de imagem, o Inspector View irá exibir o Import Settings com alguns dados da imagem. SLICING SPRITE SHEETS O Sprite Mode permite definir se a imagem é um Sprite ou um Sprite Sheet. Single – define um Sprite. Multiple – define um Sprite Sheet. SPRITE MODE MULTIPLE Ao modificar o Sprite Mode de Single para Multiple, o Inspector View passa a exibir o botão Sprite Editor. SPRITE EDITOR O Sprite Editor permite definir quais porções de uma imagem contém uma imagem individual do sprite. O botão "Slice" permite iniciar a definição de sprites. SPRITE EDITOR O botão "Slice" permite iniciar a definição de sprites. SPRITE EDITOR Fatiar automático x individual. SPRITE EDITOR
Compartilhar