domenica 6 settembre 2009

Input multipiattaforma con OIS - 3a parte

Nella precedente parte abbiamo trattato la crezione dei dispositivi necessari per la lettura degli input, compresa la tastiera, ora vedremo come leggere lo stato di quest'ultima.

Nell'update dell'applicazione dovremo eseguire questo comando:

oisKeyboard->capture();

fatto ciò potremo controllare lo stato di ogni singolo tasto con:

oisKeyboard->isKeyDown(OIS::KC_F1)   // ritorna true se F1 è premuto
ovviamente potremo anche sfruttare un listener per ottenere l'input bufferizzato della tastiera, per fare ciò ci basterà derivare la classe OIS::KeyListener così:


class MyKeyListener : public OIS::KeyListener
    {
    public:
    bool keyPressed(const KeyEvent &arg)
        {
        printf("premuto tasto %i\n", arg.key);
        }
    bool keyReleased(const KeyEvent &arg)
        {
        printf("rilasciato tasto %i\n", arg.key);
        }
    };
dopo potremo impostare il nostro listener con il seguente comando:

oisKeyboard->setEventCallback(new MyKeyListener);

0 commenti:

Posta un commento

About This Blog

  © Blogger template PingooIgloo by Ourblogtemplates.com 2009

Back to TOP