fallahn / crogine

SDL2 Based Game Framework
82 stars 12 forks source link

Counterintuitive swing control #102

Open Bikeman868 opened 7 months ago

Bikeman868 commented 7 months ago

I am playing this for the first time, and just can not figure out the swing control. I experimented with multiple possible interpretations of how this maybe supposed to work, but none of them produce the result I am expecting.

On the first space bar press the power goes up, and it stops going up in the second press. This is very easy to understand, but the third space bar press makes no sense at all. I thought the idea was to let it bounce off the right hand side and press space again on the way back down when it gets to the middle. If I do this however, the black vertical bar continues moving left for a while after pressing the space bar, and it always hooks the ball way over to the left.

How is this supposed to work?

Bikeman868 commented 7 months ago

Upon further experimentation, it looks like the processing of the space bar press is delayed by the screen drawing time. In the advanced settings I can see that the screen redraw time is about 115ms, which feels like about the time lag between pressing the space bar and having the swing control react to it.

By running in full-screen mode and turning down the resolution I was able to reduce the lag to a point where the game is playable, but you should investigate how to decouple these things. The lag between pressing the space bar and the game responding on the swing control should be as close to zero as possible regardless of the screen redraw time.

fallahn commented 7 months ago

Hi! As per my response to #101 could you post this over on the Steam discussions please? https://steamcommunity.com/app/2173760/discussions/ - then we can work through the issue there.

fallahn commented 4 months ago

Sorry, forgot this was over here! A couple of other people have talked about there being some input lag, though for most of them disabling V-Sync in the options seems to help - have you tried that?