![]() |
![]() |
![]() |
||||||||||
|
Parte
IV - Topicos Avançados
Realidade Virtual Introdução
VRML
é uma Linguagem para Modelação de Realidade Virtual
usada para criar mundo de três dimensões. Trata-se de um formato
de arquivo objeto de 3D, análogo ao HTML (para objetos tridimensionais).
Usando-se formas pré-definidas e se especificando novas formas a
partir dessas, pode-se atribuir cor, forma, luz e outros a um documento
VRML.
Há
um tempo, surgiu a idéia de levar a Realidade Virtual para a internet.
Dessa idéia surgiu o VRML, que é a abreviação
de Virtual Reality Modeling Language. VRML é uma linguagem
independente de plataforma que permite a criação de ambientes
virtuais por onde se pode navegar, visualizar objetos por ângulos
diferentes e até interagir com eles. Hoje, graças ao crescente
investimento de grandes empresas, o VRML é o padrão
paradesenvolvimento de aplicações
de realidade virtual multi-usuário na internet. O objetivo
da linguagem é este mesmo: levar a realidade virtual para o usuário
comum, através da internet. Com o rápido avanço
datecnologia, os computadores pessoais
estão cada vez mais rápidos e poderosos, e isto faz com que
a realidade virtual deixe de ser objeto de estudo dos grandes centros de
pesquisa e possa ser utilizada por usuários comuns. A
linguagem possui toda a estrutura necessária para o desenvolvimento
de aplicações de realidade virtual. A primeira versão
(VRML1.0), com exceção
de algumas extensões, não possibilita muita interação
do usuário com o mundo virtual, mas versões recentes acrescentam
características como animação, som, movimentos de
objetos e interação entre usuários. A última
versão é a 2.0, chamada Moving Worlds VRML 2.0. Por
serindependente de plataforma,
uma aplicação VRML roda em qualquermáquina
que tenha um browser VRML, ou seja, uma aplicação
que roda no PC, roda numa Silicon Graphics,numa
Sun,
etc. sem nenhuma alteração. A
indústria do entretenimento é a que mais tem se beneficiado
com os recursos da RV. Muitas tecnologias também são
desenvolvidas partindo da necessidade que certos filmes têm em passar
para a tela as idéias no papel. Um exemplo é a empresa Industrial
Light & Magic de George Lucas que pretende num futuro próximo
desenvolver atores humanos virtuais mais realistas para interagir com atores
reais (como no filme pioneiro Roger Rabbit). Na
World
Wide Web, a RV é usada principalmente em jogos interativos
criando ambientes em que o nível de realidade dos cenários
se aproxima do mundo real. Exemplos são os jogos MUD. Sociedades
virtuais juntam em mesmo espaço humanos, avatares e objetos em 3D.
Servindo como foco de estudo para comportamento humano em casos concretos. Mundos
em VRML são adotados por usuários que desejam interação
mais face a face. O Brasil Virtual é um exemplo onde criou-se uma
espécie de cidade tridimensional na qual habitantes podem construir,
comunicar-se e votar. Na
medicina virtual, a RV possibilita construção de ambientes
tridimensionais para operações delicadíssimas a serem
efetuadas, sem prejuízo para o paciente. É a maneira de praticar
as aulas teóricas e ainda consultar a distância através
da telemedicina. O projeto ‘Homem Visível’ foi pioneiro ao mapear
todo o corpo humano montando uma gigantesca base de dados de imagens virtuais.
Este projeto foi desenvolvido pela Natinal Library Medicine (NLM),
a maior biblioteca médica do mundo e ponto de referência da
medicina mundial. O processo baseou-se em escanear e digitalizar cadáveres
perfeitos de ambos sexos - obtendo-se as imagens tomográficas de
ambos, cada corpo foi seccionado em fatias de 1 mm de espessura
e fotografado por câmara digital colorida de alta resolução.
No total 56 Gbytesde espaço
que constituem a 19 000 imagens produzidas. O primeiro projeto a utilizar
esta base de dados foi a Analyse da Clínica Mayo,
em Rochester, Estados Unidos. O software Analyse permite
uma viagem virtual pelo corpo humano. A
Arquitetura e a Construção Civil ainda usarão a RVpara
que o usuário escolha e determine o ambiente em que vai morar. Mas
já é possível o cliente andar pela planta antes de
aprovar o projeto, tudo isso feito por simulações virtuais
como a Faculdade de Arquitetura de Utah. Nessa faculdade, criou-se
um modelo de hospital em VRML na
WEB,
onde se permite críticas e interação com o projeto. Em
design
projetam-se roupas pelo MIT (Instituto de Tecnologia), esta é
a função do Wearable computer. O MITtambém
desenvolveu Photo Book, um amplo banco de dados de faces onde pode-se
procurar rostos conhecidos entre os disponíveis no sistema - particularmente
útil para a polícia, jornalistas, etc. O software
é capaz de notar pequenas mudanças no rosto (na faceouum
corte de cabelo).
Histórico
de VRML
Tim
Berners-Lee e Dave Raggett organizaram uma sessao de Birds-of-a-Feather
- Penas de um Pássaro - (BOF) para discutir interfaces de VR para
a World Wide Web. Vários freqüentadores das discussões
descreveram projetos ainda em planejamento para construir ferramentas de
visualização gráfica para 3D que interagissem com
a Web. Todos concordaram com a necessidade dessas ferramentas para
ter uma linguagem comum de especificação de descrição
de cenários 3De hiperlinksWWW
- um análogo ao HTML para VR. O termo VRML
foi forjado, e o grupo resolver começar com especificações
de trabalho depoisda conferência.
A palavra MarkUp foi posteriormente modificada para Modelação
para refletir a natureza gráfica do VRML. Logo
após a Genebra, as listas de discussão www-vrml foram
criadas para o desenvolvimento de uma especificação para
a primeira versão de VRML. A adesão foi excepcional:
após uma semana havia mais de mil membros. Após se estabelecer,Mark
Pesce do Labyrinth Group anunciou que desejava aprontar um esboço
da especificação para a Conferência de Outono de WWW
de 1994, em apenas 5 meses. Era um calendário muito difícil:
mas a primeira versão não era muito ambiciosa e o VRML
poderia ser adaptado de uma solução existente. A lista rapidamente
acatou que um grupo de regras para a primeira versão, e começou
a procurar por tecnologias compatíveis com as necessidades do
VRML. A
procura por tecnologias existentes envolveu vários tipo de candidatos
no mundo. Depois de muito deliberar a lista chegou a um consenso: o Open
Inventor ASCII File Format da Silicon Graphics Inc. O
Inventor
File Format suportava descrições completas de cenários
de 3D com polígonos representando objetos, iluminação,
materiais, propriedades de ambientes e efeitos realistas. Umsubconjunto
do Inventor File Format, com extensões com suportes para redes,
formas para base de VRML. Gavin
Bell da
Silicon Graphics adaptou para a lista de mail o Inventor
File Format para VRML, com design de acordo com lista
de discussão. SGI tem publicidade estabelecida que o formato de
arquivo está disponível para uso do mercado aberto, e tem
contribuído para um parser de formato de arquivo num domínio
público para bootstrap(mecanismo
de boot) para desenvolvimento de visualizador de VRML. Cada
nó é formado por atributos que o caracterizam. Esses atributos
podem assumir valores numéricos, caracteres, e URLs indicando arquivos
externos ou não. As URLs podem indicar links para outros arquivos
VRML, arquivos HTML, ou imagens.
A
figura abaixo mostra a estrutura hierárquica de nós que compõem
uma cena VRML.
Estrutura
hierárquica de nós que compõem uma cena VRML exemplo.
Os
nós indicados na figura XX caracterizam objetos que possuem características
geométricas e propriedades materiais dos objetos apresentados pela
cena. Os nós VRML constituem a cena a ser apresentada ao usuário
através de um navegador e contém toda a informação
a respeito da cena, como a forma dos objetos, sua cor, sua textura e localização
no mundo virtual.
A
figura abaixo mostra uma cena VRML vista através de um navegador.
É
necessário um programa adicional (plug-in) ao navegador para
possibilitar a visualização de mundos virtuais VRML.
A
Linguagem VRML
Os mundos
virtuais VRML são compostos basicamente de texto e podem ser gerados
a partir de um editor gráfico ou um editor de textos. O código
gerado é interpretado pelo navegador através do plug-in
e a cena é mostrada ao usuário. O usuário interage
com os objetos do mundo virtual através de botões apresentados
na tela, gerados pelo plug-in.
A seguir
é mostrado um código exemplo de uma cena básica escrita
em linguagem VRML que representa o objetos mostrado na figura abaixo (esfera).
O
exemplo mostra a sintaxe do nó Shape e seus atributos (appearance
e geometry). Os atributos dos nós podem ser caracterizados por valores
ou por outros nós (no caso Appearance e Sphere). Os nomes de nós
iniciam com letra maiúscula e os nomes de atributos iniciam com
letra minúscula.
-Formas
podem ser representadas utilizando NURBS sem perda de exatidão matemática,
sem aproximação por polígonos.
NurbsCurve
{
A
curva NURBS é caracterizada pelos parâmetros knot, order,
controlPoint, weight e tesselation.O parâmetro knot é
caracterizado por um conjunto de valores numéricos Reais (MFFloat).
O parâmetro order indica a ordem da curva através de um valor
inteiro (SFInt32). O parâmetro controlPoint é formato por
um conjunto de pontos no espaço tridimensional (MFVec3f). O seguinte
parâmetro chamado weight é descrito através de um conjunto
de valores numéricos Reais (MFFloat). Por fim, o fator tesselation
é indicado através de um valor inteiro (SFInt32) e caracteriza
a qualidade da renderização da imagem. A descrição
desses parâmetros em mais detalhes é apresentada no capítulo
XX, onde são caracterizados os fundamentos matemáticos utilizados
na representação baseada em NURBS. Para a geração
de uma curva NURBS em VRML, é apenas necessário que se forneça
os valores dos parâmetros do nó VRML. Esse código será
então interpretado pelo navegador e a cena será gerada.
Um exemplo de um objetos VRML baseado em NURBS é mostrado na figura
abaixo.
Aplicações A
realidade virtual é forma de interface mais natural entre o computador
e o ser humano. Por isso, o número de aplicações é
muito grande, em diversas áreas do conhecimento. A seguir estão
alguns exemplos deaplicação
: na área de visualização de dados, podemos usar o
VRML
para criar gráficos tridimensionais, porexemplo.
É fácil visualizar os números de umgráfico
3D. Fica mais fácil ainda quando podemosvisualizar
este gráfico por vários ângulos diferentes. Veja um
exemplo desta aplicação: CAD - VRML permite
que o projetista ou desenhista vejaseu
modelo CAD em um ambiente 3D virtual interativo, podendo manipular
e visualizar omodelo de forma livre.
Ou seja, o projetista pode acompanhar o desenvolvimento do projeto usando
VRML
para visualizar seu modelo em três dimensões. Passos
Básicos É
uma linguagem interpretada composta por nó, campo e comentário. Usa-se
: #VRML V1.0 asciipara que o interpretador
reconheça este documento como VRML (*.wrl). *
Nó: comando que define formas e propriedades em VRML . Ex.
de Primitivas: cubo, esfera, cilindro e cone, =>
Transform
(move, dimensiona e rotaciona objeto) =>
AsciiText
(define texto ascii a ser mostrados) =>
GroupindNodes
(agrupa informações juntas - para reuso) *
Campo: atributos que os nós tem. Ex.:
Um cubo é descrito pelas propriedades LARGURA, ALTURA e PROFUNDIDADE. *
Comentário: " # " precede todo comentário. Um comentário
pode ser feito em qualquer posição na linha. O
ESPAÇO Todas
coordenadas em VRML são expressas em X,Y,Z. O eixo X representa
o eixo horizontal do monitor, o eixo Y vertical e o eixo Z,entra
e sai. Medidas
lineares são em metros e angulares, em radianos. Um
forma criada é a princípio vazia, oca, sem cor e tem origem
(0,0,0). Por isso, esses atributos devem ser modificados conforme a conveniência.
Por exemplo, ao se representar-se um quarto, é conveniente que seja
uma forma oca. É possível especificar iluminação
dentro de uma forma (PointLight). Os
nós são basicamente quatro: cubo, esfera, cilindro, cone.
E exceto, pelo cubo, os outros nós são formas triviais. O
CUBO Constitui
uma forma de 6 faces e pode dispensar altura, largura e profundidade equivalentes. #VRML
V1.0 ascii /*
A sintaxepara construção
de um cubo : */ Cube { width2 height2 depth2 } /*
no lugar de 2 deve haver sempre um número real qualquer */ GRÁFICOS
3D É
necessário alguma familiaridade com internet e
HTML.Para
isso, exemplificaremos instruções básicas para a criação
de mundos VRML. Usaremos um editor de texto ascii e o
browser de VRMLLive3D.
Eventualmente pode-se acrescentar textura aos arquivos de imagem criados. Há
três elementos neste contexto: o observador, o objeto e a luz. Um
objeto mais complexo pode ser definido nas três coordenadas: X, Y
e Z. E pode-se atribuir certas propriedades como: *
material: como o objeto interage com a luz. *translation:
tradicionalmente é identificado como centro do objeto, modificando
esta propriedade, modifica-se o centro do objeto (metros). *
rotation:
muda a orientação de um objeto em cena (radianos). *
scaling:
muda a dimensão dos objetos. *
lighting:
aplica luz a cena. *
texture
mapping: aplica imagem a superfície de um objeto. Gráficos
3D definem espaços tridimensionais, como o sistema de três
eixos: *
X, que correspondea largura; *
Y, a altura; *
Z , a profundidade. Assumindo
um ponto no centro, a discrição de objetos em espaço
tridimensional é expresso com as coordenadas representando com pontos
absolutos num sistemas de coordenadas tridimensionais relativos ao ponto
central. Cada
eixo tem direção positiva e negativa entendendo-seo
ponto central como cenário. VRML padroniza o eixo Y positivo
aponta para cima, o eixo X positivo aponta para a direita e o eixo Z aponta
direto para o usuário. Objetos com cenário podem ser rotacionados,
provocando a orientação dos seus eixos mudem de acordo. Uma
vez que a locação do objeto é estabelecida, relativa
ao centro absoluto, pode ser orientada em uma ou mais de três direções: *
Yaw:
rotação sobre o eixo Y; *
Pitch:
rotação sobre o eixo X; *
Roll:
rotação sobre o eixo Z. Os
três eixos (X,Y,Z) e as três rotações (Yaw,
Pitch,
Roll) juntos, são referenciados como seis graus de liberdade.
O referencial e a orientação de objetos em espaço
tridimensional são determinados por estas seis informações. COMO
OS COMPUTADORES REPRESENTAM OBJETOS 3D Quando
um objeto gráfico tridimensional é criado, um conjunto de
pontos normalmente costuma representar a forma. Desde que é difícil
ver a forma de um objeto claramentequando
somente alguns pontos são designados, este conjunto é chamado
Point
Cloud - Nuvem de Pontos. Os pontos, então, são ligados
por linhas para formar uma malha (mesh ou wireframe). O wireframe
mostra nitidamente um grupo de polígonos (tipicamente triângulos,
desde que possam ser rapidamentegerados).
É importante lembrar que polígonos são tipicamente
lados ou faces. Uma face de polígono é o lado da qual
sua normal (um raio de luz atravessa o polígono no ângulo
reto) distancia-se do polígono. Assim, os polígonos são
visíveis de fora e invisíveis por dentro. Uma
vez que os polígono foram criados, o computador pode então
escurecer polígonos individuais para produzir a aparência
de um objetos sólido. Opcionalmente o computador acresce a textura
ao objeto. Texturizar torna possível criar rapidamente objetos de
superfícies bastante complexas. Referências
Bibliográficas http://www.netscape.com/eng/live3d/howto/vrml_primer_index.html http://apertos0.csc.uvic.ca/~brycerw/vrml_tutorial/tutframe.htm http://www-ipf.bau-verm.uni-karlsruhe.de/Personen/landes/book.html http://www.dc.ufscar.br/~grv/vrml/tutoriais/vrml10/#IntroduþÒo http://www.eecs.tulane.edu/www/Benetz/mainpage.html http://www.ezinfo.ethz.ch/general_info/WWW5/tutorial_2.html http://www.sdsc.edu/vrml/cgi-bin/display.cgi?category=Tutorials+-+VRML http://www.iwebmasters.com/HTML%20Links.html
|
|||||||||||
![]() |
![]() |
![]() |