prot ótipo de um ambiente virtual distribu ído multiusu...
TRANSCRIPT
![Page 1: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/1.jpg)
ProtProt óótipo de umtipo de umambiente virtual distribuambiente virtual distribu íído do
multiusumultiusu ááriorio
Acadêmico: Leonardo WillrichProf. orientador: Dalton Solano dos Reis
Universidade Regional de BlumenauCentro de Ciências Exatas e Naturais
Departamento de Sistemas e Computação
Apresentação para defesa em banca do Trabalho de Co nclusão de Curso da primeira fase do ano de 2002, para obtenção do título de Bacharel em Ciências da Computação
![Page 2: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/2.jpg)
2
TTóópicos abordadospicos abordados
• Introdução• Contextualização / objetivos
• Fundamentação teórica• Ambientes virtuais distribuídos• Modelos/Protocolos de comunicação• OpenGL• DIS-Java-VRML• Objetos Distribuídos/CORBA
• Desenvolvimento do trabalho• Ferramentas utilizadas• Especificação e implementação• Operacionalidade do Protótipo
• Considerações finais• Conclusões e extensões
![Page 3: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/3.jpg)
3
IntroduIntrodu çção ão -- ContextualizaContextualiza ççãoão
• Imagens em 3D torna a interface com o usuáriomais próxima da realidade
• Surgimento dos ambientes virtuais (imersivos,não imersivos, mono ou multiusuário)
• Necessidade de apoio de outras ferramentas(Biblioteca gráfica OpenGL e DIS-Java-VRML)
• Necessidade comunicação entre objetos distribuídos (Padrão CORBA)
![Page 4: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/4.jpg)
4
IntroduIntrodu çção ão -- ObjetivosObjetivos
• Implementar um protótipo de ambientevirtual distribuído sobre uma rede local, comsuporte a multiusuários e com uma interfacenão imersiva
• Mais especificamente:
• Composto por um cenário e objetos simples• Permitir interação dos usuários com o ambiente virtual
![Page 5: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/5.jpg)
5
FundamentaFundamenta çção ão –– AVDAVD’’ss
• São simulações de computador interativas que submergem os usuários a uma realidade
• Primeiras experiências estão relacionadas aaplicações para simulações militares
• Projetos que servem como referência:SIMNET e NPSNET
• Resultaram como referência nos seguintesaspectos de construção de um AVD:
• modelo geral de comunicação• técnicas (heartbeats) e protolocos (broadcast e DIS) mais indicados
![Page 6: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/6.jpg)
6
Modelos de ComunicaModelos de Comunica ççãoão
Basicamente existem dois modelos de comunicação: o modelo centralizado e o distribuído.
![Page 7: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/7.jpg)
7
Modelos de ComunicaModelos de Comunica ççãoão
• Problema de geraçãoexcessiva de mensagens
• Mais vunerável a falhas• Problema de
escalabilidade• Sobrecarga de
mensagens parao computador central
Negativo
• Cada usuário usa seuspróprios recursoscomputacionais
• Mais tolerante a falhas, evitacongestionamento demensagens sobre um únicocomputador
• Simplifica o mecanismode controle da
comunicação
Positivo
DistribuídoCentralizadoModelo/Aspecto
![Page 8: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/8.jpg)
8
Protocolos de comunicaProtocolos de comunica ççãoão
Rede
Broacast (apenas uma mensagem enviada,todos recebem)
Protocolo de rede Broadcast:
• Não é necessário umaconexão para cada usuário
• Uma mensagem enviada,todos recebem
• Útil principalmente sobreLAN’s
• Não aplicável a WAN’s: UDPbroadcast não roteável
• Não existe a garantia da entrega dos pacotes
![Page 9: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/9.jpg)
9
Protocolos de comunicaProtocolos de comunica ççãoão
Distributed Interaction Simulation (DIS)
• É um grupo de padrões definido pelo Departamento de Defesa dos Estados Unidas e indústrias interessadas
• Sua origem está ligada ao SIMNET
• Visa determinar uma arquitetura de comunicaçãocomum para AVD’s
• Consiste de PDU’s (originalmente 27 tipos) paracomunicar eventos e estados do AVD
• Originalmente definido no padrão IEEE 1278-1993
![Page 10: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/10.jpg)
10
TTéécnica Associadacnica Associada
• Heartbeat
• Consiste em enviar PDU’s de atualização de estado do usuário periodicamente para os outros usuários
• Importante para objetos com baixa ou nenhumafreqüência de atualização no AVD (estáticos)
• Essencial para manter novos usuários queentram no AVD atualizados
• Causa um aumento na utilização da largura debanda
![Page 11: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/11.jpg)
11
OpenGLOpenGL
• Características
• Significa Open Graphics Library
• É uma biblioteca gráfica e de modelagem 3D
• Desenvolvida pela Silicon Graphics para suas estações gráficas de trabalho - 1992
• Portável: Independente de plataforma e de sistema operacional
• Consistem em 150 comandos aproximadamente
• Possibilita aos desenvolvedores produzirem animações 3D com simples linhas de comando
![Page 12: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/12.jpg)
12
OpenGLOpenGL
Vários jogos: QUAKE I, II, e III, Half-Life, Soldier of Fortune, e outros
Imagens do Jogo Half-Life (fonte: www.amazon.com)
![Page 13: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/13.jpg)
13
DISDIS--JavaJava --VRMLVRML
• Características
• Resultado de um dos grupos de trabalho doconsórcio Web3D
• API visa facilitar a construção de AVD’s portáveis,oferecendo uma interface entre a linguagem Javae o ambiente virtual feito em VRML
• Nelas estão contidas várias classes queimplementam a maioria dos PDU’s do protocoloDIS, bem como classes que controlam o processode envio e recebimento dos mesmos
![Page 14: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/14.jpg)
14
VRML VRML -- OpenGLOpenGL
• Classes que interfaceiam Java eVRML foram desconsideradas
• Uso somente das classes que implementam os PDU’s emecanismos de controle de envioe recebimento dos mesmos
• Necessidade de objetos distribuídos em duas aplicações desenvolvidas em linguagens diferentes
SubstituiçãoVRML – OpenGL
![Page 15: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/15.jpg)
15
Objetos DistribuObjetos Distribu íídosdos
• Características
• Localização: Podem estar todos em uma máquina ou em máquinas distintas de uma rede
• São capazes de executar funções para um sistema distribuído
• Teve sua origem com a orientação a objetos e as aplicações distribuídas
• Os padrões mais conhecidos são o DCOM e o CORBA
![Page 16: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/16.jpg)
16
CORBACORBA
• Características
• Padrão que define como objetos devem interoperar em um ambiente distribuído
• Define e implementa a estrutura necessária para comunicação entre aplicações distribuídas em diferentes plataformas, sistemas operacionais e linguagens de programação.
• Desenvolvido pela OMG
• É um padrão aberto
• Duas maneiras de implementar objetos:
• SSI (Static Invocation Interface)
• DII (Dynamic Invocation Interface)
![Page 17: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/17.jpg)
17
Desenvolvimento do protDesenvolvimento do prot óótipotipo
• Objetivo:
• Ambiente virtual distribuído sobre uma rede local, com suporte a multiusuários e com uma interface não imersiva
• Requisitos identificados:
• Modelo de comunicação distribuído
• Envio de mensagens através de broadcast UDP
• Protocolo de comunicação baseado no DIS
• Comunicação entre objetos distribuídos através do CORBA
• Criação de cenário e dos personagens com OpenGL
• Entrada de dados no AVD
• Utilização da técnica de heartbeat
![Page 18: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/18.jpg)
18
• Técnicas de especificação:
• Para representar as classes: Diagrama de Classes• Para lógica dos processos: fluxogramas
• Linguagens de programação:
• Java• Object Pascal
• Ferramentas:
• API J2SDK 1.3• API OpenGL 1.2• API DIS-Java-VRML• VisiBroker for Java 4.5.1
Desenvolvimento do protDesenvolvimento do prot óótipotipo
![Page 19: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/19.jpg)
19
Diagrama de classesDiagrama de classes
PersonagemBoneco PersonagemCubo
PersonagemPiramide
PersonagemTriangulo
PersonagemCirculo
PersonagemCone
PersonagemCilindro
1 DIS0
1
1 0 TratarMovimentosCenario
1InterfaceCorbaCenario 10
1
0
0
10Teclado
1
0
HeartBeat
1
0
InterfaceCorbaDisCenario1 01
OpenGL
0..*
Personagem
0
1
InfoAVD
0
Cenario10
10
1
0
1
0
1
0..*
0
1
00
![Page 20: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/20.jpg)
20
Classe Classe CenarioCenario
Cenario
DesenharCenario( )DesenharPersonagens( )CalculaY( )CriaCenario( )DestroiCenario( )Desenhar( )MoveuParaFrente( )MoveuParaTras( )MoveuParaEsquerda( )MoveuParaDireita( )OlhouparaCima( )OlhouParaBaixo( )AdicionarPersonagem( )ExcluirPersonagem( )AtualizarPersonagem( )AtualizaCenarioDistribuido( )InfoShow( )
• Responsável pelo gerenciamento do cenário
• Agrega lista de personagens pertencentes ao cenário
• Contém informações do estado atual do usuário
• Atualiza a janela de informações
• Cada usuário terá instanciado um objeto desta classe ao entrar no AVD ou ao consultar informações do mesmo
![Page 21: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/21.jpg)
21
Classe Classe Cenario Cenario -- MMéétodostodos
• Método CalculaY():
• Composto de dois pisos com uma rampa de acesso
• Se usuário está no piso superior ou inferior então Y será fixo
• Se usuário está na rampa existe a necessidade de um calculo
![Page 22: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/22.jpg)
22
Classe Classe Cenario Cenario -- MMéétodostodos
• Método CriaCenario():
• Este método é um construtor desta classe
• Duas maneiras: com interface e sem interface
Inicializa variáveis do
ambiente
Carrega as Texturas
necessárias
Se existe Interface
Cria lista de visualização do cenário
Cria janela de informações
Inicializa dados da janela de
informações
Cria a lista de Personagens
Vazia
Alinha a janela de informação
conforme a janela de interface
Se existir uma janela de interface
Mostra a janela de
informações
Fim
N
N
S
S
![Page 23: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/23.jpg)
23
Classe Classe Cenario Cenario -- MMéétodostodos
• Método Desenhar():
• Desenha o cenário por completo
• Utilizado quando o cenário sofre alguma alteração
Limpar a Janela
Carregar a Matriz
Identidade
Rotacionar cabeça
Rotacionar corpo
Aplicar translação no cenário para
mover o ponto de visão do usuário
Desenhar cenário
Desenha Personagens
Fim
![Page 24: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/24.jpg)
24
Classe Classe Cenario Cenario -- MMéétodostodos
• Métodos MoveuParaFrente() e MoveuParaTraz():
• Calcula-se novas coordenadas através da rotação do corpo
![Page 25: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/25.jpg)
25
Classe Personagem/herdadasClasse Personagem/herdadas
PersonagemBoneco
DesenharPersonagem( )
PersonagemCubo
DesenharPersonagem( )
PersonagemPiramide
DesenharPersonagem( )
PersonagemTriangulo
DesenharPersonagem( )
PersonagemCirculo
Circulo( )
PersonagemCone
DesenharPersonagem( )
PersonagemCilindro
DesenharPersonagem( )
Personagem
Create( )Destroy( )Desenhar( )DesenharPersonagem( )
![Page 26: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/26.jpg)
26
Classe TecladoClasse Teclado
Enquanto a aplicação está ativa
Leitura do Tempo Inicial
Enquanto (Tempo Atual - Tempo Inicial) < 100
Fim
Faz a leitura e o tratamento se alguma
tecla foi pressionada
• Método execute():
• Laço de repetição
• Processamento paralelo
• Processamento em tempo real
![Page 27: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/27.jpg)
27
Classe Classe HeartBeatHeartBeat
Espera 5 segundos
Aplicação está ativa?
Envia Mensagem para o cenário para
atualizar os cenários
distribuídos
Fim
N
S
• Método execute():
• Laço de repetição
• Processamento paralelo
• Envia estado do usuário para demais usuários
![Page 28: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/28.jpg)
28
Classes de InterfaceClasses de Interface
Objeto Cenario
Objeto InfoAVD
Objeto InterfaceCorbaDisCenario
Objeto DIS
Objeto TratarMovimentosCenario
Objeto InterfaceCorbaCenario
REDE
Aplicação desenvolvida em Object Pascal
Aplicação desenvolvida em Java
![Page 29: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/29.jpg)
29
FuncionamentoFuncionamento
Visibroker Smart Agent
Interface Repository
DIS Protótipo
![Page 30: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/30.jpg)
30
DemonstraDemonstra çção do protão do prot óótipotipo
![Page 31: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/31.jpg)
31
Resultados e discussãoResultados e discussão
Resultados alcançados e restrições encontradas:
• Abstração na criação do cenário através da OpenGL
• Devido a utilização da linguagem Object Pascal, OpenGL ficou vinculada ao sistema operacional Windows
• OpenGL não tem objetos pré definidos, exisitiu a necessidade de cria-los através de primitivas gráficas
• A API DIS-Java-VRML abstraiu a implementação de mecanismos para enviar PDU´s e os próprios PDU´s
• A utilização do protocolo UDP facilitou a implementação, pois não ele é um protocolo não orientado a conexão
• Porém, pode exisitir o não recebimento de algum usuário de algum pacote enviado e seu funcionamento esta limitado a uma rede local
![Page 32: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/32.jpg)
32
Resultados e discussãoResultados e discussão
Resultados alcançados e restrições encontradas:
• Técnica de HeartBeat foi essencial para o funcionamento, apesar do tráfego gerado na rede
• a API do DIS-Java-VRML é mais especifica para simulações militares, dessa forma, ela não seria bem aproveitada em qualquer AVD
• CORBA atendeu plenamente a comunicação entre objetos distribuídos
• Com um sistema distribuído desta forma, o custo de processamento aumentou muito, o que é ruim para a geração das imagens gráficas
• Ideal ter todas as técnicas encapsulados em uma aplicação somente
![Page 33: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/33.jpg)
33
ConsideraConsidera çções Finaisões Finais
Conclusões:
• É viável a construção de AVD utilizando-se OpenGL, DIS-Java-VRML e CORBA
• Trouxe experiência na criação da interface gráficapara AVD´s com OpenGL e na utilização de objetos distribuídos para criar um protótipo na área de realidade virtual
• A API do DIS-Java-VRML não foi tão relevante ao trabalho, pois com a conclusões de outros trabalhos sua definição passou a ser mais compreendida
![Page 34: Prot ótipo de um ambiente virtual distribu ído multiusu áriocampeche.inf.furb.br/tccs/2002-I/2002-1leonardowillrichap.pdfImagens do Jogo Half-Life (fonte: ) 13 ... mecanismos de](https://reader035.vdocuments.site/reader035/viewer/2022081409/607869405f7fc325874855f5/html5/thumbnails/34.jpg)
34
ConsideraConsidera çções Finaisões Finais
Extensões:
• Melhorar a aparência do ambiente virtual, utilizando-se técnica de realismo para isso
• Permitir interação dos usuários com os objetos do AVD
• Melhorar o processo de comunicação do AVD, fazendouso de mais tipos de PDU’s do protocolo DIS
• Fazer com que o ambiente funcione em WAN´s
• Implantar técnicas de colisão entre usuários e, se existir, com objetos do cenário
• Melhorar a performance do AVD, como por exemplo, utilizando-se a técnica de Dead Reckoning
• Implementar a especificação do protocolo DIS, conforme a IEEE, na linguagem Object Pascal