UNIVERSIDADE FEDERAL DO SUL E SUDESTE DO …...RA - Realidade Aumentada. RM - Realidade Misturada....
Transcript of UNIVERSIDADE FEDERAL DO SUL E SUDESTE DO …...RA - Realidade Aumentada. RM - Realidade Misturada....
UNIVERSIDADE FEDERAL DO SUL E SUDESTE DO PARÁ
INSTITUTO DE GEOCIÊNCIAS E ENGENHARIAS
Faculdade de Computação e Engenharia Elétrica
Bacharelado em Sistemas de Informação
Visita Virtual Unifesspa: Ferramenta interativa para análise das
disposições internas e construções urbanas da Unifesspa utilizando
Realidade Aumentada e Realidade Misturada.
Matheus Willames Fernandes Pessoa
Marabá-PA
2018
Matheus Willames Fernandes Pessoa
Visita Virtual Unifesspa: Ferramenta interativa para análise das
disposições internas e construções urbanas da Unifesspa utilizando
Realidade Aumentada e Realidade Misturada.
Trabalho de Conclusão de Curso, apresentado
à Universidade Federal do Sul e Sudeste do
Pará, como parte dos requisitos necessários
para obtenção do Título de Bacharel em
Sistemas de Informação.
Orientador:
Prof. Me. Teófilo Augusto da Silva
Marabá-PA
2018
Dados Internacionais de Catalogação-na-Publicação (CIP) Biblioteca II da UNIFESSPA. CAMAR, Marabá, PA
Pessoa, Matheus Willames Fernandes Visita Virtual Unifesspa: ferramenta interativa para análise
das disposições internas e construções urbanas da Unifesspa utilizando realidade aumentada e realidade misturada / Matheus Willames Fernandes Pessoa; orientador, Teófilo Agusto da Silva. — 2018.
Trabalho de Conclusão de Curso (Graduação) - Universidade Federal do Sul e Sudeste do Pará, Campus Universitário de Marabá, Instituto de Geociências e Engenharias, Faculdade de Computação e Engenharia Elétrica, Curso de Bacharelado em Sistemas de Informação, Marabá, 2018.
1. Arquitetura – planejamento e tecnoligia – Marabá (PA). 2.Arquitetura e tecnologia. 3. Arquitetura pública . I. Silva, Teófilo Augusto da Silva, orient. II.da Universidade Federal do Sul e Sudeste do Pará. III. Título.
CDD: 22. ed.: 720.098115
Elaborado por Marcelo da Silva Gomes CRB2/1208
AGRADECIMENTOS
Aos meus pais, Iraide Fernandes e Antonio Willame e meus irmãos Thays Fernandes e
Thalysson Fernandes pelos ensinamentos, pelos esforços que tornaram possível a realização
deste sonho, pelo exemplo e dedicação e por todo o incentivo e apoio.
À rede de laboratórios Media Lab/BR por ter tido um papel tão importante na minha
trajetória universitária, pois oportunizou а janela que hoje vislumbro um horizonte superior,
por mе proporcionar o conhecimento nãо apenas racional, mаs а manifestação dо caráter е
interdisciplinaridade nо processo dе formação profissional.
Aos grandes amigos e amigas que a faculdade e a vida me proporcionaram: Abraão
Saraiva, Derek Correia, Dyovanna Lima, Marcos Antonio, Mariza Lira, Renato Sabino,
Hernando Prates, Junior Pantoja. Muito obrigado por todos os momentos compartilhados
juntos e certamente nossa amizade perdurará independentemente do caminho que cada qual
siga.
Ao membro da banca Prof. Me. Vitor Castro, profissional especialmente escolhido por
quem cultivo admiração e respeito.
Ao meu orientador Prof. Me. Teófilo Augusto e coorientador Prof. Me. Cláudio
Coutinho pelo exemplo acadêmico e amizade, terão оs meus eternos agradecimentos e
admiração.
Por fim, mas não menos importante, agradeço aos demais parentes e amigos que, à sua
maneira, contribuíram para esse sonho. Não conseguirei listar todos aqui, mas sentirei para
sempre gratidão e carinho.
RESUMO
O contínuo avanço tecnológico propicia a relação interdisciplinar entre arquitetura e
tecnologia, a qual resulta em diversas aplicações que surpreendem pela aplicabilidade, e o
emprego de tecnologias imersivas neste cenário é um exemplo dessa relação interdisciplinar.
À vista disso, o projeto “Visita Virtual Unifesspa”, criado no Media Lab/Unifesspa, surge nesse
contexto, com a filosofia de interatividade aplicado na arquitetura, utilizando-se da Realidade
Aumentada (RA) e Realidade Misturada (RM). Portanto, o projeto consiste em um software
experimental que faz uso da RA, permitindo ao público usar as mãos para manipular e controlar
objetos virtuais para alcançar uma experiência de RM. Dessa forma, o projeto se apresenta
como uma ferramenta interativa para proporcionar uma análise quanto à disposição das
construções urbanas dentro dos campi da Unifesspa, auxiliando os arquitetos a experimentarem
as construções sem ter de necessariamente construí-las previamente. Este projeto desempenha
um papel fundamental como instrumento no processo criativo do arquiteto, bem como para o
planejamento do projeto de construção. Após a conclusão do projeto, espera-se obter uma
ferramenta eficiente para auxiliar os envolvidos a minimizarem as dificuldades encontradas no
processo de planejamento do projeto arquitetônico.
Palavras-chave: Arquitetura, Realidade Aumentada, Realidade Misturada.
ABSTRACT
The continuous technological advance fosters the interdisciplinary relationship between
architecture and technology, which results in several applications that surprise by the
applicability, and the use of immersive technologies in this scenario is an example of this
interdisciplinary relationship. In view of this, the "Unifesspa Virtual Tour" project, created in
the Media Lab / Unifesspa, emerges in this context, with the philosophy of interactivity applied
in architecture, using Augmented Reality (RA) and Mixed Reality (RM). Therefore, the project
consists of experimental software that makes use of RA, allowing the public to use their hands
to manipulate and control virtual objects to achieve an MR experience. In this way, the project
presents itself as an interactive tool to provide an analysis of the layout of the urban
constructions inside the Unifesspa campuses, helping the architects to experience the
constructions without necessarily having to construct them previously. After completion of the
project, it is expected to obtain an efficient tool to help those involved to minimize the
difficulties encountered in the architectural design planning process.
Keywords: Architecture, Augmented Reality, Mixed Reality.
LISTA DE ILUSTRAÇÕES
Figura 1 - Ilustração do funcionamento do Hololens. 23
Figura 2 - Arranjo conceitual de uso do sistema Leap Motion em conjunto com RA. 27
Figura 3 - Aplicativo desenvolvido com o SDK Vuforia. 30
Figura 4 - Aplicativo experimental desenvolvido com o SDK ARCore. 31
Figura 5 - Funcionamento de uma aplicação utilizando o SDK Wikitude. 32
Figura 6 - Fluxo de funcionamento do SDK ARToolKit. 34
Figura 7 - Visualização de um modelo 3D a partir do SDK ARToolKit. 35
Figura 8 - Tela do aplicativo Visita Virtual Unifesspa em RV 38
Figura 9 - Aplicativo Visita Virtual Unifesspa AR 40
Figura 10 - Ilustração dos principais componentes da instalação 42
Figura 11 - Controlador Leap Motion 43
Figura 12 - Um gesto de círculo identificado pelo Leap Motion 44
Figura 13 - Processo de modelagem do prédio 4 pavimentos no software Blender 47
Figura 14 - Exibição do Visualizador de Diagnóstico 48
Figura 15 - Componentes básicos da interação 49
Figura 16 - Recursos naturais que o SDK Vuforia usa para detectar o alvo da imagem 51
Figura 17 - Teste realizado com o SDK vuforia materializando o prédio de 4 pavimentos em
Realidade Aumentada 52
Figura 18 - Caso de uso do sistema 57
Figura 19 - Diagrama de atividade do sistema 63
Figura 20 - Diagrama de sequência do sistema 64
Figura 21 - Tela inicial da aplicação de prototipagem. 68
Figura 22 - Interação com os objetos virtuais presente no cenário do sistema. 69
Figura 23 - Visão externa do sistema. 70
LISTA DE TABELAS
Tabela 1 - Comparativo entre as ferramentas.
Tabela 2 - Atores do caso de uso do sistema proposto.
Tabela 3 - Definição do elemento Abrir aplicação.
Tabela 4 - Definição do elemento Visualizar ambiente aumentado.
Tabela 5 - Definição do elemento Interagir com o ambiente.
Tabela 6 - Definição do elemento Salvar cenário.
Tabela 7 - Definição do elemento Fechar aplicação.
Tabela 8 - Cronograma de desenvolvimento do sistema.
LISTA DE ABREVIATURAS E SIGLAS
2D - Objetos e entidades com duas dimensões.
3D - Representações tridimensionais.
API - Interface de Programação de Aplicações.
CAD - Desenho assistido por computador.
CSS - Folha de Estilo em Cascatas.
HTML - Linguagem de Marcação de Hipertexto.
IA - Inteligência Artificial.
IDE - Ambiente de Desenvolvimento Integrado.
IMU - Unidade de medição inercial.
iOS - Sistema operacional móvel da Apple Inc.
QR - Quick Response.
RA - Realidade Aumentada.
RM - Realidade Misturada.
SDK - kit de desenvolvimento de software.
SINFRA - Secretaria de Infraestrutura.
TI - Tecnologia da informação
UML - Unified Modeling Language
VR - Realidade Virtual.
SUMÁRIO
1. INTRODUÇÃO……………………………………………………………………..14
1.1 Motivação…………………………………………………………………………..... 17
1.2 As três realidades……………………………………………………………………. 19
1.2.1 Realidade Aumentada (RA)………………………………………………. 19
1.2.1.1 Rastreamento (Marcadores)………………………………………… 21
1.2.1.2 Dispositivos de visualização…………………………………………. 22
1.2.2 Realidade Virtual (RV)…………………………………………………… 24
1.2.3 Realidade Misturada (RM)……………………………………………….. 24
2. MÉTODOS DE INTERAÇÃO EMPREGADAS EM APLICAÇÕES DE RA…... 25
2.1 Interação baseada em gestos……………………………………………. 26
2.2 Realidade Aumentada na Arquitetura…………………………………………….. 27
2.3 bibliotecas de RA……………………………………………………………………. 28
2.3.1 Vuforia……………………………………………………………... 29
2.3.2 ARCore…………………………………………………………….. 30
2.3.3 Wikitude…………………………………………………………… 32
2.3.4 ARToolKit…………………………………………………………. 33
2.3.5 Comparação……………………………………………………….. 36
3. DESENVOLVIMENTO DO APLICATIVO PROTÓTIPO………………………. 37
3.1. TRÊS FASES, TRÊS SOFTWARES……………………………………………… 37
3.1.1 Visita Virtual Unifesspa: RV……………………………………………... 38
3.1.2 Visita Virtual Unifesspa: RA……………………………………………... 39
3.1.3 Visita Virtual Unifesspa: RA e RM………………………………………. 41
3.2 Metodologia de desenvolvimento…………………………………………………… 41
3.2.1 Hardware………………………………………………………………….. 41
3.2.1.1 Leap Motion………………………………………………………42
3.2.2 Software……………………………………………………………………. 46
3.2.2.1 Unity……………………………………………………………… 46
3.2.2.2 Blender…………………………………………………………… 47
3.2.2.3 SDK Leap Motion……………………………………………….. 49
3.2.2.4 SDK Vuforia……………………………………………………... 51
3.3.3 Especificações do sistema proposto………………………………………. 53
3.3.3.1 Requisitos Funcionais…………………………………………… 55
3.3.3.2 Requisitos Não-funcionais………………………………………. 56
3.3.3.3 Caso de uso………………………………………………………. 58
3.3.3.4 Diagrama de atividades…………………………………………. 63
3.3.3.5 Diagrama de sequência…………………………………………. 65
3.3.3.6 Cronograma de desenvolvimento………………………………. 66
4. RESULTADOS……………………………………………………………………….. 66
4.1 Protótipo evolucionário………………………………………………….. 66
4.2 Trabalhos Futuros……………………………………………………….. 71
4.2.1 Documentação do software……………………………………….. 72
4.3.2 Questionário……………………………………………………….. 72
5.0 CONCLUSÃO……………………………………………………………………….. 73
6.0 REFERÊNCIAS……………………………………………………………………... 76
1. INTRODUÇÃO
A virtualização decorrente do uso dos computadores e a disseminação das redes digitais
provocaram intensas mudanças no processo de construção civil na última década, desde a
inserção da tecnologia do CAD até a utilização de maquetes digitais e virtuais. Na era do digital
em que vivemos, encontramo-nos inseridos em um processo de virtualização do espaço e de
sua transformação em fluxos de informações, em plena revolução da informação e assistimos
às transformações de paradigmas que afetam todos os âmbitos da sociedade contemporânea
(LÉVY, 1999, p.19). O autor (LÉVY, 1999, p. 17), tal virtualização trata-se da passagem do
atual para o virtual. Ressaltando que a virtualização não se trata de uma desrealização
empregada para significar a pura e simples ausência de existência, mas sim, caracterizada como
aquilo que existe em potência.
Um dos exemplos palpáveis é a incorporação dessas novas tecnologias à expressão
arquitetônica que trouxe como uma de suas consequências o estabelecimento de novas
mediações e novas experiências aos projetos.
“Os profundos e contínuos avanços tecnológicos, em todas as esferas da
sociedade contemporânea vêm proporcionando novas formas de produção,
novos padrões de vida, isto é, uma profunda transformação na reprodução da
própria sociedade, denunciando urgentes necessidades para a compreensão de
diversos fenômenos trazidos por estas transformações, e em especial os
responsáveis por novas características na configuração espacial." FIRMINO
(2006)
Diante disso, a utilização de Tecnologia da Informação (TI) no processo de concepção
arquitetônica, que incluem a criação, a estrutura e o design, proporciona maior produtividade
e eficiência de modo a otimizar tempo e processos, assim, os arquitetos contemporâneos são
encorajados a inserir métodos tecnológicos no seu cotidiano profissional.
Scriboni (2011) estabelece neste aspecto, que a inserção de novas tecnologias se faz
mutuamente necessário, com objetivo de evitar deficiência nos princípios básicos da
Arquitetura. Com base no que foi exposto, é possível afirmar que o setor reconhece plenamente
o potencial da tecnologia quando empregada de maneira correta.
Dentro deste contexto, a Realidade Aumentada (RA), que traz uma nova perspectiva
para a TI, pode ser adotada a serviço da indústria da construção civil. A RA pode ser definida
15
na forma mais simples como um método de aumentar o mundo físico-sensorial com
informações do mundo virtual, sendo projetada principalmente para melhorar os serviços em
muitos domínios de aplicação, como educação, treinamentos militares, manutenção industrial,
varejo, medicina. Haja vista que, segundo Kirner e Siscoutto (2007, p.17) esta tecnologia tem
potencialidades de acarretar um grande impacto no relacionamento das pessoas, através de
novas maneiras de realizar visualização, comunicação e interação com pessoas e informações
virtuais.
Conforme discutido, é possível constatar o quanto as experiências em RA são
promissoras, o que justifica seu emprego na Arquitetura. Todavia, observa-se que o uso da RA
para esta área ainda se concentra, principalmente, em ferramentas de marketing, criando
imagens tridimensionais que permitem que o cliente visualize uma versão de prototipagem
daquilo que se pretende adquirir como produto final. Isto posto, para usar a influência do
homem de forma mais eficiente, o planejamento dos trabalhos devem ser realizados com
competência e bastante antecedência. Normalmente, o planejamento é executado auxiliado por
computador com a ajuda de software de projetos 2D e 3D. Estes planos acerca do planejamento
geralmente são desenhados usando os computadores no ambiente virtual. Embora o
planejamento seja feito antecipadamente, as restrições práticas às vezes desperdiçam energia e
recursos. Isso mostra que algumas restrições práticas não podem ser importadas para o
computador, levando os planos a serem aproximados, mas não precisos, desta maneira, a RA
pode ser adotada para superar esses obstáculos.
No projeto Visita Virtual Unifesspa do laboratório Media Lab/Unifesspa, de forma
universal, utilizamos a RA em duas instâncias: uma com o objetivo de mostrar os prédios da
Unifesspa que estão em etapa de construção de modo que as pessoas se envolvam e conheçam
o prédio a ser inaugurado; e a outra como uma ferramenta de design para auxiliar os arquitetos.
Dessa maneira, tanto o público quanto os arquitetos da instituição são capazes de visualizar
virtualmente como será o prédio tangível e entender os layouts e espaços, profundidades e
dimensões.
Convém salientar que os softwares concebidos a partir do projeto Visita Virtual
geralmente eram expostos não somente com a finalidade de simples exibição, mas também
para experimentar o software perante ao público. Além de apresentações em reuniões com
colaboradores da SINFRA, algumas das exposições a fim de efetuar experimentações foi
realizada na Feira de Profissões da Unifesspa, evento que ocorreu na parte interna do Shopping
Pátio Marabá, em 2017, onde foi possível expor os projetos tanto para a comunidade acadêmica
como para futuros ingressantes. Uma das apresentações conceituais ocorreram no III Simpósio
16
de Iniciação Científica da Unifesspa, que aconteceu nos dias 14 e 15 de setembro de 2017, no
campus de Marabá e, bem como, no Simpósio Internacional de Inovação em Mídias Interativas
(SIIMI), que ocorreu entre os dias 09 e 11 de maio de 2018, na Universidade Federal de Goiás
(UFG), em Goiânia.
O principal objetivo deste estudo, que apresenta uma visão geral de um projeto em
andamento, é desenvolver uma ferramenta de cunho inovador, fazendo com que os
trabalhadores da construção civil e da arquitetura possam visualizar virtualmente um ambiente
a ser construído e que possibilite os referidos profissionais o poder de manipulação sobre os
artefatos virtuais através gestos com as mãos, de modo a possibilitar experimentação quanto à
disposição dos prédios além de executar e supervisionar todas as fases do planejamento de
forma mais eficiente. A este respeito, o foco inicial trata-se do desenvolvimento de um
protótipo evolucionário e da idealização de um cenário fictício virtual fidedigno ao Campus III
da Universidade Federal do Sul e Sudeste do Pará (Unifesspa) para compor o cenário do
protótipo.
Desse modo, com o emprego da RA é possível mapear os problemas apenas
visualizando o ambiente virtual e resolvê-los antes da etapa de construção. Por consequência,
isso também ajuda os profissionais a planejar os caminhos alternativos muito antes da etapa de
execução, considerando a maioria dos eventos indesejáveis que geralmente ocorrem durante o
processo de construção. De acordo com Tori e Kirner (2006), a incorporação dessa tecnologia
permite ao usuário retratar e interagir com situações imaginárias, como os cenários de ficção,
envolvendo objetos reais e virtuais estáticos e em movimento. Permitem também, reproduzir
com fidelidade ambientes da vida real de forma que o usuário possa entrar nesses ambientes e
interagir com seus recursos de forma natural, usando as mãos e eventualmente outros
comandos.
Assim sendo, de modo geral, o projeto trata-se de uma instalação interativa
experimental que usa uma câmera, um projetor, um sensor somatossensorial que permite o
público controlar objetos virtuais com as mãos para alcançar uma experiência de RM. Isso é
possível mediante captura de vídeo do espaço de instalação com uma câmera, que utiliza
métodos de RA sobre os elementos do cenário 3D os quais serão exibidos no vídeo e projetadas
em tempo real via projetor.
Portanto, à face do exposto, o projeto possui potencialidade de desempenhar um papel
fundamental como instrumento no processo criativo do arquiteto, bem como para o
planejamento e desenvolvimento do projeto de construção. Assim, levando em consideração
que a RA auxilia de forma bastante eficiente quando aplicada à arquitetura, tanto para estudo
17
e análise inicial do projeto, quanto para exposição, onde um modelo mais completo é usado
para apresentar as características do projeto final. Em contraste, a RA pode e tem sido
explorada na criação e no desenvolvimento de sistemas interativos para arquitetura,
considerado um novo recurso que interfere na relação homem-máquina, seja nas formas de
interação ou na ampliação da percepção.
O produto final desse projeto trata-se de um aplicativo que visa auxiliar especialmente
arquitetos, engenheiros civis, desenvolvedores de games, produtores de filmes e demais
profissionais que trabalham com esse ramo, a experimentar possíveis construções e outros
acessórios urbanísticos antes de construí-los, ajudando os envolvidos a ultrapassarem as
dificuldades encontradas no processo de planejamento do projeto arquitetônico.
1.1. MOTIVAÇÃO
A RA tornou-se popular na pesquisa acadêmica e de forma distribuída tem exigido
estudos e discussões a respeito dos fatores que podem ser levados em consideração para atingir
o sucesso no desenvolvimento de tais tipos de ambiente (KIRNER; SISCOUTTO, 2007),
ocasionando, assim, o enriquecimento dessa linha de estudo.
Autores como Rodello e Brega (2011), afirmam que isso se deve principalmente por
conta da facilidade de interação proporcionada pela RA, pois para sua concretização, na
atualidade, não é necessário algum dispositivo especial, bem como, há a possibilidade do
usuário utilizar o próprio corpo para interação. Sendo este considerado um dos pontos fortes
da RA, tendo em vista que a RV em diversas vezes se faz necessário o uso de dispositivos
especiais.
A capacidade de visualizar construções praticamente antes de usar os recursos reais
para construí-los tem sido de principal interesse na Arquitetura e Engenharia Civil durante um
longo período de tempo. Isto foi alcançado parcialmente através da aplicação de software de
modelagem 3D e da RV.
Mesmo que as aplicações mais recentes, até mesmo os que utilizam RV, ajudem a
projetar e desenhar os planos e ideais, a questão da visualização prévia do ambiente de forma
mais detalhada e realista ainda surge como necessidade. Isso se deve porque os planejamentos
que são realizados no computador às vezes não combinam com as aplicações nas práticas reais,
confirmando que é relativamente complexo trazer as experiências práticas do mundo físico-
sensorial para o mundo virtual. Em contraste, alguns usuários têm dificuldade em visualizar
um produto final a partir de um conjunto de desenhos 2D e, embora um modelo 3D possa ajudar
18
a visualizar o produto em si, ele deixa a desejar pelo fato de não disponibilizar visualização
detalhada ao nível RA.
Portanto, um desafio para a maioria dos arquitetos é comunicar conceitos e visões para
um ambiente, enquanto isso é possível através de planos e desenhos, para alguns pode ser difícil
interpretar um desenho para construir uma imagem do edifício meramente imaginária e
hipotética. Entretanto, ao sobrepor informações digitais em materiais físicos, ou seja, aplicando
uma câmera sobre um marcador, o software mostrará uma representação virtual da construção
na tela, permitindo que os usuários possam visualizar e interagir com objetos 3D’s, as
implicações disso para a construção são diversas, pois isso significa que a eficiência de
visualizar e projetar edifícios e estruturas pode ser feita de maneira muito eficaz, inclusive,
podendo auxiliar especialmente os arquitetos, construtores e designers de interiores para
apresentar seus projetos de construção.
A intenção original desta pesquisa era a de desenvolver um software interativo baseado
em RA e RM, para visualização e manipulação de objetos virtuais tridimensionais voltados à
análise urbanística e ou arquitetônica. A partir disso, pretendeu-se investigar técnicas de
interação em sistemas de RA, com enfoque nas técnicas através de gestos com as mãos,
concretizada a partir do sensor Leap Motion. Com base nos resultados da pesquisa bibliográfica
e na elaboração de um protocolo de desenvolvimento, tínhamos como resultado final a
elaboração de um protótipo da aplicação final que permite a manipulação de objetos virtuais
de forma palpável virtual, possibilitando assim efetuar operações de translação, rotação e escala
nos edifícios e objetos urbanísticos que compõem o cenário virtual do Campus III da Unifesspa,
cenário previamente escolhido para empregar o software considerando-se seu estado em pleno
desenvolvimento, de modo a experimentar as disposições dos elementos, corroborando para a
eficiência na etapa de planejamento do espaço.
Portanto, a execução de tal desenvolvimento resultará numa aplicação para desktop
desenvolvida a partir da plataforma Unity 3D, fazendo uso dos SDK’s Vuforia e Leap Motion,
devidamente detalhado ao longo deste trabalho, para que seja possível visualizar os artefatos
em RA e para que o usuário seja capaz de interagir com recursos disponíveis no ambiente
virtual sem a necessidade de acoplar qualquer aparato no corpo.
19
1.2. As três realidades
1.2.1. Realidade Aumentada (RA)
Para Kirner e Kirner (2011), embora a RA seja uma tecnologia que consolidou-se nos
últimos anos, suas origens datam da década de 1960, com experiências digitalmente
processadas e “aumentadas” pela adição de gráficos criados por computador. Em abordagem
cronológica, o conceito mais próximo de RA, segundo Kirner e Kirner (2011), foi criado na
ocasião em que nomes como Ivan Sutherland e Morton Heilig criaram um dispositivo chamado
Head Mounted Display (HMD) cujo objetivo consistia na concatenação da vida real com o
digital. Portanto, o sistema ficou intitulado como marco inicial da RA.
Por limitação dos recursos tecnológicos da época o dispositivo não possuía uma boa
qualidade de imagens e problemas como esse influenciaram negativamente para a
popularização da tecnologia. É importante ressaltar que não há um consenso em relação ao
criador do termo “Realidade Aumentada”, haja vista que a criação costuma ser atribuída a
diversos pioneiros que desenvolveram soluções deste âmbito.
As décadas de 1980 e 1990 foram extremamente importantes para a popularização da
RA, pois contou com diversos estudos na área militar que resultaram em protótipos científicos
para explorar a tecnologia. Assim, a área militar fortificou o desenvolvimento de ferramentas
desse domínio, conforme expõe Kirner e Kirner:
“No entanto, só na década de 1980 é que surgiu o primeiro projeto
de realidade aumentada, desenvolvido pela Força Aérea Americana,
consistindo em um simulador de cockpit de avião, com visão ótica
direta, misturando elementos virtuais com o ambiente físico do
usuário.” (KIRNER; KIRNER, 2011)
Depois disso, surgiram vários frameworks para auxiliar no desenvolvimento de RA,
essa ferramenta abstrai a complexidade de interligar todos os artefatos e processos necessário
para efetivar uma experiência com integração de informações virtuais com o mundo físico-
sensorial. Como o ARToolKit, por exemplo, criado em 1999, o framework open source baseado
em rastreamento por vídeo, permitiu que programadores desenvolvessem aplicações com
experiência em RA de forma mais descomplicada, tornando-a mais acessível e fomentando o
interesse mundial pela área (KIRNER; KIRNER, 2011). Cabe destacar que os consumidores
só obtiveram acesso a RA de forma ampla com a disseminação dos smartphones em meados
20
de 2000, desde então começaram a surgir os primeiros anseios de desenvolver aplicativos de
RA para dispositivos móveis de modo a efetivar a propagação da tecnologia.
À vista disso, Azuma (1997) definiu a RA como uma técnica que se caracteriza a partir
de três fundamentos básicos: (1) concatenar o real com o virtual, (2) possibilidade de
interatividade em tempo real e (3) ajuste de artefatos virtuais no cenário. Diante disso, a RA se
caracteriza como uma técnica de sobreposição de artefatos virtuais na visualização do mundo
físico-sensorial, fazendo com que objetos reais e virtuais coexistam em um mesmo espaço do
mundo físico-sensorial, utilizando-se para tal dispositivos tecnológicos para mediar a relação
com o interator.
RA portanto trata-se de um software que lê as informações do mundo físico-sensorial
para, a partir disso, incrementá-la com componentes virtuais, permitindo por meio de vídeo a
mesclagem de um ambiente real a partir da materialização de objetos bi e tridimensionais,
vídeos ou músicas, digitalmente processados e aumentados pela adição de gráficos criados por
computador (KIRNER; KIRNER, 2011, p. 16). Consolidando a definição da tecnologia, outra
definição mais específica é:
“De outra maneira, realidade aumentada pode ser definida como o
enriquecimento do mundo real com informações virtuais (imagens dinâmicas,
sons espaciais, sensações hápticas) geradas por computador em tempo real e
devidamente posicionadas no espaço 3D, percebidas através de dispositivos
tecnológicos.” (KIRNER, 2009).
Na visão de KIRNER (2009), na maioria das vezes é possível visualizar este cenário de
duas maneiras distintas, mediada por um óculos inteligente ou através de uma maneira mais
popular que se trata da utilização de um dispositivo móvel (como smartphones e tablets que
possuem câmera de vídeo integrada). Portanto, o óculos é equipado com um dispositivo tátil e
um prisma por onde as imagens da interface se apresentam como uma camada extra sobre a
visualização normal do mundo, ou seja, através de RA é inserido objetos virtuais no ambiente
físico-sensorial e que o usuário permanece visualizando.
A evolução tecnológica forneceu como fruto do seu avanço maior capacidade de
processamento computacional, avançados sensores, câmeras de alta qualidade, computação
gráfica, dentre outros parâmetros que a RA faz uso, de modo que os processos e ferramentas
convergiram para a capacidade de desenvolvimento de ambientes em RA mais robustos, como
afirma Kirner (2009). Dessa forma, iniciou-se o desenvolvimento de soluções mais eficientes
e realista, abrangendo várias áreas de aplicação, como ressalta Machado (2007), quanto ao
21
emprego da RA em áreas como Cultura, Game, Educação, Medicina, Marketing, onde destaca-
se a Medicina, área na qual há diversas aplicações sendo utilizadas para avançar cada vez mais
no tratamento de pacientes, além de ser bastante útil para educação, simulações, treinamento e
serious game (MACHADO, 2007)1.
Outro campo de atuação da RA bastante promissor é a arquitetura, onde a RA é
comumente empregada para visualizar edifícios e ambientes internos, permitindo um modelo
tridimensional de uma estrutura gerada ser experimentada antes da construção do edifício.
1.2.1.1 Rastreamento (Marcadores)
Os marcadores são recursos físicos que estão no mundo físico-sensorial e que tem uma
imagem específica previamente programada para ser identificada posteriormente, um exemplo
de marcador muito comum é o QRCode, uma espécie de código de barras bidimensional que
pode ser escaneado usando um dispositivo equipados com câmera (KIRNER; SISCOUTO,
2007).
Neste contexto, Lamb (2009) define marcador como:
“O marcador é um quadrado preto em fundo branco, que é reconhecido na
chamada da função arDetectMarker , cujos parâmetros de entrada são: um
ponteiro para os pixels da imagem de entrada e um limiar para distinguir o
fundo de objetos. A saída ocorre passando-se duas referências: um ponteiro
para uma estrutura, que conterá dados sobre o marcador reconhecido, e um
outro ponteiro para um valor inteiro que receberá o número que identifica o
marcador reconhecido” (Lamb, 2009)
Além do mais, Lamb (2009) ressalta que há dois tipos de marcadores, o fiducial, quando
possui um padrão de módulos com gráficos ou pixels preto e branco ou do tipo natural, definido
por uma imagem fotográfica com representação visual de algo, como por exemplo uma
paisagem, uma pintura, um desenho. Dessa forma, a câmera do sistema de RA é responsável
por localizar um padrão visual com o objetivo de identificar o marcador físico-sensorial como
referência para inserir o modelo virtual para visualização.
1 “A medicina é uma das áreas que mais demandaram o uso de realidade virtual e aumentada em educação,
treinamento, diagnóstico, tratamento e simulação de cirurgia. Realidade virtual e realidade aumentada, pelas
suas características de visualização 3D e de interação em tempo real, permitem a realização de aplicações
médicas inovadoras, que antes não podiam ser realizadas.” (MACHADO, 2007)
22
1.2.1.2 Dispositivos de visualização
Diferentemente da RV em que o instrumento utilizado aplica as percepções do usuário
a um ambiente imersivo, na RA o equipamento deve fornecer uma visualização em camada
adicionando informações visuais à objetos da realidade físico-sensorial. Para tanto, existem
diversos dispositivos cuja capacidade tecnológica permite este tipo de interação, todos
advindos do computador pessoal, mas como já foi frisado anteriormente, a sua popularização
vem do smartphone.
Assim, como aponta Kirner e Kirner (2011), o método mais popular e acessível
atualmente, trata-se da utilização dos dispositivos móveis para efetivar a experiência de RA.
“A incorporação de recursos avançados no ambiente de realidade aumentada
resulta em uma potencialização do ambiente físico com aplicações de fácil
utilização, explorando interações multimodais como voz, gestos, ações
tangíveis, etc. O avanço tecnológico já vem naturalmente agregando alguns
desses recursos em dispositivos como telefones celulares e tablets PCs.”
(KIRNER; KIRNER, 2011, p. 17)
As empresas do ramo de desenvolvimento de software como Google e Qualcomm3
disponibilizam os Software Development Kits (SDKs), plataformas para auxiliar o
desenvolvimento de aplicações com experiências de RA em smartphones e tablets, que elas
mesmas também estão envolvidas na produção.
Apesar da popularização dos uso de smartphone ter colaborado na popularização do
RA, esses dispositivos tendem a não ser tão imersivos, ou serem dependentes de condições
limitantes do ambiente. Para sanar essa problemática, algumas empresas desenvolveram
dispositivos que dispensam o uso direto do celular, e se caracterizam por serem óculos vestíveis
e equipados com processadores específicos para virtualização de objetos, especificando assim
o uso da RA para questões ainda mais complexas como o ensino ou mesmo automação de
residências.
Um dispositivo mais avançado trata-se do Hololens, desenvolvido pela Microsoft, o
dispositivo projeta objetos virtuais no ambiente real onde é utilizado. Os artefatos 3D, exibidos
em uma pequena tela transluzente à frente dos olhos, permitindo experiências imersivas e
interativas.
23
Figura 1 - Ilustração do funcionamento do Hololens.
Fonte: Sítio da Microsoft na Internet. Disponível em: <<https://www.microsoft.com/en-us
/hololens/why-hololens>>. Acesso em: 10 jul 2018.
Como pode ser visualizado na Figura 1, diferente dos modelos de óculos de RV, onde
o usuário permanece totalmente imerso no ambiente virtual, o Hololens não transporta as
pessoas para um universo paralelo, tudo acontece no mundo físico-sensorial com a
concatenação de artefatos virtuais. Além disso, o dispositivo possui acessa à internet e possui
interação atendendo aos comandos por gestos e voz.
Diferentemente dos dispositivos móveis que utilizam marcadores físicos para adicionar
os modelos virtuais, no caso do HoloLens a RA se efetiva sem marcadores, o dispositivo tem
sensores que conseguem mapear o ambiente em que está inserido detectando superfícies. Seu
funcionamento consiste na procura por clusters de pontos que possam compor uma superfície
e com isso define e disponibiliza essas superfícies como plano, conseguindo distinguir e definir
os limites desses planos. Com essas informações, o usuário pode inserir objetos sobre esses
planos e, consequentemente, em superfícies no mundo físico-sensorial.
24
1.2.2. Realidade Virtual (RV)
Neste ponto, é importante também caracterizar a RV, uma vez que constantemente
confunde-se os limites da mesma com a RA ou mesmo com a realidade misturada (RM). Dessa
forma, alguns autores como Kirner e Kirner (2011), definem ambas tecnologias (RA e RV)
como:
“Diferentemente da realidade virtual, que procura transportar o usuário para
o ambiente virtual, a realidade aumentada mantém o usuário no seu ambiente
físico e transporta o ambiente virtual para o espaço do usuário, por meio de
algum dispositivo tecnológico. Assim, a interação do usuário com os
elementos virtuais ocorre de maneira natural e intuitiva, sem necessidade de
adaptação ou treinamento.” (KIRNER; KIRNER, 2011).
Sendo assim, a sensação de RV é alcançada usando determinados equipamentos de
imersão ou utilizando o próprio dispositivos do usuário, sendo bastante utilizada tanto para
criar e melhorar uma realidade artificial para jogos quanto para desenvolver sistema que
objetiva o treinamento para ambientes da vida real criando uma simulação onde os usuários
possam praticar antecipadamente (serious games). A RA têm origens da RV da qual herda
algumas características como, por exemplo, a interatividade e apresentação de modelos
tridimensionais, assim é possível considerar a RA uma tecnologia adjacente à RV (KIRNER,
2009). Isto posto, teoricamente a RA se beneficia das eventuais deficiências presentes na RV
para se popularizar e mostrar o que possui de melhor, seguindo a concepção de preservar as
melhores características que existem na outra tecnologia buscando reduzir as desvantagens
através de mecanismos mais eficazes. Com isso, a RA mantém foco na integração de artefatos
virtuais ao ambiente real, diferentemente da RV, que, de modo inverso, busca a inserção total
do usuário em um ambiente totalmente virtual, não tendo a possibilidade de recriar um cenário
virtual à parte.
1.2.3. Realidade Misturada (RM)
Como vimos nos itens acima, a RA fornece a experiência de permitir que elementos
virtuais sobreponham a visão do mundo físico-sensorial, por outro lado, a RV fornece a
experiência de tornar o usuário totalmente imerso na virtualidade, sobrepondo a visão do
mundo físico-sensorial. Diante disso, o que há entre os dois extremos trata-se da Realidade
Misturada (RM), às vezes mencionada como realidade híbrida, que se caracteriza como a fusão
25
dos mundos real e virtual para produzir novos ambientes e visualizações onde objetos físicos e
digitais coexistem e interagem em tempo real. Em definição:
“Embora o termo realidade misturada seja pouco utilizado, ele define uma
interface baseada na sobreposição de informações virtuais geradas por
computador (imagens dinâmicas, sons espaciais e sensações hápticas) com o
ambiente físico do usuário, percebida através de dispositivos tecnológicos.
Quando as informações virtuais são trazidas para o espaço físico do usuário,
que usa suas interações naturais, tem-se a realidade aumentada…” (KIRNER;
KIRNER, 2011)
E, ainda: “a realidade misturada pode ser definida como a sobreposição de objetos
virtuais tridimensionais gerados por computador com o ambiente físico, mostrada ao usuário,
com o apoio de algum dispositivo tecnológico, em tempo real.” (KIRNER e TORI, 2006, p.
23). Com base nisso, no ambiente de realidade mista do projeto interações com objetos virtuais
possibilitam modificações em objetos do mundo físico-sensorial e vice-versa.
Ao contrário de visualizar um mundo inteiramente virtual (RV), os objetos virtuais são
inseridos no espaço do mundo físico-sensorial de um usuário e aumentam seu ambiente real,
fazendo com que as interações virtuais pareçam tangível. Essas interações apresentam
comportamentos naturais de interação, como objetos se tornando maiores à medida que o
usuário se aproxima ou de alteração de perspectivas à medida que o usuário se move em torno
de um objeto.
2. MÉTODOS DE INTERAÇÃO EMPREGADAS EM APLICAÇÕES DE RA
O emprego da RA apresentam novos desafios acerca do desenvolvimento de novos
métodos de interação entre seres humanos e dispositivos. Dispositivos de RA e RV são
projetados principalmente para serem usados sem qualquer interface tangível (KIRNER;
KIRNER, 2009). Como tal, em um cenário típico de RA, é possível visualizar o ambiente
aumentado e interagir a partir de comandos tangíveis, como voz e gestos.
Sobre os métodos de interação aplicados em ambientes de RA, Kirner (2009) afirma
que não há consenso de como elas devem ser empregadas, tendo em vista que cada projeto
possui suas heterogeneidade, com isso basta apenas que o desenvolvedor selecione a técnica
que melhor atenderá a uma gama de necessidades do sistema sabendo que tais técnicas podem
não atender à todas as necessidades, visto que cada projeto estabelece padrões e possui
26
necessidades específicas. No entanto, Broll (2005) classifica as tipos de interação que poderiam
ser aplicados em ambientes em RA, como: (1) Interação espacial; (2) Interação baseada em
comandos; (3) Interação por controle virtual; (4) Interação por controle físico.
A particularidade das formas de interação com os artefatos virtuais podem ser
percebidas ao se verificar as tecnologias necessárias para que haja interação entre o usuário e
o sistema e a forma na qual ocorre a entrada de dados para a interpretação da máquina e inserção
das referências virtuais ao contexto físico.
Assim, na técnica de Interação espacial, acontece a manipulação dos parâmetros
espaciais dos objetos físicos, geralmente, por meio de interfaces palpáveis que possibilitam
interatividade com os objetos. Por outro lado, a forma de interação baseada em comandos, a
inserção de informações se dá através do identificação de gestos ou alguma outra forma de
comando, como a voz, que podem representar instruções a serem interpretadas, o sistema em
questão faz uso justamente dessa interação onde os usuários podem interagir com o sistema a
partir das mãos utilizando um sensor somatossensorial (BROLL, 2005).
Já a interação por controle virtual refere-se à possibilidade de manipulação de símbolos
gráficos tridimensionais expostos ao usuário e que permitem a comunicação com a máquina
(BROLL, 2005). Finalmente, na interação por controle físico, a interação humano-computador
se efetiva através de componentes físicos ou painéis de controle que fornece acesso tanto ao
ambiente físico quanto aos objetos virtualizados.
2.1 Interação baseada em gestos
As Interfaces Baseadas em Gestos são um subtipo da Interação por Comando, mas
capaz de captar às gesticulações dos usuários, traduzindo os movimentos em funcionalidades.
Nesse contexto, a interação ocorre a partir dos movimentos das mãos que possui o objetivo de
desempenhar tarefas dentro do sistema.
Para tanto, é utilizado um instrumento imersor baseado em sensores que mediam
sistema e usuário, no caso deste trabalho foi utilizado um sensor somatossensorial chamado
Leap Motion cujas ficha técnica apresentamos no Item 3.3.2.1.
A FIGURA 2, apresenta o projeto arquitetônico no qual o sensor pode ser empregado
fazendo uso de interação baseada em gestos. Dessa forma, o sistema faz uso do sensor que é
conectado no computador, via usb, permitindo que o público movimente o modelo virtual da
edificação por meio de gestos de suas mãos. Em tais ocasiões, os envolvidos interagem com os
modelos apresentados de uma forma mais espontânea, haja vista a facilidade de visualização e
27
interpretação oferecidas pela tecnologia RA, de modo a possibilitar melhor entendimento das
propostas acerca do projeto em desenvolvimento e, em consequência, o planejamento do
projeto torna-se mais produtivo.
Figura 2 - Arranjo conceitual de uso do sistema Leap Motion em conjunto com RA.
Fonte: Autoria própria.
Com esses parâmetros, é possível afirmar que a interação a partir de gestos é
caracterizada como uma experiência mais intuitiva e divertida do ponto de vista do usuário,
possuindo o objetivo primordial a interação humano-computador de forma mais natural,
utilizando gestos que são usados intuitivamente no cotidiano para conceber interação.
2.2 Realidade Aumentada na Arquitetura
Atualmente, é difícil imaginar a execução e planejamento de arquitetura e construção
civil apenas com métodos analógicos, tendo as ferramentas digitais se inserido de maneira a
modificar a relação do arquiteto com o design, bem como do cliente poder visualizar a criação
do arquiteto. Neste cenário, a RA em projetos de construção e arquitetura geralmente envolve
apresentar um modelo 3D de um projeto proposto em um espaço existente usando dispositivos
móveis e o modelo tridimensional do referido projeto. Com isso, a capacidade de visualizar
28
estes projetos em RA traz vantagens significativas para aqueles que trabalham na construção,
pois assim podem assistir suas visões e idéias ganhando vida mais cedo comparado ao ciclo de
vida da construção. Isso significa que potenciais riscos ou problemas podem ser identificados
anteriormente, e os possíveis erros serão menos propensos a passar pela fase de planejamento
e chegar até a execução do projeto.
Todavia, esta tecnologia possui vantagens de utilização que vão além da visualização
de elementos tridimensionais, à vista disso, essa tecnologia pode ser utilizada para revisão de
construabilidade, levantamento topográfico, planejamento arquitetônico, para determinar a
localização de tubulações subterrâneas e afins, planejamento de carga térmica predial,
mecânica do solo, planejamento de setores de acessibilidade, além de ser utilizado como uma
ferramenta de visualização onde um usuário pode visualizar o cenário virtual projetado com os
edifícios e artefatos urbanísticos que correspondem ao ambiente.
2.3 Bibliotecas (SDK) para RA
Para desenvolver produtos em RA, são utilizadas quatro principais SDKs disponíveis
atualmente no mercado, são eles:
● Vuforia
● ARcore
● Wikitude.
● ARToolKit
Para escolher entre eles, existem vários critérios importantes para os quais é necessário
ter atenção: Linguagem aplicada, dispositivos atendidos, número de polígonos atingidos pela
renderização das imagens, recursos de interatividade, além de questões financeiras, suporte,
acesso ao código fonte. Por essa razão, a análise das bibliotecas foi realizada com base nos
principais critérios a seguir:
1. Possui código aberto?
2. O framework é gratuito?
3. Pode ser comercializado?
4. Pode ser incorporado em um aplicativo nativo para as plataformas móveis?
5. Disponibilidade de funcionalidades equivalentes em diferentes plataformas?
29
6. Há documentação disponível?
7. Existe uma comunidade de desenvolvimento?
8. Utiliza marcador?
9. Identifica Superfície?
10. Possui estimativa de luz?
11. Compatível com a engine Unity?
2.3.1 Vuforia
Vuforia é um SDK para desenvolvimento de RA direcionada para as plataformas iOS e
Android (VUFORIA, 2018). Atualmente o Vuforia é o framework mais popular para o
desenvolvimento de aplicativos AR em uma ampla gama de dispositivos, pois apresenta um
conjunto relevante de funções e está disponível gratuitamente, mas com marcas d'água Vuforia
e algumas funcionalidades limitadas. Apesar disso, funções adicionais que liberam todo o
potencial deste SDK estão disponíveis sob licenças comerciais.
Desenvolvido pela Qualcomm, o método de RA estabelecido pelo Vuforia funciona
fazendo uso de marcador, entretanto, na última versão do SDK foi disponibilizada o recurso
Vuforia Ground Plane, que permite incorporar conteúdo virtual a superfícies horizontais em
ambientes do cotidiano, libertando os projetos da necessidade de utilizar o marcador. Por
enquanto esse recurso está disponível apenas para dispositivos com sistema operacional iOS
habilitados para ARKit na plataforma Unity 2017.3.
Para fins de ilustração foi desenvolvido um software utilizando os recursos do Vuforia
com o propósito de oferecer uma visão geral das funcionalidades oferecidas pelo SDK, como
prova de conceito para utilização do framework na etapa de desenvolvimento do projeto
(Figura 3).
30
Figura 3 - Aplicativo experimental desenvolvido com o SDK Vuforia.
Fonte: Autoria própria.
O Vuforia atualmente encontra-se na versão 7.1 que inclui uma série de melhorias com
base no feedback dos desenvolvedores que compõe a comunidade. As principais característica
da ferramenta diz respeito ao reconhecimento de modelo 2D e 3D e além disso, o Vuforia
garante o uso de diferentes imagens como marcador e utiliza sistemas em nuvem para
centralizar todo o serviço relacionado à conta do desenvolvedor.
Segundo Vuforia (2018) mais de 50.000 aplicativos desenvolvidos com o SDK Vuforia
foram publicados nos principais serviços de distribuição digital de aplicativos App Store e no
Google Play. O Vuforia também dispõe de uma comunidade ativa de desenvolvedores com
mais de 375.000 desenvolvedores registrados e mais de 45.000 projetos em desenvolvimento,
segundo a empresa. Logo, os dados mencionados comprovam a capacidade da ferramenta.
2.3.2 ARCore
O ARCore é uma tentativa da Google para assumir o papel de destaque em tecnologias
de interação em RA e viabiliza ao smartphone a capacidade de detectar o ambiente,
compreender o cenário e interagir a partir de concatenação com informações virtuais integradas
ao mundo físico-sensorial. A proposta da plataforma é justamente diminuir o nível de
complexidade no desenvolvimento de RA, proporcionando que desenvolvedores menos
31
experientes criem e publiquem aplicativos em RA na Play Store (serviço de distribuição digital
de aplicativos operada pela Google).
O funcionamento do ARCore resume-se em três características principais:
Rastreamento de Superfícies, Rastreamento de Movimentos e Estimativa de luz. O
Rastreamento de Superfícies trata-se da funcionalidade que permite a identificação de
superfícies planas horizontais para que seja inseridos modelos tridimensionais. O de
Movimentos é responsável por usar a câmera do smartphone para identificar pontos e os dados
do sensor de Unidade de medição inercial (IMU), também chamado de giroscópio. Dessa
forma, para o ARCore determinar a posição e a orientação do telefone conforme o dispositivo
se move e consequentemente, o usuário. Assim, de modo a tornar os objetos virtuais
posicionados com precisão nas superfícies identificadas. Já a Estimativa de Luz corresponde a
observação da luz ambiente de modo a possibilitar a mesma iluminação para os objetos virtuais
aumentados de maneiras que correspondam a iluminação do ambiente, tornando sua aparência
ainda mais realista.
Para identificar as potencialidades da ferramenta foi desenvolvido uma aplicação que
comporta o funcionamento básico do ARCore, lidando com identificação de superfície para a
partir disso exibir vários modelos 3D’s ao tocar na tela do smartphone. Dessa forma, o
resultado final pode ser visto na Figura 4, logo abaixo.
Figura 4 - Aplicativo desenvolvido com o SDK ARcore.
Fonte: Autoria própria.
32
O aplicativo foi desenvolvido na engine Unity e testado no smartphone Samsung
Galaxy S7, com Android 7.0. O ARCore foi projetado para funcionar em uma ampla variedade
de smartphone com sistema operacional Android, especificamente na versão do Android 7.0
(Nougat) em diante. Portanto, este SDK exige um sistema de calibração e configuração
personalizada para cada dispositivo, o que justifica a limitação para os demais modelos de
smartphones.
2.3.3 Wikitude
O Wikitude é um SDK multiplataforma para o desenvolvimento de aplicativo em RA,
oferecendo os insumos necessários para criar experiências de RA com base em localização,
marcador ou sem marcadores (SOUZA; BOTEGA, 2013). O SDK da Wikitude porta vários
recursos convenientes que simplificam o trabalho do desenvolvedor, além disto, o Wikitude
tem suas Interface de programação de aplicações (APIs) disponíveis para desenvolvedores usá-
las na criação de novos projetos ou até mesmo para implementar recursos parciais do Wikitude
em seus próprios projetos. A Figura 5 abaixo exibe o funcionamento de uma aplicação
desenvolvida a partir do Wikitude.
Figura 5 - Funcionamento de uma aplicação utilizando o SDK Wikitude.
Fonte: WikitudeBlog (2017) Disponível em: <<https://www.wikitude.com/blog/>>. Acesso
em: 02 jul 2018.
33
A API do Wikitude disponível para desenvolvedores possui integração de linguagens
multiplataforma como: Javascript, HTML5 e CSS3. No entanto, até o momento, suporta
apenas as plataformas iOS, Android e BlackBerry. O SDK além de dispor de integração com a
engine Unity, também pode ser integrado com outros frameworks de desenvolvimento, como
Xamarin, Cordova e Appcelerator Titanium.
Apesar de existir um versão gratuita disponível do SDK para projetos sem fins
lucrativos, o framework não é gratuito e não é open source. Com isso, na versão gratuita há
uma animação de inicialização com a marca d'água do Wikitude, além de existir um logotipo
na visão da câmera, o que reflete em possíveis prejuízo de visualização do ambiente em RA
para usuário mais rígidos. Diante dessas circunstâncias, para contornar essa problemática é
necessário adquirir uma licença paga, cujos valores podem variar de acordo com a quantidade
de distribuições das aplicações desenvolvidas pela empresa.
O principal fator negativo desta ferramenta refere-se à manipulação de objetos 3D.
Embora esse recurso já esteja disponível em outras ferramentas da mesma categoria, a
manipulação 3D não está disponível no Wikitude. Ademais, outro fator determinante diz
respeito à ausência de comunidade de desenvolvedores, pois embora o desenvolvimento de
aplicações utilizando o Wikitude siga ativamente, não há comunidade para nortear e auxiliar os
desenvolvedores iniciantes.
Outra observação pertinente refere-se ao alto consumo de bateria, segundo relatos de
usuário, que apontam consumo excessivo de energia dos dispositivos por parte das aplicações
que fazem uso do Wikitude, o que pode acabar afetando negativamente um requisito não-
funcional do sistema, haja vista que excessivo consumo de energia pode significar maior custo
computacional.
2.3.4 ARToolKit
O ARToolKit é um SDK que permite o desenvolvimento de sistemas em RA, utilizando
recursos de interpretação virtual para detecção de marcadores e processamento de imagens
para prover os recursos de RA (GUIMARÃES; GNECCO, DAMAZIO, 2011). As principais
características do ARToolKit referem-se ao tracking, funcionalidade responsável por medir em
tempo real a posição e orientação do usuário no espaço em relação ao sistema de captura de
imagens, isto é, a câmera do sistema, para a partir disso posicionar o artefato tridimensional na
posição correta em relação ao usuário.
34
Em tais circunstâncias, a dificuldade empregada no processos de desenvolvimento de
RA está no processo de calcular precisamente a visualização do usuário em tempo real, para
que seja possível inserir um objeto virtual na visualização do mundo físico-sensorial. Sendo
este o principal objetivo do SDK ARToolKit, isto é, observar o cenário a partir da câmera e
verificar as informações contidas no marcador viabilizando a função de acrescentar objetos
virtuais sobrepondo marcador no mundo físico-sensorial.
Marcadores do ARToolKit possui como padrão um quadrado de bordas pretas, há a
possibilidade de uso de marcadores variados desde que obedeça este padrão de bordas pretas
pré-estabelecido. Sendo assim, a versão mais recente deste SDK inclui vários recursos que
permitem a criação de aplicações baseados em marcadores. Portanto, o ARToolKit é capaz de
executar o rastreamento de câmera em tempo real, assegurando que os objetos virtuais estejam
sobrepostos nos marcadores de rastreamento. A Figura 6 resume o processo de funcionamento
do SDK.
Figura 6 - Fluxo de funcionamento do SDK ARToolKit
Fonte: Sítio Hitl (2009). Disponível em: <<https://www.hitl.washington.edu/artoolkit/
documentation/userarwork.htm>>. Acesso em: 01 junho 2018.
As aplicações que fazem uso do ARToolKit permitem que os objetos virtuais sejam
projetados ao vídeo em tempo real. Isto posto, o funcionamento deste SDK inicia com uma
câmera responsável por capturar vídeo do mundo físico-sensorial e enviar informações para o
computador, o software no computador pesquisa em cada quadro do vídeo por qualquer
35
formato quadrado, caso encontre, o software usa fórmulas matemáticas para calcular a posição
da câmera em relação ao marcador. Dessa forma, uma vez conhecida a posição da câmera, um
modelo 3D é inserido a partir dessa mesma posição, de modo a sobrepor o vídeo do mundo
físico-sensorial e para assim ser projetado em cima do marcador. Assim, a saída final é exibida
na tela do computador, portanto, quando o usuário olha pelo visor, vê os artefatos virtuais
sobrepostos no mundo físico-sensorial, o resultado final pode ser visualizado na Figura 7:
Figura 7 - Visualização de um modelo 3D a partir do SDK ARToolKit.
Fonte: Sítio Hitl (2009). Disponível em: <<https://www.hitl.washington.edu/artoolkit/
documentation/userarwork.htm>>. Acesso em: 03 junho 2018.
As principais desvantagens acerca dessa ferramentas refere-se ao fato de que a mesma
permite utilização apenas com licenças comerciais, embora esteja disponível um teste gratuito
com limitações. Além do mais, a dependência de um marcador reflete na eficiência do sistema
em RA, haja vista que os objetos virtuais só aparecerão quando as marcas de rastreamento
estiverem visíveis, pois isso acaba limitando o tamanho ou o movimento dos objetos virtuais.
Outro desvantagem significante refere-se ao fato de que o rastreamento é afetado pela
orientação do marcador em relação à câmera, isto é, à medida que os usuários tornam os
marcadores mais inclinados e horizontais, cada vez menos padrões do centro são visíveis e,
portanto, o reconhecimento torna-se menos eficiente. Assim também, a eficiência do
36
rastreamento também são afetados pelas condições de iluminação. As luzes do ambiente podem
criar reflexos e pontos de reflexo em um marcador de papel, dificultando a localização do
quadrado do marcador.
2.3.5 Comparação
Com base nos critérios e nas ferramentas citadas acima, foi compilado um gráfico
comparativo das quatros principais plataformas de RA atualmente:
Tabela 1 - Comparativo entre as ferramentas.
Projeto Vuforia ARcore Wikitude ARToolKit
Possui código aberto? - X - X
O framework é gratuito? - X - X
Pode ser comercializado? - X - X
Pode ser incorporado em
um aplicativo nativo para as
plataformas móveis?
X X X X
Disponibilidade de
funcionalidades
equivalentes em diferentes
plataformas?
X - - X
Há documentação
disponível?
X X X X
Existe uma comunidade de
desenvolvimento?
X - X -
Utiliza marcador? X - - X
Identifica Superfície? X X - -
Possui estimativa de luz? - X - -
Compatível com a engine
Unity?
X X X X
Fonte: Autoria própria.
Como pode ser visto na Tabela 1, dentre os frameworks pesquisados o que oferece mais
recursos ao desenvolvimento de aplicações de RA trata-se do SDK ARcore, suas principais
37
características refere-se ao custo benefício, identificação de superfície e estimativa de luz de
modo a iluminar o modelo virtual de acordo com a iluminação ambiente no cenário em que
está exposto. Porém, o protótipo do sistema referente ao projeto em ênfase será desenvolvida
para plataforma desktop, pré-requisito que o ARCore não dispõe, pois o SDK foi desenvolvido
inicialmente apenas para dispositivos móveis com sistema operacional Android. Isto posto,
optou-se por utilizar a plataforma Vuforia por conta do seu desempenho na etapa de
comparação e principalmente porque suas características condizem com os requisitos de
desenvolvimento do protótipo.
Além do mais, no contexto de desenvolvimento de software, em alguns casos, é viável
o emprego de bibliotecas que apresentam documentação robusta e fórum para eventuais
dúvidas em detrimento de bibliotecas relativamente novas e com pouca ou nenhuma
documentação. O uso dessas bibliotecas, considerada mais populares, como o Vuforia, é viável
e indicado para os casos em que não se tem tanto experiência acerca de métodos de
desenvolvimento específico desta área, portanto, um fator que contribui quanto a utilização de
uma plataforma já consolidada no mercado diz respeito ao auxílio no processo de aprendizado.
3. DESENVOLVIMENTO DO APLICATIVO PROTÓTIPO
3.1 TRÊS FASES, TRÊS SOFTWARES
O Visita Virtual Unifesspa é um projeto de pesquisa que segue sendo realizado no Media
Lab/Unifesspa, integrado à rede Media Lab/BR, caracterizado como um laboratório de Mídias
Digitais Interativas e de Inovação Tecnológica.
O projeto surgiu inicialmente para atender uma solicitação do Magnífico Reitor da
universidade, e de forma global, possui o objetivo de oferecer aplicativos, exposições e
tecnologias em si com visitas virtuais aos Campus da Unifesspa, por meio da RV, RA e RM,
levando ao público uma experiência que objetiva a apresentação do espaço geográfico que a
universidade possui, para que seja capaz de descobrir e visitar virtualmente a universidade
usando estas tecnologias disponibilizadas a partir do projeto.
Neste contexto, o projeto Visita Virtual apresenta-se como oportunidade para a implementação
de tecnologias relevantes que auxiliam à universidade e a sociedade. A partir disso, fornecer
ao público a possibilidade de conhecer e visitar a estrutura da instituição, mesmo que não se
encontre presente fisicamente, quebrando o paradigma da necessidade presencial. O projeto
encontra-se em desenvolvimento, tendo passado por três fases baseadas em projetos de
38
iniciação científica e pelas três realidades apresentadas neste trabalho. O objetivo final é de
aprofundar pesquisas na área das três realidades e poder ter à disposição os diferentes softwares
disponibilizados ao público para que aluno, professor, técnico ou visitante tenham acesso a
todos os campi da universidade de modo virtual, incluindo diversos serviços como localizador,
medidor de distâncias e até mesmo contato e conhecimento de agenda de atendimento.
3.1.1 Visita Virtual Unifesspa: RV
A primeira fase do projeto objetivou desenvolver um aplicativo com imersão em RV com o
propósito de levar à comunidade um tour virtual pela estrutura do campus III da Unifesspa.
Por meio da imersão, o público poderia conhecer o campus antes mesmo de o visitar
pessoalmente, bem como pode ser apresentado à visões de futuro para a urbanização e
disposição dos prédios da Unifesspa nos diversos campi.
A primeira etapa do projeto foi a tridimensionalização de plantas baixas dos prédios e
do aspecto urbanístico do Campus III – Cidade Universitária (parceria estabelecida com a
SINFRA, que cedeu as plantas e prestou consultoria para sanar dúvidas específicas). Nesta
etapa, inclusive, foram descobertos diversos problemas no desenvolvimento de maquetes
digitais, permitindo uma nova linha de pesquisa, ainda não implementada.
Após a estruturação das maquetes, passou-se à desenvolver experiências semi-
imersivas sem interação com a confecção de vídeos para demonstração dos prédios interna e
externamente (Figura 8). Os prédios alvo foram o Multiuso e o de 5 andares do Campus III.
Figura 8 - Tela do aplicativo Visita Virtual Unifesspa em RV.
Fonte: Autoria própria.
39
Importante salientar que este projeto específico foi interrompido por falta de recursos
técnicos para desenvolver o ambiente de imersão: os óculos não puderam ser adquiridos por
falta de verba específica; no entanto, essa interrupção levou ao desenvolvimento do segundo
software em RA que dependia apenas de aparelhos smartphones.
Quando finalizado, a ideia é disponibilizar quiosques com o computador e óculos, para
que a comunidade acadêmica possa experienciar o espaço urbanístico em desenvolvimento.
3.1.2 Visita Virtual Unifesspa: RA.
Esta etapa surgiu imediatamente da necessidade de se continuar a pesquisa sem
depender de recursos maiores para a compra de equipamentos especializados. Trata-se,
portanto, do desenvolvimento de um aplicativo utilizando a tecnologia RA, que permitiria a
visualização 3D de estruturas somente apresentadas em plantas baixas. Pensou-se inclusive
em possibilidades de interação que determinariam por exemplo a visualização das partes
internas do prédio visto com a retirada, por meio do acionamento de botões virtuais, dos
andares superiores.
A etapa de desenvolvimento iniciou com o melhoramento dos modelos tridimensionais dos
prédios da Unifesspa, enviados pela SINFRA junto com a planta baixa dos prédios, desafio já
visualizado no desenvolvimento do software anterior.
Desse modo, o sistema utilizou a planta baixa do prédio como marcador para projetar
o prédio virtual em RA. Neste momento, foi feito o estudo do framework mais adequado para
o desenvolvimento de RA apresentado no item 2.3. Sendo assim, o Vuforia foi utilizado para
prover as ferramentas necessárias para desenvolver a aplicação em RA, o mesmo, como já
falado é um SDK ou biblioteca para desenvolver aplicações em RA.
Este projeto foi concluído com um desenvolvimento de protótipo, mas ainda faltam
fases específicas do desenvolvimento, como testes e acertos de bugs, para então passarmos à
fase de distribuição de beta test. Atualmente, já é uma ferramenta para visualização dos prédios
em RA, para que o público possa conhecer virtualmente os campus da universidade em
qualquer lugar utilizando esta tecnologia, tendo sido apresentado em diversos eventos da
Unifesspa, como: o III Seminário de Iniciação Científica da Unifesspa, a Feira de Profissões
(2017) e as semanas de calouro (2017 e 2018) sendo bem recebido pela comunidade. A
imagem abaixo (Figura 9) exibe o resultado final da aplicação em execução.
40
Figura 9 - Aplicativo visita virtual Unifesspa AR.
Fonte: Autoria própria.
3.1.3 Visita Virtual Unifesspa: RA e RM
Com o desenvolvimento dos subprojetos anteriores, chegamos à conclusão de que
poderíamos utilizar a tecnologia e todo o know-how para desenvolver uma ferramenta que
pudesse auxiliar os arquitetos da SINFRA a pensarem a harmonização dos edifícios e da
urbanidade no entorno.
Esta fase, iniciou-se, então, com o projeto de iniciação científica chamado “Visita
Virtual UNIFESSPA: Ferramenta interativa para análise das disposições internas de
construções urbanas da UNIFESSPA utilizando Realidade Aumentada e Realidade
Misturada.”. O mesmo possui ênfase na atuação e potencialidades da tecnologia de RA e RM
na produção de uma ferramenta voltada para auxiliar nos processos de planejamento de
projetos arquitetônicos, seja como objetivo de elucidação do espaço em si, ou na forma de
regras gerais de planejamento dos arquitetos, promovendo a aplicabilidade de novas
ferramentas na maneira na qual um edifício e o seu meio é projetado.
O sistema busca fornecer um ambiente interativo e imersivo para os arquitetos
experimentarem diferentes formas de disposição dos componentes presentes no cenário
virtual, de modo a auxiliá-los no processo de planejamento de projeto. Dessa maneira, os
benefícios reais desse sistema referem-se principalmente ao fato de que é possível realizar
experimentos e verificar diferentes formas de disposição com a finalidade de encontrar a mais
41
eficiente de acordo com a necessidade, isso significa que arquitetos e os envolvidos no
processo de construção tendem a prosperar com o emprego dessa ferramenta nos seus
processos operacionais, pois o sistema irá expor problemas na forma como os edifícios são
dispostos e isso alavancará a eficiência e eficácia nas construções, tornando arquitetos mais
confiantes quanto a tomada de decisão.
3.2 METODOLOGIA DE DESENVOLVIMENTO
O foco da etapa inicial do projeto trata-se da realização de uma pesquisa de viabilidade
que pudesse resultar em um produto com aspectos de interação eficiente, apesar da limitação
do equipamento atual. Para tanto, foi recebido a planta baixa e o primeiro sketch da
SINFRA/Unifesspa do prédio de 4 e do de 5 andares para realização dos primeiros testes.
Corrigiu-se, portanto, problemas de visualização causados pela dispersão das texturas e a
estrutura poligonal das imagens.
Portanto, na busca por melhorias nos modelos dos prédios optou-se por realizar a
reconstrução completa dos modelos tridimensionais através da plataforma Blender. Assim
sendo, os prédios foram minuciosamente desenvolvidos por métodos com diretrizes eficientes
de modelagem 3D, com o propósito de amenizar os problemas relacionados à otimização dos
modelos no formato Sketchup, modelos desenvolvidos na plataforma de desenvolvimento 3D
Sketchup, o qual corresponde ao principal problema presente nos modelos desenvolvidos
anteriormente.
O desenvolvimento de aplicações de RA geralmente é dinamizado quando são usadas
ferramentas apropriadas para tal, como linguagens, bibliotecas, ferramentas de
desenvolvimento. A seleção das ferramentas dependeu do conhecimento do domínio da
aplicação e da eficiência de recursos de hardware e de software, além de recursos financeiros.
Portanto, para desenvolver o sistema em RA inicialmente foram necessários modelos
tridimensionais, Ambiente de Desenvolvimento Integrado (IDE) e SDK’s. Uma vez que se
obteve todos os modelos virtuais que compõem o cenário, contendo suas respectivas
nomenclaturas, foi dado inicialização da composição do cenário.
42
3.2.1 Hardware
A composição de hardware para o projeto conta inicialmente com uma webcam, um
sensor de movimento chamado Leap Motion, um projetor e um computador. A webcam é usada
para alimentar vídeo ao vivo no software. O controlador Leap Motion é usado como o
dispositivo de entrada e o projetor é usado como dispositivo de saída, pois será utilizado para
exibição do vídeo em tempo real com RA, haja vista que os três componentes estão conectados
a um computador que executa o software. Desse modo, a parte de hardware que contempla a
estrutura é o núcleo da aplicação, oferecendo os recursos a serem usados. Um esquema da
disposição dos equipamentos pode ser visto na Figura 10.
Como pode ser visto, o interator fica uma distância significativa da tela de projeção
gesticulando com as mãos sobre o Leap Motion. O sensor permanecerá situado
aproximadamente a meio caminho entre a tela. Dessa forma, o controlador Leap Motion deve
se encontrar no nível da cintura e a webcam em posição elevada, capturando imagens de cima
(aproximadamente a 2 metros do chão).
Figura 10 - Ilustração dos principais componentes da instalação.
Fonte: Autoria própria.
3.3.2.1 Leap Motion
Uma das questões mais desafiadoras quando se trata de RA diz respeito ao modo de
interação que o sistema pode oferecer aos usuários, de forma a fornecer uma interação eficiente
43
e intuitiva. Geralmente quando o sistema em RA é desenvolvido para desktop, que corresponde
ao caso do objeto de estudo deste trabalho, o modo de interação é constituído apenas de mouse
e teclado, quando disponível. Do mesmo modo, os aplicativos para dispositivos móveis de AR
geralmente são desenvolvidos com interação a partir das superfícies de toque integrado com a
câmera.
Portanto, é por esse motivo que no desenvolvimento deste projeto optou-se por
desenvolver a aplicação em RA que amplie a visão do público quanto ao modo de interação e
a forma de manipulação, que vão além da interação com mouse e teclado tradicionais. Com
base nisso, mostrando que novos métodos de entrada para interação precisam ser explorados e
desenvolvidos, melhorando a experiência de interação.
À vista disso, o sensor Leap Motion oferece uma solução de interatividade para afetar
a problemática abordada.
Figura 11 - Controlador Leap Motion.
Fonte: Site Leap Motion.
A idéia do sensor é identificar o movimento natural das mãos no espaço tridimensional
e em seguida, traduzir esse movimento em dados que podem ser usado para controlar e
manipular elementos do cenário. O sensor e seu sistema de coordenadas podem ser vistos na
Figura 11. O tamanho compacto do controlador e seu competente funcionamento, confirmada
através de testes realizados com protótipos de softwares, correspondem aos principais motivos
que fizeram o Leap Motion ser escolhido para o projeto.
O SDK do Leap Motion reconhece certos padrões de movimento como gestos que
podem indicar uma intenção ou comando do usuário, assim captando os gestos realizados em
um quadro da mesma maneira que informa outros dados de rastreamento de movimento, como
dedos e mãos. Para cada gesto observado, o SDK Leap Motion adiciona um objeto Gesture ao
44
quadro. Os gestos fornecem um nível mais alto de abstração para lidar com dados de
rastreamento, invés de observar o movimento de dedos ou ferramentas individuais ao longo do
tempo. Os gestos não são relatados através de eventos, em vez disso, são relatados através de
objetos de Gesto discretos adicionados a cada quadro produzido durante a vida do gesto. Os
seguintes padrões de movimento são reconhecidos pelo pacote de desenvolvimento do Leap
Motion: (1) Círculo - Um único dedo fazendo o movimento de círculo; (2) Deslizar - Um
movimento longo e linear da mão; (3) Toque de tela - Um movimento de batida pelo dedo
como se estivesse tocando uma tela de computador.
O SDK do Leap Motion disponibiliza todas essas formas de interação para desenvolver
as interações que o projeto em foco pretende produzir, de modo técnico, basta apenas habilitar
o reconhecimento para cada gesto que o sistema pretende usar na classe Controlled, a qual
possui um método chamado enableGesture() que pode ser usada para habilitar o
reconhecimento dos tipos de gestos.
Figura 12 - Um gesto de círculo identificado pelo Leap Motion.
Fonte: Documentação Leap Motion. Diponível: <<https://developer.leapmotion.com
/documentation/>> Acesso em: 02 fev 2018.
A Figura 12 ilustra um gesto círculo contínuo, onde o usuário pode fazer um círculo
com qualquer dedo para gerar uma interação. Uma vez que o gesto começa, o software
atualizará o progresso até o gesto terminar. Um gesto de círculo termina quando o dedo ou a
ferramenta circundante se afasta do locus do círculo ou se move muito devagar, desse modo,
gerando um evento que será tratado e transformado em ação.
O principal fator levado em consideração quanto ao design de interface para o usuário
e modos de interação, segue o objetivo primordial de oferecer funções e métodos de interação
45
que devem ser facilmente adotadas por usuários aprendiz. Portanto, para chegar em tal
conclusão foi realizado testes de interação com o Leap Motion no modo homem-controlador
para efetivar tal escolha, os métodos foram testados através de tentativa e erro em vários
cenários diferentes.
3.2.2 Software
O software será desenvolvido utilizando o motor de jogos Unity 3D, plataforma para
desenvolvimentos de jogos em 3D e 2D. O Unity 3D foi selecionado devido à disponibilidade
e flexibilidade da plataforma, além de possuir documentação acerca da integração com o Leap
Motion SDK e Vuforia SDK. Ademais, o software permanece sendo desenvolvido usando a
linguagem de programação C# por meio da engine Unity sendo projetado para plataforma
desktop.
3.2.2.1 Unity
O desenvolvimento de aplicações tridimensionais com RA pode ser considerada uma
experiência gratificante e desafiadora na mesma proporção, pois esse processo exige diversas
habilidades dos desenvolvedores, de diferentes áreas do conhecimento. Com isso, o uso de
ferramentas para auxiliar nas tarefas repetitivas e complexas é fundamental nesse tipo de
atividade, e ao longo do tempo, um tipo especial de ferramenta, conhecido como motor de
jogos foi evoluindo de maneira paralela aos próprios jogos, ao ponto que se tornaram
ferramentas valiosas e de certa forma populares para desenvolvimento de software e games em
3D.
Diante disso, o Unity é um motor de jogo multi-plataforma com um IDE incorporado
desenvolvido pela Unity Technologies. Ele é usado para desenvolver games multiplataformas
seja desktop, consoles e dispositivos móveis e tem como principais características a facilidade
de uso, rápida prototipagem e integração com ferramentas externas como Maya, 3D Studio,
Photoshop, Blender, entre outras (UNITY, 2018). Com isso, o objetivo da empresa em
desenvolver e disponibilizar essa ferramenta é democratizar o desenvolvimento de jogos, pois
a facilidade de uso e preço acessível fizeram com que a Unity atingisse uma penetração
significativa no mercado de desenvolvimento de jogos, principalmente para dispositivos
móveis. Atualmente o Unity está em sua versão 2017.3, completando o ciclo de versões de
46
2017 que conta com vários recursos e melhorias em todos os níveis para artistas e
desenvolvedores.
Antes de iniciar a criação da aplicação com o Unity 3D, foi preciso entender como
funciona a ferramenta. Os principais conceitos utilizados são: Scenes, Terrains, Game Objects,
Models, Textures e Materials, os quais serão explicados ao longo desta seção.
O Unity 3D opera baseado em cenas, internamente denominadas Scenes. Dentro das
cenas, há os Game Objects, que são quaisquer objetos inseridos dentro da cena. Câmeras,
personagens, terreno, os modelos, luzes, todos são classificados como Game Objects. Os
modelos gráficos são criados utilizando materials, textures e shaders. Os materiais são
baseados em textures e shaders. O texture determina o que será desenhado na superfície do
material, enquanto os shaders definem como será desenhado.
Outro elemento importante é o terreno, definido como Terrains. Esse elemento é
utilizado para a criação das paisagens dentro das cenas, e é por ele que o personagem irá
observar o cenário enquanto interage. Os terrenos podem ser alterados para criar montanhas ou
depressões, no caso do projeto, será utilizada a topologia fidedigna do campus. Além disso, é
permitida a adição de materiais e modelos que representem a urbanística do campus, como:
água, grama, pedras ou árvores, para aumentar o realismo do ambiente. Além disso, é
importante conhecer e trabalhar com câmeras e luzes para aumentar o grau de realismo.
Um detalhe importante a ser observado quando se cria um projeto no Unity, trata-se do
tratamento de colisões, para evitar que objetos atravesse outros objetos do cenário. Desse
modo, cada elemento do cenário desempenha seu papel no qual o usuário pode interagir.
Os scripts são como atribuições de papéis, podendo ser criados utilizando as linguagens
de programação C Sharp ou JavaScript. Todos os scripts são criados em um software anexo
ao Unity, chamado MonoDevelop. Portanto, para desenvolvimento do projeto foi selecionado
a linguagem de programação C Sharp, por conta da sua eficiência e do grande acervo de
documentação disponibilizada pelo Unity. Não à toa que a grande vantagem que fez o Unity
ser a engine escolhida para esse projeto, refere-se a grande disponibilização de tutoriais. No
próprio site da ferramenta estão disponíveis vários tutoriais, além de toda a documentação
necessária para o desenvolvedor utilizar as classes do Unity em seus scripts.
47
3.2.2.2 Blender
O Blender é um software de computação gráfica que permite a criação de vastos
conteúdos de 3D. Oferece funcionalidades completas para modelagem, renderização,
animação, pós-produção, criação e visualização de conteúdo 3D interativo, com os benefícios
singulares de portabilidade. Com uma série de plataformas integradas, o Blender oferece
completas funcionalidades no desenvolvimento de modelagem 3D bastante utilizado por
profissionais e artistas desta área, no caso do projeto em pauta, o blender permanece sendo
utilizado para criar modelos tridimensionais que irão compor o cenário.
O principais motivos que sustentaram a utilização do Blender no projeto diz respeito à
necessidade de computação com elementos de alto desempenho e baixo custo, cuja relação
custo-benefício foi favorável para o projeto. Além do seu nível de dificuldade relativamente
menor comparado ao demais programas desta categoria, por mais que aparentemente o Blender
seja considerado um programa difícil, contudo é preciso levar em consideração que todos os
softwares da área são, por natureza, complexos, Sendo o Blender não mais difícil que os
equivalentes mais utilizados do mercado, como o 3D Studio Max ou o Maya.
No Blender todo objeto, em geral, é um mesh, um conjunto de faces, vértices e
segmentos, que podem ser moldados, tal como os artistas e designers fazem com argila e resina.
No Blender para editar algo nos valeremos das seguintes ferramentas e conceitos simples, que
em geral são usadas mesmo pelos modeladores mais experientes em qualquer software 3D. A
Figura 13 abaixo destaca o processo de desenvolvimento do prédio de 4 pavimentos que irá
compor o cenário.
Figura 13 - Processo de modelagem do prédio 4 pavimentos no software Blender.
Fonte: Autoria própria.
Após a conclusão da modelagem 3D, o prédio está pronto para ser importado para a
48
engine Unity, onde será inserida no cenário de acordo com a necessidade do desenvolvedor ou
talvez o desenvolvedor queira usar objetos que já tenha feito no Blender e editá-los em outros
softwares. Felizmente, o Blender oferece uma ampla gama de formatos de arquivo, por
exemplo: OBJ, FBX, 3DS, PLY, STL, etc., que podem ser usados para importar e exportar.
Em suma, hoje o Blender é uma realidade palpável dentro do universo de softwares voltados
para computação gráfica tridimensional.
3.2.2.3 SDK Leap Motion
O SDK do Leap Motion foi projetado para se conectar com o desenvolvedor e auxiliá-
lo no processo de integração do Leap Motion com o Software. O SDK para Leap Motion
permite a criação de aplicações para diversas plataforma de forma nativa, esse SDK ainda inclui
projetos de exemplo com código-fonte, ferramentas de desenvolvimento, emuladores e
bibliotecas. No nível mais básico, a API do Leap Motion retorna os dados de rastreamento na
forma de quadros. Cada objeto Frame contém listas de entidades rastreadas, como mãos, dedos
e ferramentas, bem como objetos que representam gestos reconhecidos e fatores que descrevem
o movimento geral das mãos na cena.
Portanto, antes de iniciar o desenvolvimento fazendo uso do SDK, foi realizado vários
teste através do Visualizador de Diagnóstico.
Figura 14 - Exibição do Visualizador de Diagnóstico.
Fonte: Documentação Leap Motion. Diponível: <<https://developer.leapmotion.com
/documentation/>> Acesso em: 28 fev 2018.
49
Geralmente o Visualizador de Diagnóstico, como mostra a Figura 14, é utilizado para
caso haja necessidade de realizar testes com o sensor ou apenas para observar os dados de
rastreamento em ação enquanto o sensor identificar e ler os dados gerados a partir das mãos,
com isso se torna um ótimo recurso para qualquer desenvolvedor.
O SDK conta com componentes básicos da interação com Unity, como exibe a Figura
15 abaixo
Figura 15 - Componentes básicos da interação.
Fonte: Documentação Leap Motion. Diponível: <<https://developer.leapmotion.com
/documentation/>> Acesso em: 28 fev 2018.
Objetos de interação são GameObjects com um comportamento de interação anexado,
eles exigem um Rigidbody e pelo menos um Collider, conceitos nos quais já foram explicados
anteriormente.
O Interaction Manager recebe FixedUpdate da Unity e lida com toda a lógica interna
que possibilita as interações, incluindo atualização de dados de mão, controlador e dados de
objetos de interação. É necessário no mínimo um desses na cena para que os objetos de
interação funcionem. Os controladores de interação fazem toda a interação real com objetos de
interação. Este objeto pode ser a mão do usuário por meio do componente Interaction Hand,
ou um AR Controller.
Com isso, o objetivo ao utilizar o SDK do Leap Motion neste projeto, é desenvolver um
software para que o usuário possa alcançar uma experiência de RA para interagir com ambiente
do projeto.
50
3.2.2.4 SDK Vuforia
Geralmente, a RA é elaborada em experiências interativas que sobrepõem, com o
auxílio de uma câmera, objetos 2D ou 3D, informados por alguns dados de sensores. No
entanto, criar uma experiência envolvente de RA a partir do zero pode ser um verdadeiro
desafio. Felizmente, para isso existem algumas soluções disponíveis que podem tornar este
trabalho mais ágil. Uma das ferramentas de RA mais sólida é o SDK Vuforia, uma biblioteca
AR compatível com Android, iOS, UWP, algumas marcas de óculos inteligentes e vasta gama
de IDE’s.
Dessa forma, este framework destina-se ao desenvolvimento de RA baseada em visão
da realidade espectro aumentada, que propõe reconhecimento de objetos do mundo físico-
sensorial 2D e 3D e multi-target, configurações multi-target 3D e uma forma de marcador
endereçável, conhecido como um marcador de quadro, com a sobreposição de modelos 3D no
ambiente.
O funcionamento do SDK Vuforia resume-se em usar a visualização da câmera do
dispositivo combinada com dados de acelerômetro e giroscópio para examinar o mundo no
qual está o dispositivos está inserido, usando a visão computacional para entender o que
literalmente é “visto” na câmera, para a partir disso inserir um objeto virtual. Após o
processamento dos dados, o sistema pode localizar-se no ambiente, sabendo suas coordenadas:
onde está para cima, para baixo, para a esquerda, para a direita e assim por diante.
Ocasionalmente, o que fazer com essas características depende dos objetivos de
desenvolvimento de cada aplicação.
Como mencionado anteriormente, a aplicação que faz uso de recursos do Vuforia faz
buscas por "alvos", chamado de ImageTarget ou marcadores, visualizados a partir da câmera
para criar pontos de ancoragem ou referências a serem usadas. Esse marcador pode assumir
diferentes formas e imagens, e qualquer arquivo previamente processado pelo gerenciador de
destino do Vuforia pode ser reconhecido.
51
Figura 16 - Recursos naturais que o SDK Vuforia usa para detectar o alvo da imagem.
Fonte: Documentação Vuforia. Disponível em: <<https://library.vuforia.com/articles/
Training/Image-Target>> Acesso em: 02 fev de 2018.
Qualquer tipo de imagem pode ser um Vuforia Image Target. No entanto, quanto mais
detalhada e formas coloridas na imagem, melhor será reconhecido pelo algoritmo, como exibe
a Figura 16. Muitos fatores serão parte do cálculo de reconhecimento, mas basicamente a
imagem deve ter um nível razoável de contraste, resolução e elementos distintivos. Por
exemplo, uma fotografia do céu azul pode não funcionar muito bem, mas uma imagem de
grama pode funcionar perfeitamente. A classificação da qualidade da ImageTarget pode variar
de 0 a 5 para qualquer imagem dada. Quanto maior a classificação aumentável de um alvo de
imagem, maior será a capacidade de detecção e rastreamento que contém. Uma classificação
de zero indica que um alvo não é rastreado pelo sistema AR, enquanto que uma classificação
de estrelas de 5 indica que uma imagem facilmente será rastreada pelo sistema AR.
Inicialmente foi criado um protótipo para realizar testes acerca da integração do SDK
Vuforia com a engine Unity, o ambiente de demonstração foi copiado em um dispositivo móvel
com sistema operacional Android e se comportou muito bem. As figuras disponibilizadas,
assim como os marcadores iniciais funcionaram corretamente, como pode ser visualizado na
Figura 17.
52
Figura 17 - Teste realizado com o SDK Vuforia materializando o prédio de 4 pavimentos
em RA.
Fonte: Autoria própria.
As principais vantagens do SDK Vuforia compete a possibilidade de utilização de bases
de dados remotas para diminuir a sobrecarga nos dispositivos móveis. Podem ser utilizadas
tanto dados locais advindos de redes locais quanto de dados localizados em nuvens
computacionais. Ainda mais, possui um bom suporte ao desenvolvedor sendo mantido por uma
empresa considerada sólida.
3.3.3 Especificações do sistema proposto
Com base em conteúdo teórico, propõe-se uma metodologia de desenvolvimento de
caráter multidisciplinar requerendo acervo bibliográfico de diferentes áreas e especialidade
como desenvolvimento de software, Arquitetura, Engenharia, Artes visuais, Gestão, Design e
computação gráfica. Para tanto, a equipe de pesquisadores do Media Lab/BR responsáveis pela
execução desse estudo possui formação que engloba todas estas áreas. Além do mais, existe
uma parte da equipe de desenvolvimento que possui experiência anterior no desenvolvimento
de software em RA, RV e RM para sistemas com características significantes de virtualidade.
Portanto, alunos e pesquisadores de graduação serão utilizados para complementar os recursos
humanos necessários para a execução da pesquisa e desenvolvimento do projeto.
53
Para desenvolver o projeto e averiguar as possibilidades de criação de aplicação em RA
para exibição de ambiente virtual, pretende-se implementar as etapas pretendidas: 1)
Planejamento, definição das ferramentas que serão utilizadas no processo de implementação e
aplicação de métodos de desenvolvimento de RA; 2) Desenvolvimento do protótipo utilizando
as técnicas e ferramentas previamente definidas; 3) Fornecimento da aplicação junto à SINFRA
para realização de teste iniciais.
1) Aquisição de conhecimento sobre fundamentos de desenvolvimento de sistemas
de RA e o emprego da RA na arquitetura: Etapa na qual será realizada
capacitação da equipe de desenvolvimento do projeto para obtenção de
conhecimento acerca das tecnologias envolvidas no desenvolvimento de
sistemas de RA, principalmente nos SDK’s que serão utilizados.
2) Levantamento de Requisitos e Especificação do software: Etapa onde se realiza
técnicas de engenharia de software para levantamento dos requisitos dos
sistemas de RA e suas especificações, tais como os requisitos funcionais e não
funcionais, de modo a definir a arquitetura para projetar o desenvolvimento do
software de maneira eficiente, tendo em vista que essa etapa é onde ocorre a
busca do entendimento, conhecimento de fluxos, definição de interação
humano-computador, documentação e definição de todos os objetivos que
buscam ser alcançados de forma detalhada.
3) Desenvolvimento de um protótipo evolucionário com características próximas
do sistema final baseado para desktop: Nessa etapa ocorre o desenvolvimento
dos módulos do software para a implementação, uma grande quantidade de
conhecimento técnico por parte das tecnologias e métodos aplicados no projeto
é utilizado, onde todos os requisitos captados da etapa de planejamento é
empilhado para ser sequencialmente desenvolvido.
4) Reforço dos objetos desenvolvidos e treinamento dos usuários: Neste etapa,
para validação do protótipo desenvolvido serão realizados experimentos de
validação dos métodos e tecnologias empregadas no projeto, com a contribuição
para possíveis melhorias para o sistema final.
54
Portanto, esta seção aborda as especificações técnicas do sistema de acordo com as
normas tradicionais de Engenharia de Software. Dessa maneira, são apresentados uma breve
proposta do sistema, Requisitos Funcionais e Não-funcionais, Caso de Uso, Diagrama de
Atividades e Diagrama de Sequência.
3.3.3.1 Requisitos Funcionais
Segundo Filho (2012), os requisitos funcionais definem as funcionalidades que se
espera que um sistema em questão realize, podendo variar de acordo com o tipo de software,
com usuários e com o tipo de sistema que está sendo desenvolvido. Dessa forma, conforme
Filho (2012), os requisitos funcionais nada mais são que o conjunto de funções que o sistema
deve executar para atender aos requisitos de negócios, sendo considerado um artefato que
comporta todas as necessidades de um sistema para atingir seus objetivos.
A partir dos requisitos funcionais é possível ter uma visão global acerca das
funcionalidades, este raciocínio por si só demonstra a importância dos requisitos funcionais no
escopo do sistema proposto, pois os requisitos de qualquer projeto precisam ser bem pensados,
equilibrados e claramente compreendidos por todos os envolvidos. No entanto, por ser
considerado importante como é, se deve ter extremo cuidado para que os requisitos possuam a
melhor qualidade possível, afinal a presença deles no escopo não garante automaticamente um
bom sistema, é necessário que haja qualidade em termos de sintaxe e semântica. Dessa forma,
os Requisitos Funcionais estão listado logo abaixo:
Visualização do cenário em RA
O primeiro passo é fornecer visualização do ambiente em RA, permitindo inserir conteúdo
digital em superfície horizontal.
Movimentação de Objetos
Na entrada de comandos todos os comandos serão realizados através de gestos com as mãos.
Portanto, após selecionar um objeto 3D, o usuário poderá movê-lo no espaço de trabalho do
cenário virtual.
Identificação de Gestos
55
O sistema utilizará um sensor somatosensorial chamado Leap Motion para identificar gestos
das mãos dos usuários com o objetivo de torná-los uma ação virtual.
Rotação
O usuário poderá rotacionar o espaço de trabalho, bem como os sub-elementos virtuais,
visualizando os planos de projeção, assim como as construções realizadas, verificando de
pontos de vista diferentes.
Salvar cenário
Através desta funcionalidade, o usuário poderá armazenar cenários com situações construídas
no espaço de trabalho.
Abrir cenários
Nesta funcionalidade, cenários que foram previamente armazenados pelo usuário com suas
aspirações poderão ser visualizado novamente através da tela de menu.
Importação de modelos 3D
O usuário poderá importar modelos tridimensionais como edifício, árvores, carros através do
menu.
Exclusão de objetos
Após selecionar esta funcionalidade, o usuário poderá excluir objetos selecionados e, em
seguida, realizará o gesto que corresponda ao fim do comando ratificando seu desejo de
exclusão.
56
3.3.3.2 Requisitos Não-funcionais
No cenário de definição de requisitos, como citado anteriormente, os os requisitos
funcionais descrevem o que o sistema deve fazer, enquanto os requisitos não-funcionais, por
outro lado, descrevem como o sistema funciona (FILHO, 2009, p. 190). Sob este ponto de vista,
os requisitos não-funcionais fica à cargo de especificar critérios que podem ser usados para
julgar a operação de um sistema em condições particulares, em vez de comportamentos
específicos.
Quanto a definição de Requisitos Não-Funcionais, Filho assim se posiciona:
Os requisitos não-funcionais incluem os requisitos de desempenho e outros
atributos de qualidade do produto. Incluem-se aqui também os requisitos
lógicos sobre os dados persistentes e os requisitos de natureza técnica, como
as restrições ao desenho e à implementação. (FILHO, 2012, p.190)
Conforme apresentado, é possível afirmar os requisitos não funcionais referem-se às
características e padrões no que se refere a qualidade que o sistema deve oferecer, como por
exemplo, desempenho, implementação, confiabilidade, segurança, portabilidade, usabilidade,
entre outras. Com isso, a definição para um requisito não funcional é que ele essencialmente
específica como o sistema deve se comportar definindo o comportamento do sistema. Além do
mais, também se poderia pensar em requisitos não funcionais como atributos de qualidade para
um sistema, cobrindo todos os requisitos restantes que não são cobertos pelos requisitos
funcionais, de modo a especificar critérios que julgam a operação de um sistema, em vez de
comportamentos específicos. Com base nisto, os requisitos não-funcionais do sistema proposto
estão listados abaixo:
● Implementação: O sistema será desenvolvido essencialmente na linguagem C#.
● Portabilidade: O protótipo deve ser suportado inicialmente na plataforma desktop com
sistema operacional windows, com versão 7 ou superior.
● Usabilidade: A interface do sistema deverá se comporta adequadamente fornecendo
ao usuário a capacidade de realizar tarefas de forma eficaz, eficiente e com satisfação.
57
3.3.3.3 CASO DE USO
Segundo Filho (2009), Diagramas de Caso de Uso representa uma unidade coerente de
funcionalidades, oferecida por um classificador. Sobretudo, geralmente são utilizados para
coletar e definir os principais requisitos de um sistema, englobando as influências internas e
externas, sendo considerada uma ferramenta essencial na captura de requisitos, no
planejamento e no controle de um projeto, de modo a apresentar uma visão externa do sistema.
A priori, a composição do Caso de Uso inicia na identificação e definição de atores.
“Um ator é um classificador que representa os objetos externos que interagem com um caso de
uso. Os papéis dos usuários de um produto são modelados por intermédio dos atores.”(FILHO,
2009, p. 27). Sob este ponto de vista, o ator possui um papel externo e é quem inicia, e quem
responde ao caso de uso. Dessa forma, no caso de uso em questão o ator é chamado de
"usuário", onde é descrito suas principais atribuições com detalhamento técnico. O usuário é
quem interage e manipula o sistema. Suas atribuições estão expostas na Tabela 2:
Tabela 2 - Atores do caso de uso do sistema proposto.
NOME DESCRIÇÃO ATRIBUIÇÃO
Usuário Utilizador que efetiva a
interação e manipulação do
software.
Iniciar a aplicação com a
tecnologia RA. Abrir
cenário. Visualizar o cenário
virtual concatenado no
ambiente real. Interagir com
os modelos tridimensionais.
Importar novo modelo 3D.
Remover modelo 3D. Fechar
cenário. Fechar aplicação.
Fonte: Autoria própria.
Após isso é identificado as funcionalidades essenciais do sistema. Após isto e
identificação dos Atores, deve-se então representar a relação entre estes, representadas por
setas e linhas contínuas ou tracejadas.
58
Na Figura 18, é apresentado o principal caso de uso da aplicação. Sua descrição é dada
a seguir, distribuída nas tabelas 3,4,5,6,7.
Figura 18 - Caso de uso do sistema.
Fonte: Autoria própria.
Tabela 3 - Definição do elemento Abrir aplicação.
CASO DE USO Abrir aplicação
Ator principal Usuário
Descrição Iniciar a execução do aplicativo em RA. Ao
iniciar, a aplicação irá ativar
automaticamente a câmera previamente
59
selecionada para identificação do marcador.
Pré-condição O computador deve estar munido com uma
câmera para visualizar o marcador. Além
disso, deve estar habilitado o fornecimento
de informações da câmera nas configurações
do desktop.
Fluxo normal 1.Executar a aplicação.
Fluxos excepcionais -
Pós-condição Instalar a aplicação.
Camera: ativa.
Projetor: ativo.
Fonte: Autoria própria.
Tabela 4 - Definição do elemento Visualizar ambiente aumentado.
CASO DE USO Visualizar ambiente aumentado.
Ator principal Usuário
Descrição Uma vez exibido o ambiente virtual via
projetor, visualizá-lo em Realidade
Aumentada.
Pré-condição O computador deve estar munido com uma
câmera para visualizar o marcador. Além
disso, deve estar habilitado o fornecimento
de informações da câmera nas configurações
do desktop.
Fluxo normal 1.Acessar a aplicação
2.Posicionar-se à frente do sistema;
3.Visualizar ambiente aumentado
60
Fluxos excepcionais -
Pós-condição Reprodução do ambiente em RA.
Fonte: Autoria própria.
Tabela 5 - Definição do elemento Interagir com o ambiente.
CASO DE USO Interagir com o ambiente.
Ator principal Usuário
Descrição Uma vez exibido o cenário virtual, o usuário
efetua movimentos com as mãos para
inicializar a interação com o ambiente
virtual. Portanto, através dos movimentos das
mãos é realizado a alteração do estado do
modelo 3D desejado efetuando operações de
rotação, translação e escala no objeto virtual
selecionado.
Pré-condição O computador deve estar mundo com um
sensor somatosensorial via usb. Além disso,
deve estar habilitado sua utilização e todos
os drivers devem estar atualizados para
garantir o fornecimento de informações do
sensor para aplicação.
Fluxo normal 1.Acessar a aplicação
2.Posicionar-se à frente do sistema;
3.Visualizar ambiente aumentado
4.Interagir com os objetos tridimensionais.
Fluxos excepcionais Caso a posição das mãos seja perdida, o
gesto de interação deve ser realizado
novamente no campo de visualização do
sensor.
61
Pós condição -
Fonte: Autoria própria.
Tabela 6 - Definição do elemento Salvar cenário.
CASO DE USO Salvar cenário.
Ator principal Usuário
Descrição Após efetuar todas as operações
disponibilizadas pela aplicação, o usuário
pode armazenar as alterações efetuadas no
cenário para ser aberto posteriormente.
Pré-condição Essencialmente o cenário deve sofrer
alterações para ser salvo.
Fluxo normal 1.Acessar a aplicação
2.Posicionar-se à frente do sistema;
3.Visualizar ambiente aumentado
4.Interagir com os objetos tridimensionais.
5.Salvar ambiente.
Fluxos excepcionais -
Pós condição -
Fonte: Autoria própria.
Tabela 7 - Definição do elemento Fechar aplicação.
CASO DE USO Fechar aplicação.
Ator principal Usuário
Descrição Parar a execução do sistema.
Pré-condição Salvar as alterações no ambiente, caso haja.
62
Fluxo normal 1.Acessar a aplicação
2.Posicionar-se à frente do sistema;
3.Visualizar ambiente aumentado
4.Interagir com os objetos tridimensionais.
5.Fechar aplicação.
Fluxos excepcionais -
Pós condição -
Fonte: Autoria própria.
3.3.3.4 Diagrama de atividades
No âmbito da UML (Linguagem de Modelagem Unificada), o Diagrama de Atividades
se caracteriza como um diagrama que especifica o comportamento do software para que os
envolvidos tenha uma visão global acerca do sistema, para que seja possível desenvolver partes
do comportamento do software. Para tanto, o diagrama ilustra graficamente o funcionamento
da aplicação, expondo como consistirá o andamento das partes no processo de execução
(FILHO, 2009, p. 31). Como expõe Filho (2012), como o próprio já pressupõe, o elemento
básico deste diagrama é a atividade, uma especificação de comportamento executável como
execução sequencial e concorrente de unidades subordinadas, que podem englobar atividades
aninhadas, até chegar no ponto de expor às ações, que representa atividades especiais no âmbito
do modelo.
63
3.3.3.5 Diagrama de Sequência
O fluxo de dados orientado pelas funções que serão executadas é apresentado na Figura
20. Essas transformações funcionais convertem as entradas do software em saídas. Os
diagramas de seqüência são de extrema relevância pois esclarecem os papéis dos objetos em
um fluxo e, portanto, concedem oportunidade para expor as entrada básica para designar as
incubênciais de interfaces e classes (FILHO, 2009, p. 823). Geralmente é utilizado para
explorar realizações do sistema, ou seja, a forma com quem as especificações de
comportamento, como caso de uso, são implementados logicamente por colaborações de
classes.
Figura 20 - Diagrama de sequência do sistema.
Fonte: Autoria própria.
65
3.3.3.6 Cronograma de desenvolvimento
Tabela 8 - Cronograma de desenvolvimento do sistema.
Atividades Ano: 2018
Jan Fev Mar Abr Mai Jun Jul Ago
T
C
C
I
Pesquisa do tema X
Pesquisa bibliográfica X
Pesquisa metodológica X X
Redação do Pré-Projeto X
Entrega do Pré-Projeto
(Defesa de TCC I) X
T
C
C
I
I
Coleta de Dados (se for o caso) X
Desenvolvimento do trabalho X X X
Testes e validação X
Redação da monografia X X X X X
Revisão da redação X
Entrega e defesa de TCC II X
Fonte: Autoria própria.
66
4. RESULTADOS
4.1 Protótipo evolucionário
A prototipação é aplicada quando não se tem noção quanto as ferramentas a serem
utilizadas no processo de desenvolvimento, ou quando à performance ou ainda quanto à forma
na qual deva ocorrer a interação humano-computador. Diante dessas situações, a prototipagem
é uma alternativa excelente para expor e sanar problemáticas, bem como, potenciais
problemáticas, dado que a prototipagem auxilia na compreensão do que está para ser
desenvolvido. À vista disso, de forma geral o protótipo auxilia de forma direta na definição e
identificação dos requisitos do software (FILHO, 2009).
No processo de desenvolvimento de software há diversas metodologias para
desenvolver protótipos, segundo Filho (2009), algumas metodologias usam o conceito de
protótipo evolucionário e protótipo descartável. O protótipo evolucionário trata-se de uma
versão parcial do produto que satisfaz a um subconjunto dos requisitos do produto final, esse
modelo evolucionário é caracterizado por ser iterativos e manifestar características que
possibilitem o desenvolvimento de versões cada vez mais completas do software, podendo
avaliar principalmente o impacto que adesão de novas tecnologias no processo de
desenvolvimento pode trazer. Por outro lado, o protótipo descartável é elaborado somente com
a finalidade de demonstrar o que foi compreendido e resolvido em relação a algum aspecto da
análise ou da caracterização do projeto. Geralmente os protótipos descartáveis são construídos
com o intuito de responsabilizar-se em responder perguntas do âmbito do projeto ou esclarecer
certos pontos. Portanto, na construção deste protótipo será empregado a metodologia de
prototipagem evolucionária devido às características citadas.
O desenvolvimento do protótipo se deu basicamente através de comunicação
concretizadas ao longo de reuniões com os envolvidos no processo de desenvolvimento, com
o propósito de definir metas gerais acerca do software visando identificar quais os requisitos,
seja estes funcionais ou não funcionais, para a partir disto estruturar as áreas que necessitam
de um esforço mais amplo, como o processo de interação.
Esta etapa propõe o desenvolvimento de um protótipo para desktop com sistema
operacional Windows capaz de, basicamente, fornecer visualização do cenário virtual do
campus III da Unifesspa com poder de interação com esses artefatos a partir das mãos,
utilizando o sensor Leap Motion. O projeto evolucionário de interação enfatiza a representação
dos aspectos do software que serão possíveis aos usuários como layout da interface e os
67
formatos de exibição. Esse projeto momentâneo leva a construção de um protótipo que será
avaliado pelo público. O público por sua vez retornará um feedback à equipe de software que
irá aprimorar os requisitos. Sendo assim, a interação vai ocorrendo conforme vamos ajustando
o protótipo às necessidades dos usuários.
O objetivo inicial era desenvolver um protótipo com aspectos de RA, porém, houve
alguns percalços que afetaram esta etapa, conduzindo este requisitos para segunda versão do
protótipo evolucionário. Antes de mais nada, é importante ressaltar que desenvolver software
com aspectos de RA na ausência de um dispositivo específico, como o Hololens, pode ser
considerada uma tarefa relativamente um tanto quanto complexa, haja vista que os dispositivos
desta categoria possui uma Unidade de Processamento Holográfico (HPU), incorporada a um
coprocessador de Inteligência Artificial (IA) para implementar Redes Neurais Profundas
(DNNs) de maneira nativa e flexível, além do mais, também contam com sensores de
profundidade para proporcionar um melhor desempenho, especialmente para identificação de
planos. Portanto, na ausência desse equipamento é necessário desenvolver um software no qual
integre e incorpore todos os parâmetros citados em um dispositivo específico para RA. Para
tanto, buscando driblar essas adversidades o sistema faz uso do Vuforia, SDK que auxilia no
processo de desenvolvimento de RA, porém no processo de desenvolvimento do protótipo
percebeu-se a incompatibilidade na comunicação entre o SDK Vuforia, SDK Leap Motion e
Unity 3D. Trata-se do erro denominado pela equipe do Leap Motion como “error CS024”, após
entrar em contato com a equipe do Leap Motion foi informado que a partir da versão do 5.1 o
SDK Leap Motion deixou de admitir interação com SDK Vuforia, devido o SDK Vuforia
apresentar uma estrutura de plugins radicalmente diferente, incluindo grandes alterações na
HPU e nos scripts, razão pela qual os ativos deixaram de se comunicar. Portanto, essas
mudanças efetivamente abstrairam muitos dos métodos necessário para que haja uma
comunicação entre os ativos via Unity. Entretanto, desde então, a equipe do Leap Motion
permanece discutindo com a equipe Vuforia para garantir que os recursos funcionem
corretamente.
Dessa forma, o funcionamento básico do protótipo teve de ser repensado, a iniciar com
o modo de visualização, portanto, o foco do protótipo trata-se do emprego do Leap Motion
como forma de interação executando um ambiente virtual e manipulando seus artefatos a partir
de gestos, o software implementando a tecnologia do SDK Leap Motion irá exibir o ambiente
tridimensional onde o virtual estará disponível para manipulação. A fim de atender a eficiência
em experiência em interação por gestos, foi adotada a estratégia de desenvolvimento do
68
software utilizando SDK’s específicos para esta tarefa, que permite aos desenvolvedores criar
experiências de interação envolventes e alcançar uma audiência mais ampla.
À vista disso, o protótipo foi desenvolvido focando na simplicidade e facilidade de
utilização com o objetivo de simular alguns aspectos e recursos do sistema final. Desse modo,
é pertinente ter em mente que o protótipo é uma pequena parte de algo maior e que deve durar
apenas o tempo necessário para que haja um direcionamento do sistema e de potenciais
problemas.
Na tela inicial da aplicação são apresentadas os modelos tridimensionais do campus
III da Unifesspa e as mãos virtuais utilizadas para manipulação, conforme apresentado na
Figura 21.
Figura 21 - Tela inicial da aplicação de prototipagem.
Fonte: Autoria própria.
Ao abrir a aplicação, é exibido uma tela de visualização do cenário o qual é composto
por prédios virtuais e artefatos urbanísticos do campus acompanhado com as mãos virtuais,
que são geradas a partir do Leap Motion. Dessa forma, o usuário deverá então utilizar as mãos
para movimentar os objetos virtuais. De acordo com a movimentação das mãos do usuário a
direção e distância dos objetos são alteradas em relação ao novo ponto, conforme apresentado
nas Figuras 22.
Figura 22 - Interação com os objetos virtuais presente no cenário do sistema.
Fonte: Autoria própria.
Para a identificação das mãos é necessário a utilização do sensor somatossensorial Leap
Motion, que detecta as mãos e seus movimentos para torná-los uma ação no sistema, como
ilustra a Figura 23 abaixo. Além do mais, é importante salientar, para que o usuário seja capaz
de interagir com recursos disponíveis no ambiente virtual não há a necessidade de acoplar
70
qualquer aparato no corpo, sendo necessário apenas a presença no Leap Motion numa
superfície plana.
Figura 23 - Visão externa do sistema.
Fonte: Autoria própria.
4.2 Trabalhos Futuros
A ideia primordial do projeto é fornecer as funcionalidades essenciais com a maior
quantidade de interação possível. Para isso, não optou-se pela visualização padrão deste tipo
71
de aplicativo que é apenas a visualização em RA. Em vez disso, a aplicação contará tanto com
visualização em RA quanto interação a partir das mãos utilizando um sensor somatossensorial.
Para tanto, em equivalência com as problemáticas de compatibilidade entre ferramentas
abordadas no tópico acima crê-se no emprego do ARCore como solução, plataforma da Google
para criar experiências de RA. Haja vista que esta plataforma possui um método de
desenvolvimento mais ágil, onde se pode criar aplicativos imersivos sem precisar aprender
APIs relativamente complexas, como o OpenGL. Além do mais, o O ARCore não necessita de
nenhum hardware em especial, unicamente de um smartphone compatível. Entretanto, trata-
se de uma ferramenta relativamente nova que permanece em estado de desenvolvimento e que
possui características significantes que aumentam sua probabilidade de ser empregada no
projeto.
4.2.1 Documentação do software
Posteriormente será desenvolvido uma documentação acerca do software para auxiliar
no processo de interação com o sistema, assim o usuário poderá acessar um material de
treinamento com definição de funcionalidades, declaração de funcionamento, animações sobre
funcionamento da interação, permitindo que o mesmo descubra o funcionamento do sistema
conforme prescrito nas especificações. Podendo até ser ministrado treinamentos básicos sobre
o sistema ao grupo-alvo, ou seja, trabalhadores da construção civil, encarregados, operadores,
engenheiros e gerentes que trabalham nos locais de construção da Unifesspa para aplicar o
sistema em locais após todo o sistema ter sido testado.
4.2.2 Questionário
Para identificar a eficácia do sistema será realizado testes iniciais junto à SINFRA
(secretaria de infraestrutura da Unifesspa). Após os testes, para determinar a eficácia deste
sistema, será realizado entrevistas e questionários de pesquisa entre o grupo-alvo mencionado
utilizando a ferramenta Google Forms, serviço gratuito que permite a criação de formulários e
questionários, bastante útil para utilização em pesquisas que objetiva de coletar opiniões.
Portanto, para que a partir disso os benefícios potenciais deste sistema para a área da construção
possam ser determinados. Dessa forma, os resultados a serem alcançados no final do estudo
têm o potencial de melhorar os parâmetros de tempo, custo, qualidade e segurança, garantindo
um gerenciamento de construção eficiente e produtivo através de tecnologia de RA na
72
construção.
5. CONCLUSÃO
A possibilidade de antecipar eventos, proporcionar imersão do usuário ao ambiente,
viabilizando o aperfeiçoamento de processo, faz a RA ser considerado um instrumento que é
capaz de propiciar um grande avanço tecnológico para as áreas da Arquitetura e Construção
Civil, tendo em vista que o emprego deste projeto nesse cenário pode diminuir custos, além de
proporcionar detalhes que geralmente não são possíveis em outras ferramentas, de modo a
potencializar o processo de planejamento.
Levando em consideração que os envolvidos no processo de construção precisam
planejar a materialização de algo que ainda não existe, o que é exatamente o conceito no qual
este projeto busca se sobressair possibilitando visualizações prévias de eventos futuros,
possibilitando ao público a visualização do cenário tridimensional permitindo que eles
visualizem uma versão personalizada daquilo que se pretende construir e ainda possibilitando
a interação do usuário, momento em que o usuário deixa de ser apenas expectador para fazer
parte integrante do cenário com liberdade de movimentos manipuladores através das mãos, por
meio do Leap Motion.
Desse modo, este projeto busca como objetivo central a atuação como um instrumento
eficiente para descomplexificar etapas de planejamento de construção, até a manutenção de
edificações, no ambiente da unifesspa. Tendo potencial de auxiliar em todos os estágios da
construção, desde o projeto inicial, que corresponde ao planejamento, até as etapas de atuação
e manutenção, propiciando um maior entendimento acerca da disposição das construções
urbanas da universidade, favorecendo no que tange à discussão, seja entre a equipe de
planejamento ou até mesmo para equipe de operação. Assim alinhando os processos de
construção da unifesspa às novas possibilidades de tecnologia, reduzindo custos e tornando o
processo de construção mais eficiente.
À vista disso, projeto até o presente momento resultou num protótipo evolucionário,
onde é possível interagir, planejar e observar virtualmente os elementos presentes nos campi
da Unifesspa e interagir por meio do Leap Motion aplicando aspectos de RM, entretanto, ainda
sem experiência em RA, devido interferência temporárias de compatibilidades entre as
ferramentas Vuforia e Leap Motion, problemática que será sanada a partir da versão posterior
do projeto. Dessa forma, o projeto conta com a possibilidade de antecipar eventos ainda não
ocorridos, proporcionando a otimização de processos em muitos casos. Consequentemente, a
73
próxima versão do protótipo possibilitará ao usuário a sensação de se sentir imerso em um
ambiente a ser construído, de ter suas sensações aumentadas com o concatenação de modelos
virtuais ao mundo físico-sensorial, como a própria RA proporciona. Com efeito, estes
parâmetros fazem o projeto ser visto como promessa viável para aplicações úteis em processos
de construção futuras da Unifesspa.
Como citado, o projeto Visita Virtual Unifesspa atualmente se encontra em fase de
desenvolvimento, mas especificamente na etapa de desenvolvimento da segunda versão do
protótipo evolucionário, a qual emprega aspectos de RA. Os resultados que foram obtidos até
então mostram que o projeto pode oferecer resultados concretos e interessantes ao meio
científico da Unifesspa, já que o mesmo também é uma pesquisa científica e faz parte de um
projeto maior que engloba todos os campi.
As tecnologias e métodos citados permanecem sendo empregadas no desenvolvimento
do projeto, tendo em vista que várias interseções de arte e tecnologia podem produzir novas
maneiras de consumir mídia, interagir, regular o movimento e experimentar trabalhos,
adicionando, assim, a interação ao trabalho de arte de uma forma que envolve o espectador
como parte do trabalho e como ator ativo. Neste contexto, o projeto apresenta-se como
oportunidade para a implementação de tecnologias relevantes que auxiliam à universidade e a
sociedade.
Ademais, o desenvolvimento do projeto evidencia que a aplicação de RA na Arquitetura
favorece para a discussão detalhada de um projeto arquitetônico antes mesmo da construção de
uma maquete, possibilitando a visualização de qualquer modificação em tempo real, o que é
de grande ganho para os profissionais da área. Portanto, o uso da ferramenta abordada neste
trabalho nos projeto de construção contribui para discussão e avaliação efetuadas
simultaneamente por interessados como arquitetos, engenheiros, construtores e quem mais
estiver envolvido em seu planejamento, desenvolvimento e construção. A grande vantagem em
usar este tipo de tecnologia no planejamento das construções da Unifesspa é a facilidade de
interação e visualização da opinião de cada usuário, bastando para isso apenas pegar e arrastar
os prédios como se fossem simples caixas sobre um mapa numa mesa, assim os envolvidos
podem alterar um projeto em tempo real e verificar o resultado, com a possibilidade de análise
e manutenção da mudança, assim como a de continuar inserindo novos elementos para alcançar
o resultado esperado ou o que mais agradar os envolvidos, já representando um avanço difícil
de ser mensurado. Através dessas circunstâncias é possível observar a eficiência das
potencialidades da RA e do software em questão aplicada à Arquitetura.
Em síntese, esse estudo não busca simplesmente a construção de uma ferramenta virtual
74
interativa com o objetivo de auxiliar os arquitetos nas suas experimentações, mas também
objetiva mostrar o que isso representa, a influência do ciberespaço e o que realmente é esta
virtualização, chamando atenção para conceitos como descritos por Pierre Lévy.
6. Referências
BROLL W. et al. An Infrastructure for Realizing Custom-Tailored Augmented Reality User Interfaces. In:
IEEE Transactions on Visualization and Computer Graphics, v. 11, n. 6, pp. 722-733, 2005. Disponível em:
<http://ieeexplore.ieee. org/>. Acesso em: 09 junho 2018.
FILHO, Wilson de Paula Filho. Engenharia de Software - Fundamentos, métodos e padrões. Rio de janeiro,
Editora LTC, 2009, 3º ed.
FIRMINO, R. J. - Espaços Tecnológicos: O Desenvolvimento tecnológico e a configuração urbana e regional.
Escola de Engenharia de São Carlos da Universidade de São Paulo - USP, 2006, São Carlos, SP, Brasil.
GUIMARÃES M. P., GNECCO B. B., Damazio R. Ferramentas para Desenvolvimento de Aplicações de
Realidade Virtual e Aumentada, 2011, SRV, Petrópolis - Rio de Janeiro.
KIRNER, C.; SISCOUTTO, R. A. Fundamentos de Realidade Virtual e Aumentada. Realidade Virtual e
Aumentada: Conceitos, Projeto e Aplicações, p. 9–21, 2007.
KIRNER, C.; KIRNER, T. Realidade virtual e aumentada: Aplicações e tendências. realidade virtual e
aumentada: Aplicações e tendências. Evolução e Tendências da Realidade Virtual e da Realidade
Aumentada, 2011. SBC, Porto Alegre, RS, Brasil, v. 1, n. 6, p. 8–23, 2011.
KOHLES, C., Augmented reality In Museums: 6 Success Stories. 2017, Disponível em:
<https://www.wikitude.com/blog-augmented-reality-museums/>. Acesso em: 22 Fev. 2018.
LAMB P., “ARToolKit Documentation”, 2006, Disponível em: <http://artoolkit.sourceforge.net/apidoc/>
75
Acesso em: 04 fevereiro 2018.
LÉVY, Pierre. O QUE É O VIRTUAL?. São Paulo: Editora 34, 2011. 2º ed.
LEVÝ, Pierre; AUTHIER, Michel AS ÁRVORES DO CONHECIMENTOS. São Paulo: Editora 34,1995. 2.ed.
LÉVY, Pierre. CIBERCULTURA. São Paulo: Editora 34,1999. 1.ed.
LEAP MOTION. (2017) Leap Motion Gesture. Disponível
em:<https://developer.leapmotion.com/documentation/v2/csharp/devguide/Leap_Gestures.html>. Acesso
em: 02 dez. de 2017.
LEAP MOTION. (2017) Leap Motion Introduction. Disponível em: <https://developer-
archive.leapmotion.com/articles/intro-to-motion-control>. Acesso em: 02 Fev. de 2018.
MACHADO L. S. Dispositivos Hápticos para Interfaces de Realidade Virtual e Aumentada. 2011, João
Pessoa, PB, Brasil.
MENDONÇA R. L.; MUSTARO P. N., Como tornar aplicações de realidade virtual e aumentada, ambientes
virtuais e sistemas de realidade mista mais imersivos, 2011. SRV, Uberlândia, MG, Brasil, v. 1, 2011.
RODELLO R. A.; BREGA J. R. F., Realidade Virtual e Aumentada em Ações de Marketing, 2011. SRV,
Uberlândia, MG, Brasil, v. 1, 2011.
SOUZA, J. O. de; BOTEGA, L. C. Desenvolvimento de navegador de realidade aumentada para exploração
regional de zonas de interesse. REGRAD - Revista Eletrônica de Graduação do UNIVEM, 2013. v. 6, 2013.
ISSN 1984-7866. Disponível em: <http://revista.univem.edu.br/index.php/REGRAD/article- /view/442/334>.
SCRIBONI, G. S. - UM DIRECIONAMENTO ÀS NOVAS TECNOLOGIAS NA ARQUITETURA:
Habitação de um futuro presente, em um espaço para a vida. Universidade Estadual Paulista – UNESP, 2011,
Votuporanga, SP, Brasil.
TORI, romero; KIRNER, cláudio; SISCOUTO robson - Fundamentos e tecnologia de Realidade Virtual e
Aumentada, Belém-Pará: Editora SBC – Sociedade Brasileira de Computação, Porto Alegre, 2006.
TORI, romero; KIRNER, cláudio; SISCOUTO robson - Realidade Virtual e Aumentada: Conceitos, Projeto e
Aplicações, Editora SBC – Sociedade Brasileira de Computação, Petrópolis-Rio de Janeiro, 2007.
UNITY. Comunidade Unity Engine. Disponível em: <https://unity3d.com/pt/community>. Acesso em: 18 de
janeiro de 2018.
76