Universidade Federal de Engenharia de Itajubá Realidade Virtual - RV Alexandre Carlos Brandão Ramos

Slides:



Advertisements
Apresentações semelhantes
SLIDE 1 – Transformações - Translação
Advertisements

Bacharelado de Informática PUC-Rio Prof. Rodrigo Toledo
Faculdades Integradas Santa Cruz
Microsoft Power Point Profa. Jiani Cardoso
Wagner Santos C. de Jesus
HTML - HiperText Markup Language Tecnologia para Web
Profa. Rudson apostilas.wikidot.com/hipermidia
Informática Aplicada.
Michel Traub e Fernando Leite
Programas Utilitários Básicos
Visualização 3D Prof. Dr. Annibal Hetem Jr.. Objetivo O objetivo de se usar Visão 3D em Realidade Virtual é garantir (e facilitar) a imersão.
COMPUTAÇÃO GRÁFICA.
Tatiane Cruz de Souza Honório
INF 2063 Tópicos em CG II Visualização de Modelos Massivos
Para ações em Vigilância do Óbito
A terceira dimensão.
Básico.
Tópicos Aparência Importando Arquivos Inserção de Textos Interagindo com o AV.
UNIVERSIDADE KIMPA VITA
Curso de Jornalismo e Ciências da Comunicação
Internet Principais conceitos.
7 - Criação de Páginas Web
Como instalar e executar o programa
Revisão de Conceitos Básicos Hardware (Parte 1)
A Linguagem HTML.
HTML Técnicas em Programação para Internet
Aulas ministradas por:
HTML Construindo páginas.
RV imersiva e não imersiva Conceitos e Dispositivos
DIAGRAMA DE CASO DE USO Prof. Fabíola Gonçalves C. Ribeiro.
Layout.
Rodrigo Cristiano Silva
É um conjunto de registos dispostos numa estrutura regular que possibilita a reorganização dos mesmos e a produção de informação com a menor redundância.
1ª Aula de Html Íria Albuquerque.
LOGIN Para acessar o sistema, digite em seu browser:
ACESSO A BASE DE DADOS.
POWER POWER POINT POINT.
Cascading Style Sheets Folhas de Estilo em Cascata
Computação Gráfica Aula 3 Transformações Geométricas
Computação Gráfica – Visibilidade
Professor: Márcio Amador
Visualização Tridimensional (Câmera Sintética)
UFSC-CTC-INE Prof. Raul Sidnei Wazlawick
Tecnologias Web Prof. Msc. Juliano Gomes Weber Tecnologias Web Notas de Aula – Aula 02 1º Semestre UNIJUÍ.
Escola de Engenharia de Piracicaba Sistemas de Apoio a Decisão
Princípios de Cinemática
WIC’ 2015-I WorkShop para o Ingressante em Ciência da Computação Curso de Desenvolvimento para WEB – HTML5.
A abordagem de banco de dados para gerenciamento de dados
Criando uma formatação
Multimídia para fins Educativos
Realidade Aumentada para fins Educativos
TECNOLOGIA WEB XHTML Aula 5 Profa. Rosemary Melo.
Dynamic Adjustment of Stereo Parameters for Virtual Reality Tools Felipe Carvalho, Daniel R. Trindade, Peter F. Dam, Alberto Raposo, Ismael H. F. dos Santos.
Realidade Virtual Aula 5
Autoria WEB Prof. Thiago Nogueira Tolentino Barbosa
Visualização Tridimensional
VRML. Roteiro  Introdução  A história de VRML  Visão geral  Potencial  Fundamentos  Ferramentas de software  Vantagens e Desvantagens  Conclusões.
Introdução à Computação Gráfica
O que é CSS? O CSS (Cascading Style Sheets) ou Folhas de Estilo em Cascatas é uma documentação que define as regras de formatação que serão aplicadas aos.
Realidade Virtual Aula 2 Remis Balaniuk. Enxergando grande, começando pequeno Quem começa a aprender RV normalmente sofre um primeiro impacto negativo.
HTML HyperText Markup Language. 2 Origem O HTML foi criado, juntamente com o HTTP nos laboratórios do CERN, na europa para permitir a consulta de documentos.
Karine Alessandra Córdova
HTML Estrutura e Sintaxe.
HTML - HyperText Markup Language Professora: Fabrícia F. de Souza.
LINGUAGEM DE PROGRAMAÇÃO HTML COMPONENTES: ROBSON EDMILSON.
Nome do autor Digite aqui seu título
Programação p/ INTERNET - HTML Prof. João Ricardo Andrêo 30/5/ :10 1 Listas Numeradas As listas numeradas funcionam da mesma forma que as listas.
31/5/2016 Sistemas de Coordenadas O Sistema de Coordenadas nos dá uma referência sobre o tamanho e a posição dos objetos.
Aline Oliveira Everton Godoy Gabriel Leoni Lenilton Rocha Nelson Deda.
Tarefa Autor: Skyup Informática. Atividade – Tarefa O módulo atividade tarefa tem como principio básico a interação professor-aluno. Os alunos podem apresentar.
Transcrição da apresentação:

Universidade Federal de Engenharia de Itajubá Realidade Virtual - RV Alexandre Carlos Brandão Ramos

Realidade Virtual - RV Definição: O termo Realidade Virtual (RV) foi inicialmente proposto por Jaron Lanier, fundador do VPL Research (1989). Outros termos relacionados incluem Realidade Artificial (Myron Krueger, 1970), Cyberespaço (Willian Gibson, 1984) e, mais recentemente, Mundos Virtuais e Equipamentos Environments (1990s) e 'Realidade Virtual Aumentada'. Bibliografia: VRML Version 2 Tutorial Cortona 3D viewer e trial

Tipos de RV Atualmente, o termo Realidade Virtual é usado em uma grande variedade de recursos e normalmente de forma confusa. Entretanto, considerando a forma de inclusão no ambiente virtual podemos diferenciar três tipos de RV: 1. RV Imersiva, o usuário tem a sensação de mergulhar em um mundo artificial, de três dimensões geradas pelo computador. 2. RV Não Imersiva, o usuário observa o mundo virtual a partir do mundo real, interagindo com os objetos, mas não se sente envolvido pelo ambiente virtual. 3. RV Aumentada, o usuário observa objetos virtuais navegando no mundo real interagindo com estes.

Equipamentos da RV O Capacete para realidade Virtual ou Head-Mounted Display (HMD), como pode ser visto na fig.12.1, foi o primeiro dispositivo desenvolvido que permitiu experimentos imersivos. Evans e Sutherland demonstram um HMD com qualidade stereo já em O Laboratório de Pesquisas VPL (Universidade de Michigan) desenvolveu seu primeiro HMD em 1989.

Outros dispositivos - VOOM Para minimizar o desconforto do uso do HMD, foram desenvolvidos outros dispositivos para visão imersiva. VOOM, ou Binocular Omni-Orientation Monitor da Empresa Fakespace, é um display stereo que permite o acoplamento da cabeça do usuário, onde telas e um sistema ótico foram colocadas em uma caixa anexada a um braço mecânico.

Outros dispositivos - CAVE A CAVE, Cave Automatic Virtual Environment, foi desenvolvido pela Universidade de Ilinois em Chicago e fornece uma ilusão de imersão projetando imagens stereo nas paredes e teto de uma sala em forma de cubo. Vários usuários utilizando óculos especiais podem entrar e caminhar livremente dentro da caverna. Um sistema de monitoração da cabeça ajusta continuamente a projeção stereo para a posição corrente dos usuários.

Luvas Para que o usuário possa interagir com o ambiente virtual, manipular objetos etc. existe uma grande variedade de dispositivos de entrada, entretanto os mais utilizados são as luvas e joysticks. Outros dispositivos podem ser utilizados para propiciar a imersão do usuário no ambiente virtual, tais como som direcional, dispositivos táteis e de force feedback, reconhecimento de voz etc.

Compartilhamento Podem-se compartilhar ambientes virtuais a partir de redes de computadores, onde usuários, em locais diferentes, conectados por rede de computadores compartilhando o mesmo ambiente virtual utilizando dispositivos diferentes, por exemplos o BOOM a CAVE e o capacete.

VRML Virtual Reality Modeling Language ou VRML permite a exploração de ambientes virtuais na WWW. Do mesmo modo que HyperText Markup Language ou HTML tornou-se um padrão para a autoria de páginas, a VRML permite a integração de mundos tridimensionais com hiperlinks na web. Home pages tornam-se espaços. Para que o usuário possa visualizar os ambientes virtuais com o browser é necessário a instalação de um software adicional (plug-in).

Características Um código VRML pode ser escrito com um editor de textos comum (sem formatação). Uma vez editados, os arquivos são gravados em formato ASCII com a extensão.wrl. Na verdade, a linguagem apenas descreve como os ambientes tridimensionais serão representados pelo browser. O código VRML descreve as características do ambiente, como coordenadas, luz, cores, sombreamento etc. Também pode-se colocar em um mundo objetos que estão localizados remotamente em outros lugares na internet, além de links que levam a outros homeworlds ou homepages.

Padrões Ficou definido, para fins de identificação, que todo arquivo VRML 1.0 tem que ter o cabeçalho : #VRML V1.0 ascii Na versão atual, o cabeçalho fica da seguinte maneira : #VRML V2.0 utf8 O caracter '#' também significa comentário. Toda linha que começa com # será ignorada pelo browser. Utf8 é um padrão iso para codificação que permite que o texto do arquivo seja mostrado em qualquer editor, bem como caracteres de outros países.

Exemplo de código Um exemplo simples de código em VRML: #VRML V2.0 utf8 Shape { geometry Sphere { } #desenha uma esfera } O resultado:

Unidades de Medida VRML usa o sistema cartesiano 3D. A seqüência dos eixos é X,Y,Z e a unidade de medida para distâncias é metros e para ângulos, radianos. A medida para distância não é definida formalmente, mas adotou-se o metro como unidade para que mundos diferentes feitos por usuários diferentes possam ser eventualmente unidos em um só mundo.

Componentes - Nodes Um node (ou primitiva) é um conjunto de especificações que determinam as características dos objetos contidos no cenário. Os nodes definem a hierarquia e as características individuais de cada objeto dentro do contexto geral. O node descreve o tipo do objeto, que pode ser: uma esfera, um cilindro, uma transformação, uma definição de luz ou textura etc. Também define as características de cada um, como tamanho de um cubo, diâmetro de uma esfera, intensidade da luz ambiente, cor etc. Não é necessário dar nome a um node, mas se isso for feito, não se pode ter dois nodes com nomes iguais.

Exemplos de primitivas Cubo #VRML V2.0 utf8 Shape{ geometry Box{} } Esfera #VRML V2.0 utf8 Shape{ geometry Sphere{} } Texto #VRML V2.0 utf8 Shape { geometry Text { string ["UNIFEI", "ICE/DMC"] } } Cone #VRML V2.0 utf8 Shape{ geometry Cone{} } Cilindro #VRML V2.0 utf8 Shape{ geometry Cylinder{} }

Cores A cor dos objetos é formada pela composição das cores básicas vermelho, verde e azul (RGB), cujos valores variam entre 0 e 1. Sendo assim, se quisermos um objeto amarelo temos que especificar (1,1,0), ou seja, 100% de vermelho e verde e 0% de azul. A cor está associada à forma e não à geometria, isto é, a especificação da cor será dentro da declaração "shape" porém fora da declaração "geometry", isto é, vários objetos podem possuir a mesma cor, por exemplo: #VRML V2.0 utf8 Shape{ appearance Appearance {material Material {diffuseColor } } geometry Sphere{} }

Características das cores Como visto no slide anterior, a linguagem VRML permite pintar com várias componentes: diffuseColor: cor refletida pelo objeto (r,g,b), emissiveColor: cor emitida pelo objeto (r,g,b), transparency: proporção de luz que atravessa o objeto ([0,1]); e o tipo de brilho pode ser controlado através de shininess: intensidade do brilho do objeto ([0,1]), specularColor: cor do brilho do objeto (r,g,b) e ambientIntensity: quanto influi a luz ambiente na cor do objeto ([0,1]). Essas especificações são opcionais e devem estar agrupadas na declaração do tipo de material que, por sua vez, faz parte da declaração da aparência do objeto.

Características das cores Uma aplicação muito interessante de cores é a possibilidade de modificar a cor padrão do fundo. Isto é feito com o seguinte nó que, por questões práticas, deveria aparecer no início do arquivo. Um único nó deste tipo é permitido por mundo. #VRML V2.0 utf8 Background {skyColor[0.6.8]} Shape{ appearance Appearance{ material Material{diffuseColor.7.3 0} } geometry Cylinder{} }

Tamanhos Os objetos possuem seus próprios modificadores, em função da sua geometria particular. As caixas têm largura, profundidade e altura, os cones têm raio da base e altura, e assim por diante. Exemplo: #VRML V2.0 utf8 # Esferas sobrepostas Shape {geometry Sphere{}} Shape{ appearance Appearance { material Material { diffuseColor transparency 0.4 } } geometry Sphere{ radius 2 } }

Tamanhos Uso das variáveis lógicas, aplicadas à modificação geométrica de um cilindro. A esfera que o acompanha serve para responder à pergunta qual o tamanho padrão dos cilindros?

Mundos virtuais Uma das preocupações ao criar mundos virtuais é que eles exibam o grau de realismo desejado e, simultaneamente, que não sejam proibitivamente caros do ponto de vista computacional, o que pode ser feito utilizando texturas. A idéia é descrever as componentes do mundo com objetos geométricos o mais simples possíveis, isto é, formados pela menor quantidade possível de primitivas gráficas. O realismo será dado pintando essas primitivas com fotografias dos objetos do mundo real. No exemplo, o prédio foi descrito como uma mera caixa, só que foi forrada com um mosaico de fotografias digitais.

Texturas Textura, no nosso caso, é toda imagem a ser mapeada sobre objetos virtuais, isto é, imagens são utilizadas para modificar o aspecto dos elementos dos mundos virtuais. Ao alterar a aparência destes objetos, nada mais lógico do que a especificação destas propriedades texturais ser feita no mesmo nível que a especificação de cor. Exemplo:

Exemplo ceu-terra

Estilos de tipos O estilo de uma tipografia consiste na especificação do seu aspecto, sendo as possibilidades o texto comum (PLAIN), o negrito (BOLD), o itálico (ITALIC) e o negrito itálico (BOLDITALIC). Essas especificações devem ser atribuídas ao campo style do modificador fontStyle.

Agrupamento de objetos Serve para tratar primitivas (ou grupos de primitivas) como se fossem um único objeto e, desta maneira, poupar a aplicação de transformações, por exemplo: grupo.wrl #VRML V2.0 utf8 Group{ children[ Shape{ geometry Box{size } } Shape{ geometry Text {string "Realidade Virtual" } ] }

Definição e reuso Quando se que repetir, em outro lugar, um objeto já construído, faz-se necessário defini-lo, por exemplo: DEF nome objeto Onde o nome do objeto é escolhido livremente desde que não seja um comando VRML, e o objeto é qualquer componente VRML válida. Para referenciar o objeto assim batizado, basta dar o comando: USE nome

Transformações Servem para deslocar as primitivas gráficas (já coloridas ou forradas com texturas) pelo espaço virtual. Além de posicioná-las, e rotaciona-las e modificar sua escala.

Translações São especificadas para um conjunto de objetos através das três coordenadas que as definem. O conjunto de objetos a sofrerem a translação são agrupados pelo comando delimitador children[ ], que também aparece no nó Group. O comando Inline serve para inserir um arquivo dentro de outro arquivo.

Exemplo Construir um corredor de arcos aplicando os conhecimentos de translações, agrupamento e reaproveitamento de objetos. Para tanto deve-se: –Criar o arco, que poderá ser o resultado de dois cilindros (as colunas) e a laje, que é uma caixa de tamanho conveniente na posição adequada. –A passagem de colunas será construída repetindo-as nas posições desejadas

Passo 1

Passo 2

Escalonamentos As transformações de escala alteram as relações entre as coordenadas originais dos objetos. Devem ser especificados os três fatores correspondentes a cada um dos eixos coordenados. A sintaxe desta transformação é completamente análoga à das translações.

Rotações Para realizar a rotação de um ou mais objetos deve-se forncer: o ângulo e o eixo ao redor do qual a rotação é realizada. Para especificar o eixo precisamos de dois pontos: a origem e um outro que deve ser fornecido pela especificação de três coordenadas. Ao redor desta reta assim especificada será realizada a rotação pelos graus dado em radianos (90o equivalem a Pi/2 radianos, isto é, aproximadamente a 1.57). A sintaxe desta transformação é análoga à das outras duas, bastando especificar rotation seguido de quatro valores: três para o eixo e um para o ângulo em radianos. As rotações mais comuns são aquelas realizadas ao redor dos eixos do sistema cartesiano, a tabela a seguir fornece os valores que as especificam.

Exemplo

Imagens Existem duas maneiras básicas de disponibilizar uma imagem em formato digital: –Digitalizá-la utilizando um scanner, –Obtê-la diretamente neste formato através da utilização de uma câmara fotográfica digital (mais prático). A adoção de uma ou de outra técnica dependerá, na maioria dos casos, da disponibilidade de um ou outro equipamento.

Imagens de fachadas Muitas vezes, na construção de um mundo virtual, são utilizadas fotografias de fachadas de prédios. Estas fotografias serão empregadas para dar realismo a meras caixas. Para que a fotografia de uma fachada possa ser utilizada como componente textural do mundo virtual ela deverá atender a requisitos de qualidade: –Iluminação aproximadamente constante: para que a credibilidade do mundo não esteja vinculada a algum horário em particular, a fachada não deve ter variações na sua iluminação que induzam o visitante a crer que está amanhecendo (topo com luz dourada e base escura) ou anoitecendo (luz avermelhada no topo). –Ausência de elementos perturbadores: uma árvore impedindo a visão total da fachada será uma componente ruidosa no mundo. Caso seja de interesse modelar a árvore, ela deverá ser descrita separadamente. –Falta de perspectiva: a perspectiva deverá estar totalmente associada à navegação, isto é, à interação do/a visitante com o mundo e não embutido na fotografia.

Redução de perspectiva Uma caixa forrada com uma fachada que apresenta pontos de fuga, a impressão será desagradavelmente surrealista, como no exemplo da figura ao lado de Giorgio de Chirico para o uso criativo disto que, para um mundo virtual, pode ser um defeito. Utiliza-se o Photoshop para eliminar a perspectiva de uma imagem: »Definir a área de interesse »Recorte da mesma »Remoção do efeito perspectiva: »Selecionar toda a foto. »Aplicar a ferramenta perspectiva. »Movimentar a moldura da foto ate obter o efeito desejado.