Dobrý den. Delam jednu 2D hru, a potrebuji hybat soucasne dvema objekty. Pomoci fce onKeyboard mam nadefinovane klavesy pomoci prikazu switch ...
void onKeyboard(unsigned char key, int x, int y) //ovladani
{
switch(key){
case 'a': A.posun(key);
break;
case 'd': A.posun(key);
...
ale to bere vzdy jen jednu klavesu, coz je jasne... Nevite jak nadefinovat vice stisknutych klaves? Děkuji moc, zacatecnik
Fórum › C / C++
Ovladani objektu v OpenGL klavesnicí
TAkže pokud použiješ např SDL, můžeš v poli přistupovat k víc současně stisklým klávesám. SDL_GetKeyState(NULL);
Nicméně i jestli používáš jen WinApi a Zpravy, nemas problém Windows to pošlou rychle za sebou a tobě stačí jen nevolat z
WinProc hned OnKeyboard ale ukládat do pole(klav[key]=1--klav[key]=0). Zpracování pak provádíš
ve smyčce :
for (;;)
{
if (PeekMessage(&msg, 0, 0, 0, PM_REMOVE))
{
if (msg.message == WM_QUIT)
break;
TranslateMessage(&msg);
DispatchMessage(&msg);
}
else
{
AppIdle() // hlavni rutina
}
}
Zjistit počet nových příspěvků
Přidej příspěvek
Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
Uživatelé prohlížející si toto vlákno
Uživatelé on-line: 0 registrovaných, 106 hostů
Podobná vlákna
Interakce objektů v openGL — založil karel
Jak sledovat klávesnici? — založil tonez
Prehodenie pismena na klavesnici — založil BlueLikeGreen
Jak nastavit klávesnici. — založil Benny1181
Namapovani multimedialnich tlacitek na klavesnici — založil CommanderZ
Moderátoři diskuze