Increasing responsiveness(speed) of keyboard buffer?
How can I make the keys more responsive in the if(keys[whatever]) part of nehe''s tutorials? Right now I have to hold down the key for about 2 seconds before it recognizes it... Thanks!
Actually this is how he designed the keyboard movement, the longer u hold the key down the more it affects the x/y/z movement. Look at the coding for the keys, you can adjust the change from 0.2f (I think thats the default) to a higher number for a faster responce. Play with it to see what I mean
Axehandler
Axehandler
OKay in TUT7 <this shows the basics on keyboard movement> find these lines...
if (keys[VK_UP])
{
xspeed-=0.01f;
}
if (keys[VK_DOWN])
{
xspeed+=0.01f;
}
if (keys[VK_RIGHT])
{
yspeed+=0.01f;
}
if (keys[VK_LEFT])
{
yspeed-=0.01f;
}
If u look closely, what is happenning, is the X and Y speeds are being changed here either + or - 0.01f depending on what u do, SO... since it''s such a small change it will take awhile to bring it up to a VERY FAST speed or to slow it down. change that to a 0.10f and see what I mean.
You could always add ur own STOP keys. something like this.
if (keys[VK_F1])
{
yspeed=0.00f;
}
if (keys[VK_F2])
{
xspeed=0.00f;
}
Now pressing the F1 or F2 keys will stop the movement for either the Y or X axis. I think u understand now
Axehandler
if (keys[VK_UP])
{
xspeed-=0.01f;
}
if (keys[VK_DOWN])
{
xspeed+=0.01f;
}
if (keys[VK_RIGHT])
{
yspeed+=0.01f;
}
if (keys[VK_LEFT])
{
yspeed-=0.01f;
}
If u look closely, what is happenning, is the X and Y speeds are being changed here either + or - 0.01f depending on what u do, SO... since it''s such a small change it will take awhile to bring it up to a VERY FAST speed or to slow it down. change that to a 0.10f and see what I mean.
You could always add ur own STOP keys. something like this.
if (keys[VK_F1])
{
yspeed=0.00f;
}
if (keys[VK_F2])
{
xspeed=0.00f;
}
Now pressing the F1 or F2 keys will stop the movement for either the Y or X axis. I think u understand now
Axehandler
Thanks a lot! But, my real question was how to increase the responsiveness of keys in general =) Because when I hit a key quickly, nothing happens; I have to hold it down for 1-2 seconds... I want the keys in my program to be as responsive as when typing, so when you hit it once, the corresponding action will happen on screen right away. Thanks!
Hmm, how fast is your computer? It may be possible if you are using your, say, over-clocked 286, that aside from bursting in flames it will slow down some. If that is not it, make sure that you are not using the toggle code, which makes sure the key was not pressed in the previous cycle.
If you want a new method, from what I know the array is pretty darn good, so you will have to look for non-NeHe zombies
L8r,
The Rainmaker
If you want a new method, from what I know the array is pretty darn good, so you will have to look for non-NeHe zombies
L8r,
The Rainmaker
I doubt it''s my computer, I have a p2 350 with 256 ram and a vodoo3... By the way, the only time I usually need to hold it down for a second or two, is when using the keys on the numpad.... Could that be it?
May 03, 2000 05:40 PM
if you don''t know how to write an event handler for the keyboard effectively, use glut. very easy, but not as flexable as if you wrote it yourself.
response from the numpad and any other key on the kb should be the same, it''s the same device isn''t it?
speed should be quick, but this depends on when and where you''re looking for a keypress.
response from the numpad and any other key on the kb should be the same, it''s the same device isn''t it?
speed should be quick, but this depends on when and where you''re looking for a keypress.
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement