Páginas

viernes, 30 de octubre de 2009

Guitar Rig Mouse2Pedal

Aquí tenemos un simple programilla para convertir nuestro querido Mouse en un pedal para guitarrear con este fantástico programa.

Sencillamente lo que hace es mantener "pinchado" el raton en las coordenadas del pedal en el Modo Live de GR4 en una resolución de 1280x1024 y mantenerlo dentro del rango del pedal.

Puede parecer algo lioso, bueno mejor explico su utilidad:

Como el Guitar Rig Kontroller puede ser algo caro..., se me ocurrió que configurando algunas teclas del teclado y utilizando el ratón como pedal, tenias sustituido el aparatito de 500€.
La idea es "tirar" los dos periféricos en el suelo, y manejarlos como un pedal xD.



En fin, creo que le quedan algunos retoques pero su funcionamiento es sencillo:
Ejecutamos el programa (se abrirá una ventana de consola en blanco (bueno.. negro xD) )
Ejecutamos el GR4, vamos a Live View
Y ahora pulsamos la tecla W, en ese momento el programa empieza a controlar el ratón, manteniendolo en la linea del pedal y manteniendolo pinchado también.

Para desactivarlo, pulsamos Q, el programa se cerrara y te devolverá tu mouse xD

Bueno, saludos y opinad.

Source [C++, compilable tanto en VC como en MingW]:
#include <iostream>
#include <windows.h>

using namespace std;

int main(int argc, char *argv[])
{
    bool controlar=false;
    while(1)
     {
              
                                if(GetAsyncKeyState('Q')==-32767)
                                 {
                                         mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);
                                               exit(1);            
                                 } 
                                
                                 if(GetAsyncKeyState('W')==-32767)
                                 {          
                                 SetCursorPos(1036,866);
                                 mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);
                                 controlar=true;         
                                 }
                                
                                 if(GetAsyncKeyState('V')==-32767)
                                 {
                                POINT cursorPos;
                                         GetCursorPos(&cursorPos);
                                         float x = 0;
                                         x = cursorPos.x;
                                         float y = 0;
                                         y = cursorPos.y;

                                         printf("x: %.2f\n"
                                         "y : %.2f\n", x, y);       
                                 }
                                
                                
                                 POINT cursorPos;
                                         GetCursorPos(&cursorPos);
                                         float x = 0;
                                         x = cursorPos.x;
                                         float y = 0;
                                         y = cursorPos.y;
                                
                                 if (x!=1036 && controlar)   SetCursorPos(1036,y);
                                 if (y>935 && controlar)   SetCursorPos(1036,935);
                                 if (y<807 && controlar)   SetCursorPos(1036,807);
                Sleep(10);
     }
}


No hay comentarios:

Publicar un comentario