Vrml - Virtual Reality Modelling Language

3,833 views

Published on

Trabalho acadêmico sobre a linguagem VRML

Published in: Design
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,833
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
98
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Vrml - Virtual Reality Modelling Language

  1. 1. VRML Virtual Reality Modelling Language Unicarioca Aluno: Milton Ferreira de Andrade Filho Matr.: 1072160001  Turma: 12223 Prof.: Carlos Alberto Pereira Bahiana
  2. 2. Introdução à VRML A Internet é uma rede de computadores que conecta Universidades, Empresas, Centros  de Pesquisa, Lares e Departamentos do Governo. Pode­se pensar na Internet como a  maior   rede   de   computadores   do   mundo,   e   como   uma   poderosa   ferramenta   de  comunicação. Atualmente um dos recursos mais utilizados da Internet é a WWW (World  Wide Web), que provê uma forma de acesso e recuperação de informações através de  links a documentos, onde um link corresponde a uma conexão entre pontos da rede que  permite que sejam feitas referências a outros documentos, outras seções do próprio  documento ou figuras nas páginas de um serviço de informações na WWW. Pode­se  caracterizar WWW como um conjunto de informações distribuídas pela Internet, onde o  usuário "navega" através dos diversos sites.  VRML (Virtual Reality Modelling Language) é uma linguagem de descrição de cenas ou  mundos 3D, usada para criar ambientes tridimensionais que podem ser transmitidos  através da Internet. VRML é atualmente o formato de compartilhamento de descrições  tridimensionais  mais  difundido   na   Internet,  assim  como     o  HTML   é   o  formato   mais  difundido para descrição de páginas hipermídia. Arquivos com extensão *.wrl contêm  descrições compactas de mundos virtuais (cenas) que podem ser transferidas através da  Web e visualizadas através de navegadores VRML. Ao permitir que objetos em um  mundo tridimensional possam referenciar outros mundos e recursos da Web, VRML cria  espaços de interação multidimensionais. Figura 1: Cubo 3D 
  3. 3. A VRML não trata de realidade virtual, pois, não modela experiências imersivas em  mundos 3D nas quais são usadas, por exemplo, capacetes, luvas e outros sensores,  embora nada impeça que aplicações de realidade virtual possam se utilizar de VRML  como suporte à descrição de cenas e suas propriedades interativas.  Outro aspecto importante sobre VRML é que ele não é um modelo multiusuário. O  esquema de documentos, códigos ou mundos virtuais sob demanda, obtido com o suporte  de   HTML,   Applets   Java   e   VRML,   respectivamente,   não   oferece   suporte   natural   ao  compartilhamento simultâneo de um mesmo mundo virtual por várias pessoas. No caso  de VRML cada usuário da Web interage individualmente com sua própria cópia isolada do  mundo virtual, alheio às explorações empreendidas por outros usuários que podem estar  naquele mesmo instante utilizando outra cópia daquele mesmo mundo.  Figura 2: Capacete 3D Figura 4: Ambiente Multiusuário Figura 3: Luva 3D
  4. 4. Ambiente Virtual Distribuído – DVE Existem   atualmente   projetos   que   intergrado   ao   VRML   permite   um   ambiente   virtual  compartilhado ou ambiente virtual distribuído (DVE ­ Distributed Virtual Environment). O  DVE é uma simulação em tempo­real de um mundo real ou imaginário, onde usuários  estão simultaneamente presentes e podem navegar e interagir com objetos e outros  usuários. Um ambiente virtual distribuído (DVE)  necessita das seguintes características:  Permitir que um grupo de usuários separados geograficamente possam interagir  em tempo real;  Permitir um número elevado de usuários simultaneamente conectados;  Precisa   ser   tridimensional   para   os   olhos  e   ouvidos.   Movimentos   no   ambiente  mudam a perspectiva visual e auditiva do usuário;  Os   usuários   são   representados  por  avatares   (personagens  representativos   no  mundo virtual);  Precisa mudar com a movimentação dos usuários (entrada, saída e movimentação  no ambiente), criando com isso uma dificuldade adicional;  Permitir simulações computacionais podendo ir além da imitação com o mundo  real;  Permitir comunicação verbal (microfone e fone de ouvido/caixa de som);  Possibilidade de ser executado em equipamentos (hardware) acessíveis e redes de  acessos mais populares e com banda suficiente. Estes itens não são características necessárias para o funcionamento da DVE, mas é  necessário para que atinja o grande público, para viabilizar os projetos. Exemplos de Ambiente Virtual Distribuído – DVE DIVE  (Distributed   Interactive   Virtual   Environment),   um   ambiente   desenvolvido   pelo  Swedish Institute of Computer Science. Trata­se de um sistema de realidade virtual  multiusuário baseado na Internet onde participantes navegam em um espaço 3D e vêem,  encontram e interagem com outros usuários e aplicações. NPSNET, um  ambiente   desenvolvido   pelo   Instituto  Naval   dos EUA que  simula  uma  batalha. MASSIVE, sistema desenvolvido pela Universidade de Nottingham. Na versão 3 este  sistema incorporou testes para teleconferência. 
  5. 5. NICE  (Narrative­based,   Immersive,   Construtivist/Collaborative   Environment),   é   um  sistema onde crianças constroem e cultivam ecossistemas virtuais simples, colaboram,  via rede, com outras crianças remotamente localizadas e criam histórias a partir de suas  interações nos mundos real e virtual. Foi desenvolvido pela Universidade de Illinois e  utiliza tecnologia Cave. HISTORICITY  é um ambiente virtual colaborativo distribuído que mostra a história da  antiga Cingapura. Esta aplicação utiliza uma arquitetura cliente­servidor que particiona o  mundo   virtual   em   comunidades,   distribui   essas   comunidades   entre   um   conjunto   de  servidores e migra os clientes de um servidor para outro à medida que os clientes se  movimentam através das comunidades. Essa arquitetura busca reduzir o tráfego entre os  servidores. GORILLA  WORLD  é um ambiente virtual colaborativo que auxilia no aprendizado e  estudo do comportamento dos gorilas que vivem no zoológico de Atlanta. LRVChat3D, está sendo desenvolvido pela Universidade Federal de Santa Catarina para  suporte ao ensino à distância.  RING,   um   sistema   que   utiliza   algoritmo   de   visibilidade   para   determinar   potenciais  interações visuais entre entidades e com isso reduzir o número de mensagens enviadas.  CMW  ­  Collaborative   Medical   Workbench,   um   sistema   de   projeção   desenvolvido   na  Alemanha para planejamento de cirurgias e treinamento.  AVC­MV, um ambiente virtual colaborativo multi­usuário para a Internet, que dá suporte  ao ensino e envolve o desenvolvimento de ferramentas para possibilitar a criação de  mundos virtuais por crianças e adolescentes, de maneira colaborativa e de acordo com o  modelo construtivista de ensino­aprendizagem. Este ambiente está sendo desenvolvido  como parte do Projeto Museu Virtual, por pesquisadores dos Centro de Pesquisas de São  Carlos, Fundação Eurípedes de Marília e Universidade Federal de Santa Catarina. Versões de VRML A versão 1.0 de VRML, concebida em 1994, apresenta muitas limitações, principalmente  no que se refere à modelagem de interação. Diversas empresas que desenvolveram  navegadores para VRML 1.0 fizeram extensões proprietárias na linguagem, de modo a  contornar estas limitações, o que contribuiu para que as várias versões diferentes de  VRML 1.0 se tornassem incompatíveis entre si. Tal fato limitou bastante a disseminação  de VRML 1.0 através da Web. A versão de VRML que promete ser mais adotada é VRML 
  6. 6. 97, que constitui um ligeiro aprimoramento de VRML 2.0  Moving Worlds.  VRML 97 é  suportada pelo Web3D Consortium (Web3D Consortium, 1999), antes chamado de VRML  Consortium. VRML 97 já é um padrão controlado pela ISO ­  International Standards  Organization. VRML 1.0 VRML 1.0 suporta basicamente a especificação de um mundo 3D estático. Objetos VRML  são chamados de nós, e quando organizados hierarquicamente constituem um grafo de  cena. Em VRML 1.0 existem três tipos de nós:  • forma ­  descreve a geometria primitiva de um objeto: cubo, esfera, cilindro ou  cone;  • propriedade   ­  modifica   a   geometria   original   de   um  nó,   acrescentando   outras  características   como   textura,   luminosidade,   etc.,   ou   aplicando   transformações  como translação, rotação e escala, colocação de luzes direcionais,  pointlight  e  spot­light;  • agrupamento   ­  agrupa   um   conjunto   de   nós   e   faz   com   que   propriedades   (e  transformações) sejam aplicadas a todo o grupo.  VRML 97 VRML 97 oferece substancial melhoria ao padrão VRML, capazes de torná­la um formato  3D bem sucedido na Web. VRML 97 é uma linguagem dinâmica, apta a incorporar futuras  características, cujos principais aspectos inovadores com relação a VRML 1.0 são o  suporte à:  Figura 5: Objeto VRML 1
  7. 7. • Criação de mundos estáticos mais realistas  ­ cenários celestes e de terreno  (montanhas, nuvens, nevoeiro), terrenos irregulares, nós geradores de som (grilos  na mata, vidros que se quebram), etc.;  • Interação ­ inclusão de sensores de aproximação, sensores de tempo e detectores  de colisão;  • animação  ­ interpoladores de animação, para criar, por exemplo, objetos que  modificam de cor quando se movendo;  • scripting  e   eventos  ­   nós   especiais   contém   scripts   que   encapsulam   e  automatizam   tratadores   de   eventos.   Eventos   são   roteados   entre   complexas  estruturas de tratamento de eventos, programadas em Java ou JavaScript ;  • prototipagem ­ permite encapsular grupos de nós como um novo tipo, de modo  que possa ser reutilizado em outros mundos.  Do VRML97 ao X3D X3D é o acrônimo para  eXtensible  3D. X3D pode ser considerado como a evolução  natural do padrão VRML97.  Foi concebido para intercâmbio de conteúdo 3D com base na  Web, sendo que este conteúdo é expresso como um documento XML (Extensible Markup  Language). Com isto se combinam interoperabilidade e flexibilidade para se estabelecer  um intercâmbio e executar aplicativos em diferentes plataformas computacionais através  da Web. X3D  é  um padrão  aberto  para   distribuir  conteúdo    3D. O  X3D   não  é  uma  API  de  programação, nem tão pouco um formato de arquivo para troca de geometrias. Combina  ambos, geometria e descrições de comportamentos instantâneos num simples arquivo  que tem vários formatos de arquivos  disponíveis para isso, incluindo o Extensible Markup  Language (XML).  Figura 6: Cenário VRML 97 Figura 7: Ambiente tridimensional  VRML97
  8. 8. O X3D surgiu de uma revisão da especificação ISO VRML97, e incorpora os avanços dos  recursos disponíveis nos últimos dispositivos gráficos comerciais e também incorpora  melhorias na sua arquitetura. O núcleo da especificação do X3D está em permanente  desenvolvimento pelo X3D Specification Working Group (http://www.web3d.org/).  O X3D possui diversos níveis de funcionalidades através das várias definições de perfis.  Um   desses   perfis   é   chamado   de  Interchange  e   é   dirigido   especificamente   para  ferramentas de criação de conteúdo digital (DCC) como AutoCAD, 3DMax e Maya. Quais as principais diferenças entre X3D e o VRML Existem   algumas  diferenças   entre   os   dois   padrões.   O   X3D   como   surgiu   do   VRML,  aproveita o trabalho desenvolvido no VRML apresentando melhorias. Começaram por  alterar   as   premissas   básicas   que   foram   desenvolvidas   para   promover   uma   maior  flexibilidade. Essas mudanças iniciaram pela especificação que sofreu um completo ajuste  e que se dividiu em três especificações separadas:  Conceitos Abstratos;   Formato de codificação para arquivos;   Acesso a linguagem de programação. Outras modificações foram implementadas para incluir a maior precisão com a iluminação  e modelo de eventos e a troca de nomes de campos para criar uma maior consistência.  As maiores e mais importantes melhorias foram:  Modelo de programação de aplicações revisto e unificado; Figura 8: Modelo VRML 97 e X3D
  9. 9.  Vários   formatos   de   codificação,   para   descrever   o   mesmo   modelo   abstrato,  incluindo o XML;   Arquitetura   modular   que   permite   uma   variedade   de   níveis   a   ser   adaptado   e  suportado por diversos tipos de interesses;  Estrutura da especificação expandida. O X3D só tem uma interface de programação de aplicações  (API), o que difere do VRML  que possui uma API de script interna e mais uma API externa. O fato de o X3D ter uma  única API resolve diversos problemas que existiam no VRML97, o que leva que X3D  tenha uma implementação mais robusta e confiável. O X3D também suporta vários tipos de codificações de arquivos, incluindo o VRML e o  XML.   A   codificação   XML   permite   uma   integração   com   serviços   Web   e   arquivos   de  transferência  de   dados   entre   plataformas.  Cada   uma  das  codificações  tem  as  suas  vantagens para diferentes aplicações. Todas as codificações suportam todo o conjunto de  características de X3D. O  X3D   possui  uma   arquitetura  modular para   promover uma   maior extensibilidade   e  flexibilidade. A maioria das aplicações não necessitam de todos os recursos do X3D, e  nem   todas   as   plataformas   suportam   a   totalidade   das   funcionalidades   definidas   na  especificação. Os recursos do X3D são agrupados em componentes que podem ser  suportados   pela   implementação   em   uma   mistura   de   capacidades   para   atingir   as  necessidades de uma plataforma em particular. O X3D também introduz o conceito de  perfis ­ um  conjunto   de  componentes que  normalmente   são   encontrados  em  certos  domínios de aplicações, plataformas, ou um cenário de uso, por exemplo, trocas de  geometrias entre ferramentas de modelagem.  Diferente do VRML 97, onde é requerido um completo suporte das suas funcionalidades  para que esteja em conformidade, o X3D permite vários níveis de suporte do padrão para  atingir uma variedade de necessidades. VRML e o Ciberespaço Como no ambiente virtual distribuído (DVE), alguns fatores que restringem o uso prático  das tecnologias de mundos virtuais 3D na Internet são:   Poder   computacional.  Mesmo   considerando­se   o   avanço   crescente   dos  computadores, as plataformas capazes de criar interações 3D em tempo­real ainda  são dispendiosas e complexas. Por outro lado, experiências focalizadas na solução  de problemas mais restritos produzem efeitos satisfatório, como por exemplo, na  criação de Shoppings Virtuais.
  10. 10.  Fatores humanos.  Embora nossos olhos captem uma visão 3D do mundo, a  inteligência e cognição humanas criam modelos multi­dimensionais da realidade,  onde   se   considera   as   dimensões   temporais,   a   noção   de   propriedade   e  comunidade, etc. Esta capacidade humana de tratar multi­dimensionalidade sugere  que   o   tridimensional,   embora   atraente   aos   olhos,   não   traz   necessariamente  mudanças qualitativas e quantitativas à interação .   Ausência   de   ferramentas   e   ambientes   de   desenvolvimento   adequados.  Construções virtuais 3D são complexas de construir e alterar. É difícil possibilitar  ao usuário a capacidade de acrescentar contribuições ao mundo 3D que explora.  Isto contribui para transformar os mundos virtuais 3D em vitrines dispendiosas que  oferecem   pouca   possibilidade   de   explorar   interações   emergentes.   O  desenvolvimento de projetos baseados na tecnologia Java­3D parece oferecer  soluções básicas para este problema.  Alguma categorias de aplicações 3D para WEB:  Visualização de Produtos;  Maquetes Virtuais para Arquitetura;  Jogos On Line;  Treinamento à Distância. Para as utilizações, citadas acima, é preciso algum tipo de  player, pois os sistemas  operacionais   ainda   não   suportam   3D   nativamente   variando   de   plataforma   (OpenGL,  DirectX, etc.). Players Os players podem ser do tipo ActiveX ou um Applet Java. No caso do Java o sistema já  possui suporte para 3D, não sendo necessário na maior parte dos casos instalar o applet. Geralmente os  players  baseados em  ActiveX  rodam em cima do  DirectX, enquanto os  applets Java utilizam o OpenGL.  Uma vez que todo sistema operacional hoje, vem com alguma versão de OpenGL. Então  não faz sentido duplicar funcionalidades se é possível utilizar a API gráfica disponível. Isto  vale também para o DirectX. São tantas as funcionalidades que muitos engines estão  abandonando as rotinas proprietárias para utilizar as rotinas existentes nas APIs.
  11. 11. Exemplos de projetos em VRML (Java 3D) No exemplo abaixo o usuário pode “manusear” o aparelho de celular e conhecer as suas  funcionalidades   antes   de   adquiri­lo.   (http://www.mio­tech.be/en/gps­navigation­device­ Mio­A701­overview.htm) No próximo exemplo é apresentado um conjunto de jóias. É possível intergir com os  modelos mudando a cor. Clicando­se nas jóias se escolhe o modelo. Clicando­se nas  esferas se escolhe uma cor. (http://www.mon­bijou.net/demo.html) Figura 9: Visão perpectiva do celular Figura 10: Visão do verso do  mesmo  celular Figura 11: Visão com todas as jóias  com a escolhida em perspectiva Figura 12: Visão da jóia escolhida  com a nova cor
  12. 12. No   exemplo   abaixo   a   proposta   é   a   interação   total   do   usuário   permitindo   construir,  virtualmente,   a   sua   mesa   de   trabalho.   Através   de   opções   clicáveis   escolhe­se   os  elementos pré­definidos que farão parte do projeto final da mobília. A ferramenta permite  ainda   rotacionar   o   objeto.   Pode­se   observar   na   imagem   os   pontos   em   vermelho  mostrando as opções que foram escolhidas. (http://formaspace.com/design_online.php   )   Outras  engines  exclusivas   para   uso   em   Web   como   o  VET   player  da   Viewpoint  (http://www.viewpoint.com/)   e  Wirefusion  da   DeMicron  (http://www.demicron.com/gallery/index.html)   já   possuem   ferramentas   para   o  desenvolvimento e a publicação de aplicações 3D para a Web. Na   galeria   de   exemplos   da   Demicron   (Imagem   do   tenis   abaixo),   permite   interação  (movimentação) do usuário com o produto mudando de vista.
  13. 13. Conclusão A principal motivação para o desenvolvimento de ambientes 3D multi­usuários na Web  está na possibilidade de transformar a Web de um espaço basicamente de informação  para   um   lugar   social,   com   informação   e   com   uma   comunidade   de   usuários   que  compartilham essa informação e interagem entre si.   Ainda que apenas um reduzido  número   de   ambientes   virtuais   colaborativos   estejam   disponíveis,   estes   ambientes   já  mostram um grande potencial.  
  14. 14. Bibliografia Utilizada VRML http://www.cic.unb.br/~jhcf/MyBooks/ciber/doc­ppt­html/VRML.html http://www.cic.unb.br/~jhcf/MyBooks/ciber/doc­ppt­html/ http://www.inf.pucrs.br/~manssour/VRML/Intro.html http://www.uff.br/mestcii/sueli1.htm http://www.dca.fee.unicamp.br/courses/IA368F/1s1998/Monografias/alberto/ X3D http://people.ufpr.br/~aberutti/projetos/x3d/x3d.htm http://lmbg.blogspot.com/2007/03/visualizador­web­3d.html http://pt.wikipedia.org/wiki/X3D Ambientes Virtuais Cooperativos e Colaborativos http://www.inf.ufrgs.br/~nedel/cmp513/12­cooperative­vr­p.pdf http://www2.dc.ufscar.br/~regina/apresentacoes/LDVE­USP.pdf

×