Já ouvimos que o sensor giroscópio tem as suas idiossincrasias, mas digam-nos por que motivo foi assim tão complicado trabalhar com ele.
Bem, como já foi dito, o aparelho mede a precessão e a rotação. Mas fora da área em que pode ser observável, não é possível saber se estamos de facto a receber dados fiáveis.
Isso significa que quando fazes um movimento largo com o Comando Wii, pode ultrapassar os limites da área do sensor, impedindo a detecção do movimento e a sua reflexão no jogo.
É isso mesmo.
Vamos agora perguntar a Ito-san, responsável pelo circuito eléctrico, para que possamos explicar como ultrapassaram o problema.
Com certeza. Ora bem, aumentámos a sensibilidade do sensor giroscópio para a Wii em cinco vezes o nível de um sensor normal. Afinal, os sensores giroscópios usados nas câmaras de filmar só conseguem detectar uma rotação de cerca de 300 graus por segundo, o que é um pouco lento…
300 graus não me soa nada lento! (risos)
Mas há quem faça movimentos incrivelmente rápidos quando joga.
Então queres dizer que se o sensor só conseguisse detectar rotações de 300 graus por segundo, haveria casos em que o limite do sensor seria ultrapassado e qualquer movimento para além dele perder-se-ia.
Sim. E foi por isso que desenhámos o sensor de modo a detectar 1600 graus de movimento por segundo.
Ou seja, cerca de quatro rotações e meia completas. Mas seria preciso um esforço muito grande para fazer tal coisa com a mão!
Pois é. Ao fazê-lo, assegurámo-nos que os movimentos rápidos seriam detectados. Mas depois tivemos de pensar na necessidade de detectar movimentos lentos.
Parece haver aqui uma contradição. Afinal, se conseguires detectar movimentos rápidos, em princípio a sensibilidade de detecção de movimentos lentos aumenta.
Pois, em princípio funciona exactamente assim! (risos) Mas queríamos mesmo que conseguisse detectar igualmente movimentos lentos. Tive muitas conversas com Ota-san sobre isto.
Foram umas quantas, foram.
E então, Ota-san, como resolveste o problema?
Desenhámos o sensor de forma a ter dois modos: um para movimentos rápidos e outros para movimentos lentos.
E o que são esses dois modos exactamente?
Uma vez que os dados do sensor são enviados através de tecnologia sem fios, a resolução dos dados já está determinada. Imaginemos que os dados podem ser enviados em dez bandas. Na verdade, há muitas mais, mas é só um exemplo para ser mais fácil perceber. Então, se há dez bandas, só podemos enviar sinais de dados do zero ao nove.
Então suponhamos que a resolução de dados está restringida a dez bandas. Não podemos simplesmente aumentar para vinte, correcto?
Correcto – não é possível. Vejamos mais um exemplo: a velocidade de um carro. Com um carro que possa andar até 10 km/hora, os dados sobre a sua velocidade actual seriam enviados em unidades de 1 km/hora. Ou seja, cada banda corresponde a 1 km/hora. Contudo, se aumentarmos a velocidade máxima podemos medir até 100 km/hora, e cada unidade tornar-se-ia 10 km/hora. Isto significaria que não seria possível detectar velocidades baixas como 2 ou 3 km/hora.
Então, se alterarem as configurações de modo a que o sensor possa medir velocidades elevadas até 100 km/h, os dados serão medidos em incrementos de 10 km/h.
Exacto. Por isso equipámos o sensor com dois modos: o de baixa velocidade, onde os dados são enviados em dez bandas numa escala até 10 km/h; e o de alta velocidade onde os dados são enviados em dez bandas numa escala até 100 km/h.
Então, com dois modos, tornaram possível a elevada sensibilidade a movimentos pequenos, permitindo simultaneamente a detecção de movimentos dinâmicos.
Isso mesmo.
Então foi assim que construíram o sensor de modo a responder a movimentos lentos. Mas não foi só isso que tornou o sensor giroscópio complicado de trabalhar, pois não?
Não, não. A sensibilidade da capacidade de detecção do sensor giroscópio podia ser afectada negativamente por alterações da temperatura circundante.
Não é por acaso que "M" na sigla MEMS representa a palavra "mecânico".
E precisamente por ser mecânico é que o problema podia ocorrer.
Normalmente, se algo está inerte, os dados enviados devem ser zero. Mas, no caso do sensor giroscópio, mesmo se estiver completamente parado, ao fim de um bocado começam a ser enviados dados de um ou dois.
Embora ninguém lhe esteja a tocar, reage como tal.
O termo técnico para este fenómeno é “desvio de temperatura”.
Então o que está a acontecer é que, à medida que a temperatura muda, o ponto que deveria ser zero sofre um desvio.
E não é um problema derivado apenas da temperatura. A humidade ou impactos repentinos podem ter o mesmo efeito. Por este motivo, discutimos formas de alcançar o nosso objectivo de obter um sensor com o qual, de algum modo, este problema não ocorresse...
Mas isso não é…?
…Impossível! Mas há maneira de contornar o problema. O que temos de fazer é incluir um sensor completamente à parte que ajuste o ponto de zero.
Mas não podíamos subir o custo desnecessariamente.
E é por isso que a nossa única opção era encontrar uma solução de software para o problema. Tentámos uma série de soluções – foi um processo de tentativa e erro.
Ou seja, nada mais podiam fazer para além de encontrar um método que detectasse a inactividade do Comando Wii.
E a primeira ideia que surgiu foi o acelerómetro. Pensámos que o podíamos usar para detectar se o comando estava ou não em movimento…
Mas não funcionou, pois não?
Não, não funcionou. O sensor giroscópio é muito mais sensível que o acelerómetro, portanto mesmo que o acelerómetro indicasse zero, o sensor giroscópio movia-se.
Não dava.
No final, fizemos com que o sensor giroscópio conseguisse detectar que não está em movimento.
Então, mesmo com flutuações de temperatura e humidade, o sensor giroscópio é capaz de funcionar correctamente?
Exactamente. O software que incluímos tornou isso possível.
Então, Ota-san, enquanto estavas a tentar domar um sensor giroscópio complicado, estavas também a desenvolver o SDK – ou seja, o kit de desenvolvimento de software. Que novas direcções no desenvolvimento de jogos achas que foram abertas com esta combinação do acelerómetro com o sensor giroscópio? Gostava de ouvir a tua opinião enquanto alguém que esteve envolvido no desenvolvimento de uma vasta variedade de títulos.
Acho que o maior desenvolvimento é o Wii MotionPlus permitir aos criadores compreenderem o que os jogadores sentem.
O que os jogadores sentem? Como assim?
Ao ser capaz de detectar a rotação, o movimento do Comando Wii na mão do jogador e o movimento do objecto no ecrã correspondem um ao outro em tempo real. Isto é uma coisa que toda a gente sempre quis conseguir realizar.
Não haja dúvida.
Mas não foi de todo fácil alcançá-lo. As medidas de que acabámos de falar, tais como o alargamento do alcance da detecção de velocidade ou o aumento da sensibilidade na detecção de velocidades lentas, não valeram só por si.
Houve também o problema do desvio de temperatura.
E também o facto de, por os dados serem transferidos sem fios, haver a possibilidade de alguns dados não serem sequer enviados. Tudo isto significava que a sincronização entre os movimentos do Comando Wii e os do objecto no ecrã seria desfasada.
E como resolveram esse problema?
Usando apenas o sensor giroscópio, não conseguíamos encontrar uma solução satisfatória para o problema, mas o acelerómetro provou ser muito útil nesse aspecto.
Então era algo que nem o acelerómetro nem o sensor giroscópio conseguiam alcançar isoladamente. Mas a combinação de ambos os sensores permitiu alcançar o que sempre quisemos: conseguir registar a forma como o jogador se sentia.
É isso mesmo.
© 2024 Nintendo.