C/Visual C - Detectar teclas xa juego

 
Vista:

Detectar teclas xa juego

Publicado por Bleim (1 intervención) el 08/02/2002 17:31:41
Buenass
Estoy tratando de hacer un juego, sin grandes ambiciones, ya que estoy dando mis primeros pasos en turbo C 3.0. El caso es que quiero mover un grafico por la pantalla y para ello utilizo kbhit() y getche(). El problema es la lentitud de respuesta. Cuando pulso una tecla por primera vez o cuando la suelto y pulso otra rápidamente, el grafico de la pantalla se detiene un instante. Después va bien. No se que es lo que pasa. Ahí va el codigo:

x=y=100; //posicion inicial

while(1)
{
while(!kbhit()){
//rutina que dibuja un grafico
}
ch=getch();

if(ch== TECLAS DE MOVIMIETO) x++; o x--;
}

Alguno dirá que no utilice las bgi, pero no lo hago, pinto el gráfico mediante pantalla virtual. No es problema del dibujo, si no de la rutina, creo. He probado ha sustituir kbhit y getch por boskey; funciona pero sigue funcionando mal. También he probado a poner la rutina de dibujo en otro sitio, pero no parece funcionar.
He buscado por el foro pero no encuentro una respuesta. Haber si alguien puede ayudarme, gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Detectar teclas xa juego

Publicado por Diego G. Ruiz (41 intervenciones) el 09/02/2002 23:11:13
Mirá, antes que nada te sugeriría que utilices alguna librería como DirectX, con la cual podés acceder directamente al teclado vía DirectInput (además de acelerar el bliting a pantalla usando el DirectDraw).

Si no te cabe Windows o querés hacer para DOS te recomiendo que mires la librería para hacer juegos Allegro (http://www.talula.demon.co.uk/allegro/) que es muy buena.

En fin espero que te sirva de algo.

Saludos.

Diego G. Ruiz
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar