Upload
eduardo-de-lucena-falcao
View
238
Download
5
Embed Size (px)
DESCRIPTION
Descrevendo cenas em X3D para Integração de Aplicações e Suporte Multiplataforma. Minicurso prático sobre o X3D ministrado no SVR 2010.
Citation preview
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
Descrevendo cenas em X3D Descrevendo cenas em X3D para Integração de Aplicações para Integração de Aplicações
e Suporte Multiplataformae Suporte Multiplataforma
Eduardo L. Falcão
Liliane S. Machado
Thaíse K. L. CostaUniversidade Federal da
Paraíba
XII Symposium on Virtual and Augmented Reality
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
Parte I – • Conceitos, embasamento teórico,
introdução aos nós X3D
Parte II – • Introdução de interatividade aos AVs,
tópicos específicos em X3D
Descrevendo cenas em X3D Descrevendo cenas em X3D para Integração de Aplicações para Integração de Aplicações
e Suporte Multiplataformae Suporte Multiplataforma
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
Surgimento de AVs 3D na Surgimento de AVs 3D na WebWeb
• Nascimento do VRML • Virtual Reality Modeling Language (1994) • VRML 1.0 – criação de mundos estáticos• VRML 97 (VRML 2.0) – criação de mundos
dinâmicos
• Surgimento do X3D• Evolução do VRML 2.0• Principais avanços: introdução do XML,
reestruturação da especificação, …
VAG
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
X3D – eXtensible 3DX3D – eXtensible 3D• As perguntas mais frequentes:
AmbienteVirtual.x3d
…<Scene>
…<Box/><Cylinder/><PointLight/>…
</Scene>
Browsers X3D
O X3D é uma linguagem de programação?É preciso
compilar o
arquivo X3D?
É um programa?
É uma API?
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
Aplicações Desenvolvidas Aplicações Desenvolvidas com o X3Dcom o X3D
http://www.de.ufpb.br/~labteve/portugues/projetos/campus.html http://www.web3d.org/x3d/content/examples/Basic/Medical/MedicalMetadataViewer.x3d
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
Aplicações Desenvolvidas Aplicações Desenvolvidas com o X3Dcom o X3D
http://x3dgraphics.com/examples/X3dForWebAuthors/KelpForestExhibit/KelpForestMain.x3d http://www.latec.ufrj.br/dinosvirtuais/catalogo/exposicaofull.html
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
Aplicações Desenvolvidas Aplicações Desenvolvidas com o X3Dcom o X3D
http://x3d-earth.nps.edu/*
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
EspecificaçõesEspecificações• O que são as especificações?• Processo de modificação
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
EspecificaçõesEspecificações
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
EspecificaçõesEspecificações
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
EspecificaçõesEspecificações
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
EspecificaçõesEspecificações
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
EspecificaçõesEspecificações
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
Grafo de CenaGrafo de Cena• Grafo de Cena: contém todas as
informações (nós e campos) do AV, estruturadas de maneira hierárquica.
• Importante: • Boa localização espacial do grafo de cena• Alta segmentação dos sub-objetos do AV
Facilitam a construção do AV e a otimização da renderização.
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
Nós Intermediários
Nós Folhas
Térreo 1º andar
Recepção
Corredor (Dir.)
Corredor (Esq.)
2º andar
Aptos.01 - 25
Aptos.26 - 50
Corredor (Dir.) - 1
Corredor (Esq.) - 1
Corredor (Dir.) - 1
Corredor (Esq.) - 1
Aptos.101- 125
Aptos.126 - 150
Aptos.201 - 225
Aptos.226 - 250
Cadeira 1
TV 1
…
Cama 26
Cadeira 26
TV 26
…
Cama 101
Cadeira 101
TV 101
…
Cama 126
Cadeira 126
TV 126
…
……
Cama 1
Nó RaizHotel
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
Cada arquivo é composto por um conjunto de elementos (nós) que possuem hierarquia
HierarquiaHierarquia
<Shape> <Cylinder/> <Appearance>
<Material diffuseColor='0 0.5 1'/> </Appearance> </Shape>
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
• Programas que interpretam o arquivo X3D para a renderização do AV
• Podem se apresentar como plugins, como aplicações independentes e applets e para celular.
Browsers X3DBrowsers X3D
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
• Octaga plugin, aplicaçao local• Xj3D Java WebStart, Applet, Jar,
aplicação local• Instant Player aplicação local• BS Contact plugin, aparelhos móveis,
aplicação local• Cortona plugin, aplicação local,
apresentaçoes de PowerPoint, celular• Outros: H3DViewer, FreeWRL, OpenVRML,
SwirlX3D, Vivaty
Browsers X3DBrowsers X3D
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
XMLXML• eXtensibilidade• Arquitetura:
• extensível e modular, permitindo vários níveis de suporte às funcionalidades X3D
• Facilitam a construção dos browsers e downloads mais rápidos dos browsers• especificações segmentadas em vários níveis
• Definição de perfis e componentes no cabeçalho
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
XMLXML• Testes de validação• Facilita a construção de AVs
• Colaborativos• Ex.: AVs que adicionam objetos 3D em
tempo-real
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
Formatos de CodificaçãoFormatos de Codificação• .wrl• .x3dv• .x3d• .x3db: 50% de redução
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
• Construção de AVs X3D para fixação dos novos conceitos
• Ferramentas utilizadas:• Blender• X3D Edit
Exemplos PráticosExemplos Práticos
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
BlenderBlender• Free e Open Source• Exportador X3D• Modelagem • Facilita a construção de modelos
complexos• Agiliza a contrução de qualquer AV
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
X3D EditX3D Edit
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
• DEF/USE• Vantagens:
• Economizar espaço em memória• Diminuir tamanho do arquivo X3D• Maior eficiência na renderização
• “USE” aponta para o mesmo espaço de memória do “DEF”
Exemplo Prático 1: DEF/USEExemplo Prático 1: DEF/USE
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
Exemplo Prático 2: Eventos Exemplo Prático 2: Eventos e Rotase Rotas
• Permite animação dos AV através do mecanismo de Rotas fornecido pelo X3D
• Não é necessário script• Ex.: ProximitySensor
• inputOnly: permite apenas receber (valores) eventos;
• outputOnly: permite apenas enviar (valores) eventos;
• inputOutput: permite receber e enviar (valores) eventos;
• initializeOnly: tal campo não pode receber nem enviar (valores) eventos, o valor deste campo pode apenas ser inicializado.
ProximitySensor DEF=“Sensor”Campos: SFBool [out]: isActive = false Rota
PointLight DEF=“Lamp”Campos: SFBool [in,out]: on = false
ESTADO1
ESTADO2
ProximitySensor DEF=“Sensor”Campos: SFBool [out]: isActive = true
PointLight DEF=“Lamp”Campos: SFBool [in,out]: on = true
TRUE
Sensor capta a presença do usuário e lança um evento.
Alarme é acionado.
Rota
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
Exemplo Prático 2: Eventos e RotasExemplo Prático 2: Eventos e Rotas
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
Exemplo Prático 2: Eventos Exemplo Prático 2: Eventos e Rotase Rotas
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
Eventos com SAIEventos com SAI
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
ScriptScript• Possibilita fazer processamento em X3D que
envolva decisão lógica e gerência de estado• É ativado pelo recebimento de um evento• O evento ativa o campo URL
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
Aplicação ExternaAplicação Externa• Importante:
• instalar as bibliotecas do Xj3D • colocar no classpath do projeto
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
Aplicação ExternaAplicação Externa
ScriptJava.classScriptJava.class
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
Tópicos Específicos em X3DTópicos Específicos em X3D
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
Expansão de Expansão de FuncionalidadesFuncionalidades
• Protótipos• customizar novos nós a partir de outros nós X3D e/ou outros
protótipos
• Desenvolvedor pode• construir, declarar e instanciar nós que melhor se adequem a
necessidade do seu ambiente
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
Expansão de Expansão de FuncionalidadesFuncionalidades
Declarar -> Instanciar
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
Expansão de Expansão de FuncionalidadesFuncionalidades
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
• O que é estereoscopia?
• Métodos de visualização
EstereoscopiaEstereoscopia Paralaxe Negativa
Paralaxe Zero(ZPS)
Paralaxe Positiva
[Raposo, Szenberg, Gattas e Celes 2004]
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
• Alguns browsers dão suporte a estereoscopia:• Bs Contact Stereo (plugin no navegador)• Instant Player (suporta acesso da cena através de
Java)
• Pode-se gerar AVs estereoscópicos de qualquer arquivo X3D
AVs estereoscópicosAVs estereoscópicos
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
• Instant Player
AVs estereoscópicosAVs estereoscópicoshttp://www.instantreality.org/tutorial/passive-stereo/
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
• BS Contact Stereo• Ajuste da estereoscopia por menu, em tempo real
AVs estereoscópicosAVs estereoscópicos
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
AVs em dispositivos móveisAVs em dispositivos móveis
> BS Contact Mobile
> InstantMini
> X3DMini
> X3Dl
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
>Flexibilidade (tempo e localização)Capacidade de gerenciar ou modificar configurações de dispositivos sem a necessidade da presença física;
>Colaboração Comuncação entre usuários e com o mesmo
objetivo.
Conexão entre Virtual<->Real Conexão entre Virtual<->Real e Colaboraçãoe Colaboração
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
>Banco de Dados > Armazenamento de informações sobre os dispositivos;
>Sistema Embarcado > Comunicação do ambiente real com o virtual.
Conexão entre Virtual<->Real Conexão entre Virtual<->Real e Colaboraçãoe Colaboração
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
Conexão entre Virtual<->Real Conexão entre Virtual<->Real e Colaboraçãoe Colaboração
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
Serviço/Informação
• Ambientes Virtuais como suporte a diversos tipos de informações
ConsideraçõesConsiderações
Natal, 24 a 27 de maio de 2010XII Symposium on Virtual and Augmented Reality
Divirtam-se com X3D!Divirtam-se com X3D!
Obrigado!Obrigado!