Sugiero este nuevo hilo, no para seguir explicando como conectar el Wiimote al PC (ya que para eso está ya el hilo oficial) sinó ya, con nuestros Wiimote conectados y GlovePIE funcionando, intercambiar scripts y explicar posibles maneras de enfocar de nuevo los juegos de toda la vida sean Windows o Emuladores.
Yo por ejemplo he jugado al Mario Kart 64 con el Wiimote con el siguiente script (elimino la configuración de los botones pues es a gusto del usuario):
PPJoy1.Analog0 = Wiimote.Pitch / 70
PPJoy1.Analog1 = (Wiimote.Roll + 90) / 90
Pero es que por otra parte, se me ocurrió poner el FLIGHT SIMULATOR 2004 y...
Solo tengo un comentario: "Perdonalos señor, a los pobres que no tienen el Wiimote, que no saben lo que hacen..."
El script es el siguiente, todo MUY simplón:
PPJoy.Analog0 = -Wiimote.gx
PPJoy.Analog1 = -Wiimote.gy
Lo único que hace es convertir el Wiimote, en posición vertical, en una palanca de mandos... que puedo levantar de la mesa y ponerla junto a la pantalla si me da la gana!! Inalámbrica, sin dificultades.....
¡Maravilloso!
Pequeño tutorial
(admite mejoras)
El lenguaje del GlovePIE es bastante interesante, es como si fuese un BASIC solo que hay un GOTO 0 al final del programa, es decir, el programa se repite en bucle eterno.
Recuerda a un lenguaje orientado a objetos. Entre objetos globales tenemos a "Wiimote" (que va a ser??
) , "PPJoy" (un simulador de joystick, para datos "analógicos"), "Mouse", etc.
Keyboard es Superglobal, i.e. directamente puedo hacer "A = True" y la A del teclado se apretará continuamente.
Aquí pongo una pequeña descripción de los miembros de Wiimote:
Valores YA CALIBRADOS:
Wiimote.gx , gy, gz son valores normalizados del accelerómetro, es decir, 0 sería "no hay fuerza", 1 seria "fuerza de la gravedad" (es decir, en reposo).
Wiimote.Roll y Wiimote.Pitch son para el giro, vienen en angulos en grados. El propio GlovePIE los calcula para vuestra comodidad
Valores SIN CALIBRAR :
Wiimote.RawForceX, RawForceY, RawForceZ.... etc. No se para que nadie los podría querer usar
Otros
Wiimote.A, Wiimote.B, Wiimote.Plus, Wiimote.Minus, Wiimote.Home, Wiimote.One, Wiimote.Two son los botones (se ponen a True mientras estén apretados).
Wiimote.Up, Down, Left, Right es el D-Pad, idem que los anteriores.
Wiimote.Led1, Led2, Led3, Led4 son para controlar el estado de los leds, si los ponemos a True se enciende el LED, y a False se apaga.
Wiimote.Rumble es para el rumble, si lo pones a True pues vibra...
Wiimote.Battery da la batería. No he probado ni siquiera en qué unidades la da.
Sensor Bar
El objeto Wiimote puede captar hasta 4 puntos infrarrojos. Si apuntamos a la sensor bar veremos en general solo 2 puntos.
X = 1, 2, 3 o 4 dependiendo del punto del cual queramos obtener información.
Wiimote.dotXvis indica si el punto X está visible (si hay un punto X, vamos).
Wiimote.dotXsize indica el tamaño del punto X. Unidades desconocidas, aunque 1 quiere decir "muy pequeño" y yo he llegado a 4 que casi es "me ocupa toda la pantalla"
Wiimote.dotXx , dotXy indica la posición del punto X RESPECTO A LA CÁMARA DEL WIIMOTE. Es decir, la coordenada x puede estar entre [0, 1024] y la coordenada y puede estar entre [0,768]. Si queremos hacer un mouse típico pues habrá que invertir el eje X (el eje Y no hace falta pues Wiimote y Winbugs ya lo tienen invertido), además de normalizarlo al tamaño de la pantalla.
------------------------------------------
El boton de Power del Wiimote termina la conexión Bluetooth y lo pone en ahorro de pilas. Tambien vale apagar el PC para ponerlo en modo ahorro