Estudo

 

Nesta parte descreverei os principais tópicos, conceitos e idéias que estudei e pesquisei sobre as interfaces e ambientes tridimensionais e áreas relacionadas, sem falar sobre ferramentas ou implementação.

 

Definições

 

Para começar o projeto, defini alguns termos básicos para melhor compreensão, termos estes que listarei abaixo. Não entrarei em muitos detalhes, mas fornecerei as definições que permitiram um melhor entendimento sobre a área e o projeto.

  • Ambiente: uma coleção de elementos computacionais que provê algum tipo de serviço ao usuário.


  • Interação: comunicação, diálogo ou colaboração entre duas partes.


  • Tridimensionalidade: que apresenta ou cria a ilusão de altura, largura e profundidade.


  • Interface de Usuário: a parte visível de um sistema, através do qual o usuário e a aplicação se comunicam. Isso inclui tanto o hardware quanto o software que estão envolvidos na interação.

 

Um pouco sobre Interação Humano-Computador

 

O que é Interação Humano-Computador?

 

Interação Humano-Computador (IHC) é a área da Ciência da Computação preocupada com o projeto, análise e implementação de sistemas interativos para o uso do homem e o estudo dos fenômenos que o cercam.

 

 

Por que estudar IHC?

 

Muitos pensam que o desenvolvimento da interface e da interação com o usuário é a parte mais fácil de um sistema, deixando sua implementação por último. Mas como todo o sistema deve suportar interação com as pessoas, devemos sempre pensar no design para os usuários. Não basta apenas ter a tecnologia. Devemos fazer com que ela seja utilizável. E sistemas com melhores interfaces aumentam a produtividade, melhoram a performance e aumentam a satisfaçam das pessoas que a utilizam.

 

 

Desafios De IHC:

  • garantir designs que ofereçam uma “boa IHC” ao mesmo tempo que exploram o potencial e funcionalidade das novas tecnologia.


  • projetar boas interfaces cujos controles tenham operações e efeitos relativamente óbvios e que provêem um feedback imediato e útil

 

Objetivos De IHC:

  • produzir sistemas usáveis, seguros e funcionais.


  • desenvolver ou melhorar a segurança, utilidade, efetividade e usabilidade de sistemas computacionais.

 

Princípios:

 

No campo de IHC, muitos trabalhos foram realizados para desenvolver princípios e técnicas para a melhor compreensão e geração das interfaces de usuário.

 

Alguns dos princípios que gostaria de citar são os descritos por Norman, no trabalho intitulado The Design of Everyday Things (Norman, 1990), onde o autor toma como ponto de partida os objetos que utilizamos em nossas casas, escolas e escritórios para extrair princípios de design aplicáveis as interfaces de usuário. Como um dos propósitos de muitos ambientes tridimensionais (assim como o deste projeto) é representar um mundo próximo da realidade, é interessante darmos uma importância a tais princípios:

  • capacidades (affordance): referem-se as propriedades percebidas e as propriedades reais de um objeto que determinam como ele pode ser usado. Ou seja, é o auxílio que o próprio objeto oferece para que possamos perceber o que pode ser feito com ele. Como exemplo temos: teclas são para pressionar, tesouras para cortar, etc.
    Quando se tem a predominância da affordance no sistema, o usuário sabe o que fazer somente olhando, não sendo preciso rótulos ou instruções


  • visibilidade: indica para o usuário o estado da aplicação e as alternativas de ação apenas pela simples observação. Mas lembremos que apenas as coisas necessárias têm que estar visíveis.


  • restrições: são limitações no uso de um objeto que guia o usuário para as ações apropriadas.


  • bom modelo conceitual: um bom modelo conceitual permite aos usuários prever o efeito de suas ações. Sem um bom modelo, opera-se sob comando, cegamente, o que pode gerar desinteresse pela aplicação.


  • bom mapeamento: o bom mapeamento significa que o modelo conceitual na qual o objeto é baseado é facilmente compreendido no domínio específico da aplicação. A idéia é utilizar modelos mentais (a compreensão de um usuário da operação sobre um objeto) e metáforas (usando o conhecimento de um conceito ou objeto já conhecido para explicar o funcionamento de uma operação) para fazer o mapeamento. O uso de metáforas é uma estratégia importante para Interfaces de Usuário, pois podemos explicar para o usuário como utilizar um software em termos de algo que a pessoa já tem conhecimento. O risco é  que uma metáfora inapropriada pode confundir o usuário, ou que uma metáfora forçada pode degradar a performance.

    Com bons mapeamentos, é possível determinar relações entre:

     - Ações e resultados

     - Controles e seus efeitos

     - O estado do sistema e o que é visível


  • feedback: é a indicação ou resultado dado pela aplicação do estado da operação, para ajudar os usuários a entender o que aconteceu para que a próxima ação seja planejada e executada.

 

Conceitos sobre percepção e psicologia cognitiva

 

Dado a importância dos fatores humanos em IHC, é natural estudar um pouco sobre as capacidades humanas em geral. Muitas destas informações vem das áreas da psicologia da percepção e da psicologia cognitiva. A psicologia perceptiva estuda as maneiras como as pessoas percebem seu ambiente através de seus sentidos, enquanto a psicologia cognitiva é focada nos aspectos mentais (como as pessoas raciocinam, aprendem, lembram-se, etc).

Como a maioria das interfaces tem grande apelo visual, estudaremos melhor a percepção visual.

 

Existem duas teorias sobre a percepção visual: a construtivista e a ecológica

  • A abordagem construtivista: A percepção visual do mundo é construída a partir das informações do ambiente e do conhecimento prévio armazenado. O conhecimento de cada um pode transformar, distorcer, ampliar ou descartar aquilo que está sendo percebido. Tem sido usada para auxiliar no design de displays de informações de forma a torná-la rapidamente perceptível


  • A abordagem ecológica: Argumenta que a percepção é um processo direto e contínuo que ocorre através da exploração em colaboração com os outros sentidos (audição, olfato, tato e paladar).  Tem sido usada para auxiliar no design de objetos da interface - affordance.

Em particular para os ambientes tridimensionais, a percepção visual de profundidade é crucial, pois o que queremos é representar um "mundo" 3D através de displays 2D. Algumas das características relevantes quanto a visualização de profundidade são:

  • Tamanho: Objetos idênticos com tamanhos maiores parecem estar mais perto que o menores.

  • Interposição: Se um objeto está desenhado por cima de um outro, entende-se que o primeiro está a frente do segundo

  • Contraste, claridade e brilho: Objetos mais brilhantes e claros aparentam estar mais perto.

  • Sombras: Sombras podem ser utilizadas para indicar o posicionamento do objeto em relação a outros

  • Textura: Objetos com textura mais detalhada aparentam estar mais próximos

 

Em relação aos aspectos cognitivos, um importante conceito desenvolvido é o modelo mental. Tal modelo é a representação dinâmica sobre qualquer sistema ou objeto, que evolui naturalmente na mente de uma pessoa.
Interagindo com o ambiente, com outros e com artefatos tecnológicos, as pessoas constroem Modelos Mentais das coisas, que apesar de serem algumas vezes incompletos e imprecisos, podem ajudar no desenvolvimento de interfaces mais adequadas a cada interação com o sistema.
 

 

Computação Gráfica 3D

 

A Computação Gráfica é a área da Ciência da Computação preocupada com a geração, manipulação e visualização de imagens através dos computadores.

 

Inicialmente, a computação gráfica em três dimensões era de uso exclusivo de laboratórios de pesquisa que possuíam super-computadores. Mas com a evolução e aumento no poder de processamento dos computadores assim como o aprimoramento de aceleradores gráficos os  gráficos tridimensionais podem ser utilizados em maior quantidade e em grande parte os computadores nos dias de hoje. Porém devemos lembrar que se comparado com o processo de visualização bidimensional, a visualização de objetos tridimensionais é bastante complexa. Esta complexidade deve-se, basicamente, ao fato de que os dispositivos gráficos existentes são adequados à apresentação de imagens planas, bidimensionais.

 

Exemplo de gráficos tridimensionais

Exemplo de gráficos bidimensionais

 

 

Visualização: Profundidade

 

Um aspecto relevante na computação gráfica 3D que não é preocupação quando estamos trabalhando em ambientes bidimensionais é a representação do conceito de profundidade nas imagens geradas. Ainda que trabalhemos com modelos tridimensionais digitais, temos uma limitação importante: os dispositivos de saída que utilizamos são bidimensionais - monitores de vídeo, impressoras.

 

Em meio digital, é preciso constantemente fazer uma transposição do que é tridimensional (modelo) para o que é bidimensional (tela ou papel). Os modelos 3D devem ser convertidos a imagens 2D por ocasião de sua transferência para os dispositivos de saída físicos (Venetianer, 1988). Para isso são utilizadas técnicas de projeção.

As técnicas de projeção são baseadas na operação onde um conjunto de raios emanados de um centro de projeção - ou ponto focal - passa através de cada ponto do modelo, interceptando um plano de projeção. Todo o problema matemático da projeção consiste em se determinar as coordenadas dos pontos do modelo neste plano.

 

A projeção (geométrica planar) de que falamos pode ser dividida em dois tipos clássicos: a paralela e a perspectiva.  A diferença está na distância entre o centro e o plano de projeção. Se esta distância for infinita, temos a projeção paralela. Se for finita, temos a projeção perspectiva.

  • Na projeção paralela, todos os raios de projeção são paralelos (já que o centro de projeção se encontra a uma distância infinita do plano de projeção), não sendo definido seu centro, mas sua direção. Nela, os modelos possuem forma e escala preservados, apresentando um aspecto não muito realista. É a principal projeção utilizada durante o trabalho de modelagem pois, por não apresentar deformações, permite-nos visualizar com mais clareza nossas alterações no modelo.



  • Na projeção perspectiva, o centro de projeção encontra-se a uma distância finita do plano de projeção. Os objetos sofrem deformações, criando uma representação bem realista, por simularem a maneira como nossos olhos percebem os objetos no espaço. Nela, encontramos duas características básicas: o encurtamento perspectivo, ou seja, a ilusão de que objetos são cada vez menores à medida em que sua distância ao plano de projeção aumenta; e os pontos de fuga, decorrentes da ilusão de que linhas paralelas (desde que não sejam paralelas ao plano de projeção) convergem a um determinado ponto. Este tipo de projeção é muito mais usado para visualizar o modelo acabado, ou ter uma noção de como este está ficando, do que para dar suporte à sua construção.

Projeção paralela Projeção perspectiva

 

 

Visualização: Acabamento

 

Em decorrência da projeção, todos os elementos do modelo - arestas, faces, malhas - acabam aparecendo. Isso gera uma visualização confusa, dita visualização em wireframe (estrutura de arame). Para melhorar a visualização dos modelos tridimensionais após a projeção, há vários algoritmos e técnicas:.

  • Remoção de arestas e faces ocultas :  Após a projeção, uma série de arestas e faces que estão total ou parcialmente encobertas por elementos mais próximos do observador acabam aparecendo. É, então, preciso eliminá-las. Em geral, são aplicados algoritmos de remoção de linhas escondidas (hidden line/surface removal), passo obrigatório para todas as técnicas de acabamento. De todos os algoritmos para determinação de superfície visível, o buffer de profundidade ou zBuffer é talvez o método mais simples e com certeza o mais amplamente utilizado.

hidden line/surface removal  e shading

 

  • Sombreamento  ("shading") : A palavra shading - sombreamento - não possui significado muito coerente com o que efetivamente representa mas, apesar disso, é a palavra utilizada para designar a ação de conferir acabamento colorizado às superfícies dos modelos. Pode significar um acabamento simples com apenas cores - e sem nenhuma sombra, assim como pode significar um acabamento sofisticado com sombras, texturas, relevo, reflexão e transparência.

 

Modelagem 3D

 

Não podemos falar sobre Computação Gráfica 3D sem citar um pouco sobre a modelagem tridimensional.

 

A modelagem 3D não é apenas uma forma de representar um objeto tridimensional,  mas um processo onde se define o objeto nas suas três dimensões físicas. Então, não temos no final uma figura (ainda que só possamos ver uma imagem 2D através do monitor) mas sim a definição espacial de tal objeto.

 

O uso de elementos 3D é uma tendência formal e funcional devido à sua praticidade construtiva, e tem como objetivo reproduzir o mais fiel possível uma realidade material. Além disso, os próprios modelos em programação 3D destinam-se a extrair o melhor das nossas modernas placas 3D aceleradas.

 

A vantagem da modelagem sobre a manipulação de um desenho ou fotografia é que pode-se literalmente reinventar os modelos em qualquer posição. A desvantagem é que (ainda hoje) temos limitações do próprio hardware. A ciência da modelagem tem se esmerado na busca por uma solução de compromisso, onde nos aproximamos ao máximo de modelos reais, sem contudo comprometer demais a performance.

 

Modelar um objeto é relativamente simples, porém exige visão espacial e algum trabalho. Neste segmento da computação gráfica não se obtém resultados da noite para o dia. E em geral, os programas para modelar são invariavelmente comerciais, complexos e caros.

 

 

Ambientes Tridimensionais

 

Após adquirir uma base dos conceitos mais gerais, aprofundei-me no tópico específico sobre tridimensionalidade e os ambientes interativos, o porquê utilizá-los e os problemas gerados pelo se uso.

Os Ambientes Interativos Tridimensionais são uma variedade das interfaces de usuário que permitem a interação com objetos em três dimensões. Um cenário dinâmico armazenado em computador e exibido, em tempo real, através de técnicas de computação gráfica.(Pinho, 2000)


Podemos classificar os ambientes 3D em dois tipos:
 

Não-imersivos: ambientes que não necessitam de aparelhos especiais. A visualização e a interação são feitas através de equipamentos convencionais, como o monitor, mouse e teclado. Como esses equipamentos são próprios para ambientes 2D, devemos adaptá-los para sistemas 3D.
File System Navigator (FSV)

Imersivos: quando o usuário está "dentro" do espaço, ou seja, o ambiente virtual o "cerca" e todas as partes do mundo real que não fazem parte do ambiente virtual são bloqueados da visão. Assim, as imagens são exibidas ao usuário de tal forma que o faça acreditar que ele está imerso naquele ambiente. Isso é possível com equipamentos especiais, tais como óculos de realidade virtual. A interação também exige equipamentos próprios, tais como luvas.
Como exemplo, estão inclusas neste tipo de ambiente as chamadas "realidades virtuais".

Realidade Virtual (NASA)


 

Vantagens:

  • Como vivemos em um mundo com 3 dimensões, talvez possamos utilizar as nossas habilidades espaciais naturais para melhorar a eficácia dos trabalhos realizados com um ambiente tridimensional.
     

  • Permite utilizar metáforas encontradas no mundo real em ambientes tridimensionais, aproveitando assim nosso conhecimento natural dos objetos para tornar a interface mais amigável. Nos dois casos citados, queremos aproveitar os aspectos cognitivos do usuário e utilizá-los para melhorar a interface.
     

  • Diminuir a complexidade de visualização de imagens e modelos 3D. Esta é mais específica de alguns aplicativos.

 

Desvantagens e problemas:

  • Não há ainda um padrão para esse tipo de ambiente
     

  • Este tipo de ambiente pode causar sintomas prejudiciais ao usuário, pois pode confundir seus sentidos (visão com o sentido vestibular por exemplo).
     

  • Pode depender da percepção e capacidade cognitiva de cada usuário.
     

  • Grande complexidade de design: a introdução de uma dimensão abre diversos problemas a serem explorados:
      - Problemas de navegação e localização, pois há a possibilidade do usuário se "perder" no  ambiente.
      - Problemas com o grau de liberdade de movimento dos usuários;
      - Problemas com a dimensão/escala, oclusão e colisão entre objetos

 

Áreas de aplicação:

  • Para Ambientes Não-imersivos:

     

    Onde mais se aplica os gráficos 3D atualmente são nos ambientes não-imersivos. Eles estão bastante difundidos e várias áreas já utilizam de seus benefícios.

     

    • Visualização de informação: pode-se utilizar ambientes não-imersivos para facilitar a visualização de elementos 3D (para aplicações médicas, por exemplo).

    • CAD: (Computer Aided Design) são sistemas projetados para facilitar o processo de criação e manipulação de modelos bidimensionais ou tridimensionais. Também estou incluindo aqui os programas de modelagem e animação.

    • Entretenimento: A indústria de jogos eletrônicos já utiliza os gráficos 3D para fazer simulações de ambientes virtuais não-imersivos com bastante interatividade. Como exemplo temos principalmente os jogos em primeira pessoa.

    • Trabalho cooperativo através do computador: são aplicações onde pessoas trabalham juntas utilizando computadores. Os usos típicos incluem correio eletrônico, jogos multi-jogador e aplicativos compartilhados (desenho colaborativo, por exemplo).


  • Para Ambientes Imersivos:

    Os ambientes virtuais imersivos tem crescido muito nos últimos anos. Cada vez mais áreas estão buscando nesta ferramenta um melhor suporte ao processo de interação homem-máquina.

    Atualmente por exemplo, a comunidade de arquitetura já busca formas não só de visualizar os ambientes com imersão, mas está buscando principalmente, interagir e projetar seus espaços em ambientes imersivos.

    O outro exemplo são as aplicações de visualização científica, nas quais, os cientistas podem ver e interagir com cenas e objetos complexos de uma a forma muito mais rica, poderosa e intuitiva do que através de uma tela de computador, além de poder situar‑se dentro do experimento sem afetar sua simulação.

    Mais exemplos são:

    • Experiências de imersão: para tratamento psicoterápico [Rothbaum 1995; Shinomiya, 1997; Rizzo, 2000] ou entretenimento e educação [Pausch 1996; Johnson, 1998; Goebel, 1999; Sommerer, 1999, Sommerer, 1999]


    • Treinamento: Cirúrgico [Chua, 1998; Burdea, 1998; Stansfield, 1998; Zhu, 1999], Militar [Macedonia 1994; Julier, 1999] ou na Manutenção: [Wilson 1995; Jayaram, 1999; Fröhlich, 2000]


    • Visualização de ambientes inexistentes perigosos ou impossíveis:  Simulação de Colisões: [Schulz, 1998], Dinâmica de Fluidos: [Bryson 1992] ou Manipulação de Dados Geográficos [Lin, 2000, Wan, 2000]

    Apesar destes exemplos, o número de aplicações bem sucedidas de ambientes virtuais ainda é pequeno e fica restrito aos limites dos laboratórios de pesquisa. A maioria das aplicações de sucesso é representada por sistemas de visualização espacial. Nessas aplicações faz-se um grande uso da possibilidade que os ambientes imersivos têm de que o usuário mova-se dentro do mesmo e visualize o ambiente de diversas posições, sem, entretanto, haver a necessidade de um alto grau de interação entre o usuário e os objetos do ambiente.

 

 

Interação em Ambientes Interativos Tridimensionais


 

A interação com objetos em ambientes tridimensionais é realizada com objetivo de efetuar operações de navegação, seleção e manipulação no ambiente tridimensional:

  • Navegação: talvez a tarefa mais comum. Pode ser definido como o processo de determinar e percorrer um caminho através do ambiente.
     

  • Seleção: é a simples escolha de um objeto para um dado fim.
     

  • Manipulação: especificar as propriedades do objeto selecionado (geralmente mudar sua posição e orientação)

Há mais uma tarefa específica que incluímos, que seria o Controle de sistema, ou seja, a tarefa de mudar o estado ou modo de interação (exemplo em sistemas 2D são os menus). Fazem parte do controle de sistema as operações para manipular características globais do ambiente virtual como, por exemplo, ativar ou desativar um som, definir o modo de exibição dos objetos, salvar ou carregar um arquivo ou o controle de características intrínsecas dos objetos. Não discutiremos mais a fundo pois este é basicamente uma tarefa presente também nos ambientes bidimensionais, sendo amplamente conhecidas.

 

Dividimos a interação através da classificação do ambiente: não-imersivos e imersivos.

 

 

1 ) Interação em Ambientes Não-imersivos:

 

Nestes sistemas o usuário observa os objetos tridimensionais projetados em uma janela na tela de um computador. Para a geração desta projeção parte-se de modelos de objetos tridimensionais e da posição de um “observador virtual”.

Em ambientes tridimensionais não‑imersivos, a interação com um objeto é feita através de mouse, teclado ou o outro dispositivo e tem como objetivo efetuar operações de seleção e manipulação sobre estes objetos ou então para realizar alterações na configuração do observador do ambiente virtual.

Em todos estes casos, a imagem está sendo exibida sobre uma tela de computador, através de uma projeção bidimensional (paralela ou perspectiva).

  • Navegação:

    A navegação em um ambiente tridimensional, imersivo ou não, caracteriza‑se, em última instância, pelo deslocamento de um observador virtual dentro do modelo geométrico do cenário que se está interessado em visualizar.

    Um observador de um ambiente gráfico, daqui para frente, chamado simplesmente de observador ou observador virtual ou ainda de câmera, por ser semelhante a uma câmera fotográfica, é composto de uma posição, de um ponto de interesse e de um ângulo de visão. A posição define de onde o observador está olhando o ambiente, o ponto de interesse define o local para onde o observador está olhando, e o ângulo de visão, a porção do ambiente que pode ser visualizada.

    As formas de controle da navegação podem ser divididas em:

    • metáfora de controle direto: onde efetuam‑se as alterações diretamente sobre a imagem da câmera, ou seja, as entradas do mouse, teclado ou outro dispositivo controlam a câmera diretamente.

    • metáfora de controle indireto. onde utilizam-se controles de interfaces para manipular a câmera virtual. No caso de navegação, os parâmetros da câmera a serem controlados são a posição do observador e do ponto de interesse e o ângulo de visão. Para efetuar estas alterações, em geral, são usados controles como sliders ou spins. Entretanto, outros tipos de elementos de interface podem ser usados. Um exemplo disso é a possibilidade de se acessar, através de menus, as posições onde se deseja que o observador seja posicionado.

     

  • Seleção:

    A seleção de um objeto dá-se, em geral, pela simples marcação de um ponto ou de uma janela sobre a imagem perspectiva do objeto de interesse. Para identificar qual dos objetos está sendo selecionado, o sistema de interação pode tanto utilizar um envelope (retangular ou não) que envolve sua projeção, quanto determinar se o ponto informado está ou não dentro do polígono bidimensional que forma sua projeção.

    Um ponto essencial durante a seleção do objeto é a exibição do mesmo, ou de uma de suas partes, com alguma diferenciação dos demais, a fim de indicar que a seleção foi efetuada. Alguns softwares fazem esta diferenciação exibindo os manipuladores sobre o objeto, outros apenas alteram suas cores ou as cores de suas partes.

 
Seleção  
  • Manipulação:

    As metáforas de interação em ambientes não-imersivos podem ser classificadas de acordo com a forma como o usuário altera os valores que definem os parâmetros de rotação, escala e translação. Esta manipulação pode ser feita direta ou indiretamente.

  •  

    • Manipulação direta: é aquela em que o usuário opera diretamente sobre a projeção perspectiva do objeto na tela.

    • Esta projeção pode ser tanto um conjunto de vistas ortográficas, quanto uma imagem em perspectiva.

    • Manipulação indireta é aquela em que o usuário opera sobre algum tipo de “entidade intermediária” que permite a geração de novos valores a serem usados na modificação dos parâmetros do objeto. Estas “entidades intermediárias” podem ser tanto dispositivos especiais, quanto objetos de interface, os chamados widgets.

 

2 ) Interação em Ambientes Imersivos:

 

O uso de interação em ambientes tridimensionais imersivos tem crescido muito nos últimos anos. Cada vez mais áreas estão buscando nesta ferramenta um melhor suporte ao processo de interação humano-computador.

Para este tipo de ambiente, podemos definir três categorias, de acordo com tipo de controle exercido pelo usuário:

  • Interação direta: esta categoria inclui as técnicas interativas que se utilizam o corpo do usuário (mãos, braços, cabeça, etc) atuando diretamente sobre o objeto através de um “toque virtual” sobre este. Para tanto se faz necessário que o sistema de realidade virtual possua funções de suporte ao rastreamento das mãos e da direção do olhar,  reconhecimento de gestos e detecção do apontamento de um objeto. Esta é a categoria mais comum nas implementações de ambientes virtuais.

  • Interação com controles físicos: esta categoria inclui o uso de botões, joysticks, pedais, etc. Usar controles físicos para interagir com um mundo virtual (como um volante em um simulador de carro) pode aumentar enormemente a sensação de presença do usuário no mundo virtual, pois permite ao usuário algum tipo de sensação tátil não disponível na interação direta. Dispositivos físicos também são úteis para o controle preciso da tarefa de interação. Estes dispositivos, no entanto, nem sempre oferecem um mapeamento natural que facilite a tarefa de interação no mundo virtual.

  • Controles virtuais: a idéia neste caso é representar visualmente um dispositivo físico. Qualquer coisa que se imagine pode ser implementada como um controle virtual. Esta grande flexibilidade é a vantagem maior dos controles virtuais, entretanto, as desvantagens incluem a falta de um retorno sensorial e a dificuldade de interação com o objeto virtual.

Agora, apresento as tarefas:

  • Navegação:

    O mapeamento do movimento físico (como o andar, por exemplo) para o movimento virtual, é uma das maneiras mais intuitivas de se realizar a navegação em um ambiente virtual.

    A desvantagem de usar o movimento físico para mover-se no mundo virtual, é que o alcance do movimento do usuário depende diretamente da tecnologia de rastreamento utilizada na aplicação. Quando se opta por rastrear o movimento do corpo do usuário com rastreadores, fica‑se restrito, na maioria dos casos, a uma área de trabalho (área de rastreamento) de 1 a 2 metros, o que, muitas vezes, não proporciona uma adequada mobilidade do usuário no ambiente.

    Outras alternativas para captura do deslocamento são as “plataformas de movimento” [Noma, 2000] que permitem ao usuário mover‑se dentro do ambiente “caminhando” de forma estacionária sobre uma esteira ou sobre degraus móveis . Estes dispositivos, entretanto ainda são pouco confiáveis e muito caros para serem montados.

    Estas observações mostram que alguns meios alternativos para deslocamento devem ser encontrados. Em função dessa dificuldade em realizar a movimentação natural em um mundo virtual, costuma‑se controlar o processo de deslocamento através da direção do movimento.

    O controle da direção do movimento pode ser feito de diversas formas, tais como: com o movimento da mão (depende da orientação corrente da mão do usuário que pode apontar a direção a seguir), através de objetos-alvo (A direção do movimento é dada por um vetor que sai da cabeça do usuário e vai até o objeto de interesse), movimento da cabeça (o usuário escolhe a direção a seguir pelo simples gesto de movimentar sua cabeça livremente), ou uso de dispositivos físicos (joysticks, mouse tridimensional, etc).

     

  • Seleção:

    No processo de seleção pode-se identificar duas etapas. Na primeira, a indicação do objeto, o usuário “mostra” ao sistema qual o objeto deseja manipular. Na segunda, a confirmação da seleção, o usuário define o objeto como selecionado, concluindo o processo de seleção e permitindo, a partir disto, a manipulação.

    Há várias técnicas de seleção para ambientes imersivos, a citar algumas:

    • Seleção Direta: Para selecionar apenas objetos próximos a seu corpo, o usuário pode mover um cursor, que pode estar preso à sua mão, e quando este estiver tocando o objeto, pode-se confirmar a seleção.

    • Extensão de braço: nessa categoria o braço do usuário é estendido de forma a atingir qualquer objeto dentro do ambiente virtual. A grande vantagem desta metáfora é a possibilidade de continuar a usar os movimentos das mãos para realizar a tarefa, o que representa uma forma bastante natural e intuitiva de interação, e ao mesmo tempo atingir objetos que estão além de seu campo de ação.

    • Seleção por Raio (Ray-casting): o conceito de apontar o objeto em uma imagem bidimensional é estendido para um ambiente tridimensional. Nela, um raio controlado pelo usuário atinge o objeto a ser manipulado. No uso de raios para a seleção, uma dificuldade é a precisão para o apontamento de objetos distantes. Para solucionar este problema pode se permitir que o usuário efetue escalas no ambiente virtual mudando assim o tamanho dos objetos. Outra alternativa é a idéia de usar‑se cones de luz no lugar de raios de apontamento (Spotlight). Assim, à medida que a distância a partir do início do raio aumenta, a área atingida por ele também cresce formando uma espécie de cone.

    • Image-plane: nestas técnicas o aspecto tridimensional do ambiente virtual não é considerado, sendo feita uma seleção sobre a projeção perspectiva da cena tridimensional. Na verdade, esta metáfora é uma adaptação da metáfora de ray-casting. Neste caso, o raio parte do olho do usuário e tem sua direção controlada por sua mão ou um outro dispositivo, atingindo o objeto desejado.

Seleção/Manipulação Direta Ray-Casting Image-plane
  • Manipulação:

    Para efetuar a manipulação de objetos (após selecionados) podemos utilizar várias  operações e técnicas, a citar:

    • Manipulação Direta:

      Na manipulação direta, o usuário “pega” o objeto virtual com a mão, move-o no ambiente virtual com o movimento do braço e “larga‑o” quando julgar que a tarefa está concluída, exatamente como faria com um objeto real. 

      A implementação desta técnica pressupõe o rastreamento da posição da mão do usuário a fim de capturar seus movimentos (rotação e translação) e transferi‑los ao objeto selecionado.

      Esta técnica, entretanto, tem limitações já mencionadas anteriormente quando da análise dos aspectos de seleção direta. O principal problema diz respeito à distância máxima dos objetos em relação ao usuário.

    • Manipulação por Raios: Quando se utiliza a técnica de seleção por raios pode-se aproveitar a metáfora de seleção e estendê-la para aplicar rotação e translação. O esquema de manipulação mais comum é prender o objeto ao raio no ponto de intersecção.

    • Controles Físicos: Os controles físicos, como mouse tridimensional ou rastreadores de posição, são bastante interessantes e podem dar ao usuário um grande poder de interação, em especial no que diz respeito à precisão, pois o movimento e o controle dos graus de liberdade podem ser feitos de forma individual e seletiva. As formas de uso dos dispositivos são as mais variadas e dependem das capacidades do dispositivo, das necessidades da aplicação e das habilidades do usuário. Entretanto, como estes dispositivos não têm paralelo nas tarefas rotineiras da maioria das pessoas, seu uso pode causar dificuldades, principalmente aos usuários iniciantes.