dimanche 3 décembre 2006

La Wiimote et le PC : 3ème phase

C'est fait, un driver est disponible pour utiliser la Wiimote sous Windows, vivement vendredi pour pouvoir tester tout ça !

Pour utiliser la wiimote sous Windows, il vous faudra une clé USB bluetooth (10€ environ), et une sensor bar (4 LED IR => 2€).

Extrait de la doc de GlovePie (en anglais)
Wiimote (Nintendo Wii Remote)

Warning! This feature is completely untested, as Wiimotes haven’t been released in Australia yet. The Wiimote support will be improved in later versions.

If your computer has Bluetooth, you can control games with the Nintendo Wii Remote. Currently the pointer functionality is not implemented. But you can use the Wiimote’s accelerometers, and buttons for input, and the Wiimote’s rumble and LEDs for output.

Before you can use the Wiimote, you will need to “sync” or “pair” it with your PC. The PC can only discover the Wiimote when you either hold down both the 1 and 2 buttons on the Wiimote at once, or when you hold down the Sync button (near the battery compartment). You may also need to use some sort of Bluetooth software. Do this before starting GlovePIE.

You can use the GUI to assign the Wiimote’s actions, or you can use scripting with the “Wiimote” object. The GUI’s automatic detect input feature will work with the Wiimote.

Buttons

The Wiimote has the following buttons, which are either true or false:

Up, Down, Left, Right,
A, B,
Minus, Home, Plus
One, Two

The power button isn’t implemented yet.

Motion Sensing

The Wiimote also has three raw force values:

RawForceX, RawForceY, and RawForceZ

They use the standard left-handed coordinate system used by everything in GlovePIE, not the Wiimote coordinate system.

Note that a stationary Wiimote has a force of 1 G holding it up, otherwise it would be falling due to gravity’s 1 G force. The other forces should be 0 on a stationary Wiimote.

Note that RawForceX, RawForceY and RawForceZ are in unknown units, and they are offset slightly due to manufacturing differences in the Wiimote hardware. Your GlovePIE script will need to take this into account.

Rotations

The Wiimote doesn’t contain gyros (BOO!!!), so it has no way of determining the yaw rotation without using an imitation sensor bar. But it can sort-of tell which way is down, based on the force of gravity. This allows it to measure pitch and roll rotations.

LEDs

You can set the 4 LEDs on the Wiimote by setting:

Wiimote.Leds

to a value between 0 and 15. It is binary.

Force Feedback

You can activate force feedback by setting:

Wiimote.Rumble

to either true or false

Nunchuck and Classic Controllers

GlovePIE will stop detecting buttons and motion when you plug in a classic controller or a nunchuck attachment. But GlovePIE can tell when they are plugged in like this:

Wiimote.HasNunChuck
Wiimote.HasClassic

They will be true when that attachment is plugged in, and false otherwise.

Unplugging the attachment will not make the buttons and motion work again. You need to restart the Wiimote to get it back working. This may require syncing again, or it may require removing and replacing the batteries.



Quand vous appuyez sur une touche, que vous secouez la wiimote, que vous tournez la wiimote, un petit programme qui tourne en tâche de fond va simuler l'appui sur une touche de votre clavier, un clic de souris etc...

Donc ça marchera avec tous les jeux windows ! Il n'y a pas besoin que le jeu gère la wiimote dans son code source.
Par exemple dans trackmania vous pourrez piloter une voiture en inclinant la wiimote comme un volant etc...

Pour l'instant ça ne gère pas toute les fonctionnalités de la wiimote, mais c'est un très bon début.

Lien pour télécharger le driver :
http://carl.kenner.googlepages.com/glovepie

Topic très cérébral sur WiiLi :
http://www.wiili.org/forum/download-windows-driver-here-t294.html

Widéos de la souris piloté par les accéléromètres (pas très précis pour le moment) :
http://www.youtube.com/watch?v=85OzSIDwwv8&eurl=
http://www.youtube.com/watch?v=A_ytdW6Ys2A&eurl=

1 commentaire:

Anonyme a dit…

>>>Quand vous appuyez sur une touche, que vous secouez la wiimote, que vous tournez la wiimote, un petit programme qui tourne en tâche de fond va simuler l'appui sur une touche de votre clavier, un clic de souris etc...

Donc ça marchera avec tous les jeux windows ! Il n'y a pas besoin que le jeu gère la wiimote dans son code source.<<<

donc avec glovePIE, il n'y a pas de detection de la rotation de la wiimote par exemple? c'est du binaire? comme l'appuie d'une touche clavier?