Historique des modifications - Message

Message #8868

Sujet: appuis / relachement d'un bouton de la souris


TypeDateAuteurContenu
Création du message02-10-2010 13:17:29TUpac
Y'a pas de soucis ça fait plaisir de transmettre son savoir car on l'a tous reçu de quelqu'un d'autre.
Je pense que tu saisis encore mal le concept d'event. Il serait judicieux de matter un ou deux tutos qui en parlent.
En fait à chaque boucle tu traite UN SEUL EVENT. Il s'appel "event" dans ton code et IL NE PEUT AVOIR DEUX VALEURS (EMIE_MOUSE_MOVED & EMIE_RMOUSE_PRESSED_DOWN).
Ton découpage est donc mauvais, il faut plus voir ça comme ça:

Code c++ :


bool OnEvent(SEvent &event)
{
    if(event.EventType == MOUSE_INPUT_EVENT)
    {
        if(event.MouseInput.Event == MOUSE_MOVED)
        {
            if(rotation)
            {
                // Code de rotation
            }
            return true;
        }
        if(event.MouseInput.Event == MOUSE_PRESSED)
        {
            rotation = true;
            return true;
        }
        if(event.MouseInput.Event == MOUSE_RELEASED)
        {
            rotation = false;
            return true;
        }
    }
    return false;
}

Normalement on utilise des switch() mais des if c'est plus parlant. Donc a chaque OnEvent appelé par la souris, l'event sera soit moved soit pressed soit released. Mais pas deux à la fois. C'est ma faute j'aurais du le repérer en voyant ton code mais comme je l'ai dis, irrlicht n'est plus instinctif pour moi depuis trop longtempswink

Retour

OptionsLiens officielsCaractéristiquesStatistiquesCommunauté
Préférences cookies
Corrections
irrlicht
irrklang
irredit
irrxml
Propulsé par Django
xhtml 1.0
css 2.1
884 membres
1441 sujets
11339 messages
Dernier membre inscrit: Saidov17
276 invités en ligne
membre en ligne: -
RSS Feed