evennements clavier en fullscreen
coder78
Membre
Bonjour tout le monde,
Alors voilà ...pour faire suite à mon autre poste..maintenant que j'ai du fullscreen je suis content.
Donc j'attaque mon p'tit jeu tout balot et j'attaque les event clavier...
seulement je suis confronté au même problème qu'il y a 15ans....
A savoir le buffer clavier..
J'ai un latence entre le 1er appuis sur une touche et les répétitions de cette touche.
A l'époque il fallait vider le buffer clavier en permanance et c'était réglé... mais en carbon...on fait comment ?
Merci d'avance.
Fred
Alors voilà ...pour faire suite à mon autre poste..maintenant que j'ai du fullscreen je suis content.
Donc j'attaque mon p'tit jeu tout balot et j'attaque les event clavier...
seulement je suis confronté au même problème qu'il y a 15ans....
A savoir le buffer clavier..
J'ai un latence entre le 1er appuis sur une touche et les répétitions de cette touche.
A l'époque il fallait vider le buffer clavier en permanance et c'était réglé... mais en carbon...on fait comment ?
Merci d'avance.
Fred
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
while ( ( event = [ NSApp nextEventMatchingMask: NSAnyEventMask untilDate: [ NSDate distantPast ] inMode: NSDefaultRunLoopMode dequeue: YES ] ) )
{
...
}
et donc je pensais que le 'dequeu: yes' flushait le buffer clavier mais visiblement...non...
une idée ?
Fred
ben c'est comment dire...injouable si il y a de la latence dans les touches.
et les qqs jeux que j'ai testé sur mon mac...n'avaient pas de latence dans les touches....
et je sais pas comment ils font
si tu as une idée...je prends
Fred
Il faut juste regarder si la touche est toujours appuyée ???
Merci pour les infos messieurs.
Fred
j'ai enfin trouvé la solution à mon problème....
en fait ma "latence" venait du fait que je déclanchait un setNeedDisplay de ma NSView lors d'un event clavier.....et du coup ben ...ça sacadait.
Alors j'ai plutot déclarer un nstimer dans l'init de ma View et j'ai déclaré un setNeedDisplay dans la fonction 'refresh' de ma NSView et voilà tout est bon.
Donc merci à tous de m'avoir aiguillé
Fred