Clique aqui para ver a parte 1, onde falo sobre mover a câmera no jogo movendo a cabeça e sobre usar face tracking (rastreamento do rosto) para detectar a posição da cabeça com uma webcam.
Neste post eu falo sobre detectar a posição da cabeça usando um método mais confiável: point tracking. Consiste em montar um clip com três LEDs infravermelhos e prendê-lo em um headset ou boné. O computador consegue detectar a posição da cabeça com base na posição desses LEDs de forma bem mais rápida, confiável e estável do que quando se usa face tracking.
Como prometido, montei o clip com 3 pontos infravermelhos ativos. Além disso, troquei a câmera. Estava usando uma genérica de R$ 35 que capturava em 640×480 a 8 FPS; troquei por uma Logitech C270 (paguei R$ 120 na Santa Ifigênia, mas tem pra comprar na internet por ~R$ 80) que captura em 1280×720 a 30 FPS. Vale lembrar que quanto maior o framerate da câmera melhor vai ser o movimento da câmera do jogo (i.e. menos delay/lag e menos casos de o programa detectar a posição incorretamente), tanto em point tracking quanto em face tracking.
Veja nesse vídeo uma demonstração de uso no OMSI 2:
Aqui mais uma demonstração de uso, dessa vez no Euro Truck Simulator 2:
Continue lendo para ver o esquema do circuito e fotos.
O circuito do clip é extremamente simples: 3 LEDs infravermelhos e um resistor de 6,8 Ω e 1/4 W (azul, cinza, dourado, dourado) ligados em série, conectados ao +5V e GND de um cabo USB (os fios vermelho e preto, respectivamente).
Ou seja, o vermelho do USB é ligado ao resistor (em qualquer terminal; resistor não tem polaridade). O outro terminal do resistor é ligado ao ânodo (+) do primeiro LED. O cátodo (–) do primeiro LED é ligado ao ânodo do segundo, cujo cátodo é ligado ao ânodo do terceiro, cujo cátodo é ligado ao preto da USB. Lembrando: em um LED, o ânodo (+) é o terminal maior (ao contrário da imagem no esquema abaixo), e o cátodo (–), além de ser o terminal menor, é identificado por um chanfro no “anel” em volta da base do LED.

O esquema diz para usar LEDs SFH485P, que “espalham” melhor a luz. LEDs normais tendem a focar a luz para a frente, o que pode fazer com que a câmera não pegue a luz se você virar a cabeça demais, mas eu usei LEDs normais e funcionou perfeitamente—se eu virar a cabeça ao ponto de a câmera não pegar a luz do LED eu não consigo olhar para o monitor.
O PTC é opcional. Ele funciona como um fusível cortando o circuito em caso de curto. Com ele, se o clip entrar em curto, não vai queimar a porta USB. Se você usar um carregador USB, ou se a sua placa-mãe tiver proteção contra sobrecarga na porta USB, ele não é necessário.
O acabamento está tosco, afinal foi meu primeiro contato com um ferro de solda em uns dez anos, mas funciona perfeitamente. Fixei as peças no suporte com fita Durex e fixei o conjunto no “braço” do microfone do headset com fita isolante.
Quanto gastei para fazer o clip:
LEDs infravermelhos: R$ 1,00/unidade
Resistor 6,8 Ω: R$ 1,00/pct. 10 unidades
1m de fio: R$ 0,70
Cabo USB: já tinha um sobrando, não foi preciso comprar
Suporte: R$ 11,30 (link)
Total: R$ 16,00 (além da solda )
Total com a câmera: R$ 136 (que poderia ser ~R$ 96 se eu tivesse comprado a câmera pela Internet).
Pra comparar, um TrackIR 5 original custa US$ 169,99 (~R$ 544 sem contar os impostos).
Na última foto dá pra ver como ele é visto pela câmera. A luz que aparece branca na foto é invisível ao olho humano, então mesmo ligado ele fica visualmente idêntico a quando está desligado já que não dá pra ver o infravermelho a olho nu.
Eu montei o clip na casa de um amigo. Quando fui testar, liguei o clip num carregador USB e pedi pro meu amigo usar a câmera do iPhone dele pra ver se os LEDs estavam ligados. Pareciam desligados. Depois de uns vinte minutos revisando o circuito e verificando a tensão com um multímetro, meu amigo fez a pergunta: será que a câmera do iPhone tem filtro que bloqueia infravermelho? Decidiu testar usando a câmera frontal: os LEDs estavam acesos.
Ou seja, para isso funcionar é necessário ter uma câmera que consiga captar infravermelho. Muitas câmeras têm um filtro que bloqueia infravermelho, aí seria necessário trocar de câmera ou desmontar a que você tem e remover o filtro (“remove IR filter” + o modelo da sua câmera no Google ou YouTube pode ajudar). Uma forma de saber se a sua câmera capta infravermelho é apontando um controle remoto para ela e apertando os botões. Se ela conseguir captar o infravermelho, na imagem dela vai parecer que o controle remoto está piscando uma luz branca para ela.
Você precisa fazer login para comentar.