Tópicos Especiais I: Engines Introdução ao

Slides:



Advertisements
Apresentações semelhantes
Tópicos Especiais I: Engines Exercícios Propostos Aula 01
Advertisements

Tópicos Especiais I: Engines Criação de ambientes com o
Características do Blender
Tópicos Especiais I: Colisão
Tópicos Especiais I: Engines Engines 3D
GUI Criação de Interface de Usuário
1º Semestre 2010 > PUCPR > Pós Jogos
2º Semestre 2010 > PUCPR > TPU
Lógica de programação de jogos
Introdução à Programação usando Processing Programação Gráfica 2D Animações Exercício Animações 14/10/09 Bruno C. de Paula 2º Semestre 2009 > PUCPR >
Introdução à Programação Exercício - Minigame - Interação 2º Semestre 2010 > PUCPR > Design Digital Bruno C. de Paula.
Tópicos Extra Importando Avatares Usando Evolver, Animeeple e Unity
Laboratório de Informática Introdução à Linguagem HTML
Linguagem HTML Básica Formulários – Detalhamento dos Componentes
Introdução à Programação Exercício F13 - Minigame - Interação - Imagens 1º Semestre 2010 > PUCPR > Design Digital Bruno C. de Paula.
Laboratório de Informática CSS Seletores Texto em CSS 1º Semestre 2010 > PUCPR > BSI Bruno C. de Paula.
Conhecendo o VS2008: Windows Forms X Web Forms X Web Services
Controles de visualização de dados Repeater 1º Semestre 2010 > PUCPR > BSI Bruno C. de Paula.
Laboratório de Informática Introdução ao JavaScript 1º Semestre 2010 > PUCPR > BSI Bruno C. de Paula.
Animation View 1º Semestre 2010 > PUCPR > Pós Jogos Bruno C. de Paula.
Animação de Personagens
Laboratório de Informática Introdução à Linguagem CSS 1º Semestre 2010 > PUCPR > BSI Bruno C. de Paula.
Tópicos Especiais I: Engines Apresentação da Disciplina
Tópicos Especiais I: Engines Exercícios – Aula 03 1º Semestre 2010 > PUCPR > Pós Jogos Bruno C. de Paula.
Laboratório de Informática Plataforma Web 1º Semestre 2010 > PUCPR > BSI Bruno C. de Paula.
BD em.NET: Passo a passo conexão com SQL Server 1º Semestre 2010 > PUCPR > BSI Bruno C. de Paula.
Laboratório de Informática Imagens 1º Semestre 2010 > PUCPR > BSI Bruno C. de Paula.
Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.
Analisamos o movimento em cada uma das dimensões separadamente
António Ramires Fernandes & Luís Paulo Santos – Adaptado por Alex F. V. Machado Computação Gráfica Pipeline Gráfico.
COMPUTAÇÃO GRÁFICA.
Sistemas Operacionais
Aula 01 – Apresentação e introdução html
7 - Criação de Páginas Web
Johnson S. J.. Desenvolvimento de ambientes interativos com Blender 3D Objetivo: Conhecendo o Blender Produção de ambientes 3D Interatividade Blocos de.
“Simulação de dispositivos dinâmicos para jogos”
Desenvolvimento de Projetos e Aplicações Web
Dinâmica do Movimento Plano de um Corpo Rígido: Força e Aceleração
Cinemática Plana de um Corpo Rígido Cap. 16
Cinemática Plana de um Corpo Rígido Cap. 16
Game Engine André Maximo Carlos Henrique Cavalcanti Final 2004.
Programador, Design e Fundador
Game Engines.
Lógica de Programação de Jogos
Computação Gráfica Aula 12 Superfícies Prof. Leo.
REVISÃO.
Faculdade de Tecnologia SENAC Pelotas
Moodle Manual de Utilização Plataforma de Ensino a Distância
Computação Gráfica Aula 10 Constructive Solid Geometry (CSG)
INF Computação Gráfica Francis Birck, Henrique Lovison 13 de julho de 2011.
Professor: Márcio Amador
ÁREA DE TRABALHO DO WINDOWS
Cinemática Plana de um Corpo Rígido Cap. 16
Dinâmica do Movimento Plano de um Corpo Rígido: Força e Aceleração
1 Noções Básicas de Vídeo – Projeto Literacia (PMBCS) 2012.
Go3D! A 3D Graphics Engine Carlos Tosin. Divisão Estrutura dividida em 4 componentes Core (46 classes) Áudio (4 classes) Script (4 classes) Renderer (37.
Implementação MVC Pedro Antonino.
Escola Técnica Estadual Cícero Dias
O que é o Silverlight É um plugin gratuito, disponível para a maioria dos Browsers, que permite a visualização de aplicativos feitos em C# em diversas.
Bem Vindos!!! Minicurso Unity 3D. Time is like a fuse, short and burning fast… Time is like a fuse, short and burning fast…
Introdução à Multimídia
Web Game Engine Mário Barbosa João Pascoal. Game Engine Um software com um conjunto de bibliotecas que serve para simplificar e abstrair e desenvolvimento.
Arthur Gonçalves Christian Diego Eudes Raphael Icamaan Botelho.
OGRE 3D Open Source Graphics Engine Seminário Introdução à Multimídia.
Criação de um jogo de labirinto no UNITY (do tipo 2d e usando csharp)
Adriano Marcos Petrônio
Unity3D: Partículas. Unity3D Objetos especiais para efeitos Objetos resumidos = propriedades diferentes Renderização diferente Centenas / milhares de.
Unity 3D Character Controller e Triggers
Unity 3D: Câmeras.
Unity 3D Animações – Parte I
Transcrição da apresentação:

Tópicos Especiais I: Engines Introdução ao Bruno C. de Paula Tópicos Especiais I: Engines Introdução ao 1º Semestre 2010 > PUCPR > Pós Jogos

Resumo Vamos conhecer a engine Unity 3D Focaremos nas principais ferramentas e recursos que o Unity disponibiliza Nas próximas aulas nos preocuparemos com o scripting destes recursos Ou seja: hoje vamos trabalhar com restrições!

O que é o Unity? 23/03/2017 Unity é um ambiente multiplataforma de desenvolvimento de jogos; Suporte a: Windows / MacOS / Web / Wii / iPhone.

Características do Unity Editor de Níveis 23/03/2017 Fortemente integrado com a execução do jogo;

Características do Unity Editor de Níveis 23/03/2017 Suporte a Drag & Drop e customização;

Características do Unity Editor de Níveis 23/03/2017 Editor de terrenos e lightmaps;

Características do Unity Gráficos 23/03/2017 Suporte a Direct3D 9 e OpenGL;

Características do Unity Importação 23/03/2017 Importação de modelos, texturas, bones e animações de Maya, 3DS, Cheetah 3D, Blender, Wavefront obj... Heightmaps, Fontes, audio.

23/03/2017

Características do Unity Shaders 23/03/2017 Efeitos de Glow, Blur, Noise, etc

Características do Unity Física / PhysX 23/03/2017 Suporte a corpos rígidos; Junções; Ragdolls; Wheel Collider para jogos de carro;

Características do Unity Scripting 23/03/2017 Linguagens de Scripting: JavaScript (muuuito rápido!); C# (Mono); Boo (similar a Python).

23/03/2017 Vamos para a prática!

Cena Inspetor Projeto Jogo Interface básica 23/03/2017 Hierarquia Cena Inspetor Projeto Jogo

Interface básica Scene View (Cena): editor de níveis; 23/03/2017 Scene View (Cena): editor de níveis; Project View (Projeto): arquivos do projeto; Hierarchy View (Hierarquia): objetos que estão na cena e sua relação; Game View (Jogo): Visualização da aplicação sendo executada; Inspector View (Inspetor): Acesso aos componentes dos objetos;

Navegação na Scene View 23/03/2017 Principais Atalhos: Q, W, E, R; ALT + mouse; Leitura altamente recomendada: http://unity3d.com/support/documentation/Manual/Learning%20the%20Interface.html http://docwiki.unity3d.com/uploads/Main/GUI%20Essentials.pdf

Assets Arquivos do Projeto;

Game Objects Elementos de um jogo; Arquitetura baseada em composição; 23/03/2017 Elementos de um jogo; Arquitetura baseada em composição; Objeto de jogo é especificado através da composição de várias funcionalidades (COMPONENTES); Todo game object já nasce com um componente transform; Cada GameObject é um repositório de componentes.

Componente Transform 23/03/2017 Posicionamento (x, y, z) [W], rotação (ângulo) [E] e escala [R];

Local Space e World Space 23/03/2017 X, Y e Z são em relação ao elemento pai; Fonte da Imagem: Unity Game Development Essentials, p. 10

Game Objects disponíveis 23/03/2017

Tipos de Game Object Cube, Sphere, Capsule, Cylinder, Plane Cubo, esfera, cápsula, cilíndro e plano; Cada um está associado a um componente Mesh Filter com aspecto diferente; Colide com outros corpos por padrão;

Tipos de Game Object Luzes Point light: Luz proveniente de um ponto; Luz com localização específica; Espalha a partir do ponto; Spotlight: Vem de um ponto; Localização específica; Gera cone de luz;

Tipos de Game Object Luzes Directional Light: Vem de uma direção; Não tem localização específica; Luz paralela; Mais forte nas áreas quadradas; Mais fraco nas angulações; Sol;

Tipos de Game Object Camera 23/03/2017 Capturam e mostram o mundo ao jogador; Fonte da imagem: http://glprogramming.com/red/chapter03.html

Tipos de Game Object GUI Text e GUI Texture Texto e Imagens em 2D; Útil para criação da HUD;

Tipos de Game Object Particle System 23/03/2017 Sistema de Partículas, formado por: Emissor, animador e renderizador;

Tipos de Game Object Ragdoll * Simulação no estilo “boneco de pano”; Útil para “representação de mortos”; Ver video: http://www.youtube.com/watch?v=g0lTE4sCyKI

Componentes Podem ser associados a Game Objects; Definem: Comportamento; Aparência; Podem ser scripts; Vamos analisar alguns.

Tipos de Componentes Mesh Cada modelo é formado por polígonos; Um conjunto de polígonos associados é uma mesh; Mesh Filter: pega uma malha dos Assets e passa ao renderizador; Mesh Renderer: Renderiza uma malha a partir de um material; Você pode gerar um mesh em programas como 3DMax, Blender, Maya, etc. O Unity trabalha com os formatos FBX, 3DS, OBJ...; Meshs podem ser animadas via script;

Exemplo de Mesh (em destaque)

Sites com modelos gratuitos * O site do Unity: Recursos Tutoriais: Jogo de carro, Plataforma 3D, Plataforma 2D, FPS, Animação. Projetos Exemplo: FPS, Customização de Personagens http://www.turbosquid.com/Search/3D-Models/free/fbx http://www.open3dproject.org/ ...

Tipos de componentes Física Baseado no engine de física PhysX (Nvidia); Rigidbody: Objeto que age sobre o controle da física; Constant Force: força constante; Colliders: Geometrias básicas de colisão; Box, Sphere, Capsule, Mesh, Wheel (roda), Raycast; Joints: Junções; Restrições no grau de liberdade;

Tipos de componentes Hinge Joint Simulação de dobradiça;

Tipos de componentes Spring Joint Simulação de mola; Distância máxima de separação e retorno à posição original;

Tipos de componentes Fixed Joint * Conexão entre 2 corpos; Similar à hierarquia de transformação; Útil quando os corpos podem ser desconectados durante a simulação;

Scripts JavaScript, C# e Boo; Criação em Assets > Create; Scripts são associados a Game Objects como componentes;

Alguns eventos importantes Update: executada uma vez por frame; FixedUpdate: chamada de tempos em tempos em um intervalo fixo (física); OnCollisionEnter: chamado quando ocorre a colisão;

Referências a componentes transform: posicionamento, rotação e escala; rigidbody: corpo rígido; animation: controle dos ciclos de animação;. renderer: exibição do componente em cena; audio: fonte de audio; collider: geometria de colisão;

A seguir, alguns fragmentos de códigos usando o Unity 23/03/2017 A seguir, alguns fragmentos de códigos usando o Unity

Exemplo Faz um objeto girar var velocidade = 5.0; function Update () { print("Olá, Mundo"); transform.Rotate(0, velocidade*Time.deltaTime, 0); }

Exemplo Move a posição a partir do teclado function Update () { transform.Translate(Input.GetAxis("Horizontal"), 0, Input.GetAxis("Vertical")); }

Exemplo Olha para um alvo var alvo : Transform; function Update () { transform.LookAt(alvo); }

Prefabs Prefabs são objetos reutilizáveis armazenados na Project View; Funcionam como modelos de objetos;

Exemplo Cria um novo objeto – Instantiate var novoObjeto : Transform; function Update () { if(Input.GetButtonDown("Fire1")) Instantiate(novoObjeto, transform.position, transform.rotation); }

Exemplo Carrega outro nível Application.LoadLevel("Nome nivel");

Exemplo Envia uma mensagem para um outro objeto // O outro objeto deve possuir uma função chamada // AplicarDano function OnCollisionEnter (collision : Collision) { collision.gameObject.SendMessage("AplicarDano"); }

Exemplo Destruir o objeto atual 23/03/2017 * function AplicarDano() { Destroy(gameObject); }