Interação com o ambiente 3D é ao mesmo tempo interessante e desafiador. Trata-se de uma ferramenta excelente para demonstrar os conceitos de programação 3D, fornecer mais detalhes dos modelos 3D e da realidade virtual e também prender a atenção de alunos em aula.
O Lab3D permite ao usuário interagir com modelos 3D e desenhar na tela utilizando o WiiMote. Veja o vídeo abaixo para ver um exemplo de como usar o WiiMote para interagir com a realidade virtual.
2. Conectando o WiiMote
Em primeiro lugar, recomento fazer o download do WiiMote Library do site http://wiimotelib.codeplex.com/. No download do pacote é possível encontrar o programa WiiMoteTest, uma excelente ferramenta para verificar se o WiiMote está funcionando adequadamente.
Para conectar o WiiMote, siga os passos:
1- Abra a janela de conexões Bluetooth (use o Painel de Controle ou clique com o botão direito sobre o ícone do Bluetooth); 2 - Escolha a opção Adicionar Dispositivo (Add Device); 3 - Aperte simultaneamente os botões "1" e "2" do WiiMote. Os LEDs vão começar a piscar; 4 - Se você estiver usando o Windows 7, o sistema detecta o WiiMote automaticamente. No Windows XP é necessário comandar o sistema para que ele busque novos dispositivos; 5 - O WiiMote será identificado como Nintendo RVL-CNT-##; 6 - Selecione a opção de conectar sem código (pair without code) e clique em continuar, ainda pressionando os botões 1 e 2; 7 - O Windows irá detectar o WiiMote como dispositivo HID; 8 - Ainda apertando os botões 1 e 2, execute o programa WiiMoteTest ou use o menu WiiMote -> Inicializar do Lab3D para finalizar a conexão do WiiMote; 9 - Quando os LEDs pararem de piscar o WiiMote estará conectado corretamente e pode-se soltar os botões 1 e 2.
Se o Windows não reconhecer o WiiiMote como um dispositivo de interface humana (HID), siga estes passos adicionais:
7a - Ainda apertando os botões 1 e 2, clique com o botão direito no dispositivo "Nintendo" na tela de dispositivos Bluetooth; 7b - Escolha "Propriedades" e vá na guia Serviços; 7c - Marque a caixa "Drivers para teclado, mouses, etc (HID)"; 7d - Proceda ao passo 8.
O Windows agora deverá reconhecer o WiiMote como dispositivo HID.
3. Usando o WiiMote
Para habilitar o uso de WiiMotes no Lab3D, vá ao menu WiiMote -> Inicializar. Uma esfera é criada para representar cada WiiMote conectado na realidade virtual do Lab3D. Alguns recursos não estarão disponíveis sem uma barra sensora (alternativamente, é possível usar duas velas para emitir a luz infravermelha e criar uma atmosfera diferente).
É possível usar o programa WiiMoteTest para verificar se o WiiMote está enxergando as luzes infravermelhas.
Honestamente, utilizar o WiiMote após ele estar conectado é fácil. A performance em sistemas de baixo desempenho não foi testada. Cuidado ao utilizar Lab3D com WiiMote em netbooks.
3.1 Inicialização
Quando um WiiMote é inicializado, uma esfera é criada para representar cada WiiMote. A esfera mostra a posição do WiiMote na realidade virtual do Lab3D e se mexe quando o WiiMote mexe se uma barra sensora de Wii estiver disponível (veja seção 3.3 - Comandos com a barra sensora).
3.2 Comandos sem barra sensora
É possível utilizar comandos de câmera usando os botões Esquerda, Direita, Cima, Baixo, Mais (+) e Menos (-). Esses comandos irão efetuar translação da câmera e não requerem barra sensora do Wii.
3.3 Comandos com a barra sensora
A barra sensora é uma ferramenta que permite ao Lab3D detectar a posição do WiiMote e mover sua esfera correspondente na realidade virtual do Lab3D. A barra sensora do Wii é simplesmente um par de LEDs infravermelhos que são rastreados por uma câmera infravermelha presente no WiiMote. Observe no vídeo que eu instalei a barra sensora em cima do meu monitor.
O botão HOME é muito importante ao usar a barra sensora para rastrear a posição do WiiMote. Para inicializar o WiiMote, aponte para o centro da barra sensora e aperte o botão HOME. O Lab3D ajusta a posição da esfera que representa o WiiMote com base na distância e orientação detectadas.
Os comandos disponíveis são:
1 - Botão "HOME" para centralizar o WiiMote; 2 - Mover o WiiMode para os lados e mais perto/mais longee da tela move a esfera do WiiMote (o WiiMote precisa enxergar a barra sensora); 3 - Botão "A": aperte e segura para desenhar na tela. Se a esfera do WiiMote estiiver tocando algum dos modelos 3D, o modelo 3D será arrastado; 4 - "Cima/Baixo/Esquerda/Direita/Mais/Menos" enquanto segura o botão "A": rotaciona o modelo 3D que está sendo arrastado.
4. Considerações finais
Usar o WiiMote para interagir com a realidade virtual fornece ao usuário uma experiência 3D completa. Usando o WiiMote no Lab3D é possível mover a câmera, desenhar em 3D e manipular modelos 3D de maneira tridimensional no ambiente 3D. As possibilidades são vastas: desde usar o Lab3D como um quadro tridimensional até projeto de layout 3D.
Nota: A interação com WiiMote foi implementada usando a excelente ferramenta WiiMoteLib, encontrada em http://wiimotelib.codeplex.com/. Wii e WiiMote são marcas registradas da Nintendo. Não modifiquei nada no hardware; apenas utilizei no meu computador.