We really need a way to cap dt at a lower value

Discussion and feedback on Construct 2

Post » Thu Aug 07, 2014 9:33 pm

For a while now, I've noticed that my game runs very poorly at low framerates. It becomes basically unplayable at anything less than 45fps, mainly because of the collision issues.

I'd really like the game to be at least playable at lower framerates, and this could be fairly easily achieved by having the game slow down instead of 'dropping frames'. Technically, this could easily be achieved by allowing us to cap dt at a lower value in the project settings - currently, it's capped at 0.1 I believe, which is crazy high. I'd probably cap it at 0.03 or 0.02 (60fps dt = 0.016) for optimal gameplay.

Is there a reason this can't be implemented?
B
92
S
31
G
24
Posts: 3,191
Reputation: 32,699

Post » Thu Aug 07, 2014 9:38 pm

Seconding this. Watching high-speed bullets fly through walls on older systems is something I wish could be avoided :p
(M.A.D. are my initials. I'm not the least bit angry, really!)
@madguy90
B
11
S
4
Posts: 41
Reputation: 1,671

Post » Thu Aug 07, 2014 10:01 pm

You could change the timescale depending on the fps value (if fps between 10 and 30, set timescale to 30/fps) I think.
Game design is all about decomposing the core of your game so it becomes simple instructions.
B
54
S
22
G
18
Posts: 2,123
Reputation: 17,150

Post » Thu Aug 07, 2014 10:35 pm

@Aphrodite That could potentially work but I feel like a straight cap would be simpler.
B
92
S
31
G
24
Posts: 3,191
Reputation: 32,699

Post » Thu Aug 07, 2014 11:54 pm

Dropping frames is much different than slowing the game down.
It is pretty much the definition of v-synced games.
Image ImageImage
B
172
S
50
G
182
Posts: 8,438
Reputation: 115,095

Post » Fri Aug 08, 2014 12:35 pm

Sounds like it would be useful
My professional Royalty Free Music at Scirra Assets Store
--------------------------------
Specs: i5 2500, 16gb of ram, gtx 770, win 7, Focusrite Scarlett 8i6, Mackie mr8mk2, Alesis 320, browsing the net on chrome.
B
93
S
30
G
22
Posts: 1,987
Reputation: 20,203

Post » Fri Jan 23, 2015 12:23 am

I'd like to give this thread a bump. This feature would help immensely with lag spikes which are unfortunately a pretty common occurrence for a lot of C2 games.

I've been talking with @Aurel who just released The Next Penelope on Steam. Apparently certain streaming softwares kill the FPS on the game, and without a low dt cap the game goes out of control, whereas simply slowing down the gameplay would be far better. (the setting timescale relative to fps is a very messy solution, specifically in that case)
B
92
S
31
G
24
Posts: 3,191
Reputation: 32,699

Post » Fri Jan 23, 2015 1:07 am

Posting so this comes up on egosearch.

I'd be interested in knowing the reasons for the current magic number, and the arguments (or rather the science behind it) for and against its reduction.
B
64
S
25
G
10
Posts: 653
Reputation: 10,840

Post » Fri Jan 23, 2015 2:10 am

sqiddster wrote:Apparently certain streaming softwares kill the FPS on the game, and without a low dt cap the game goes out of control, whereas simply slowing down the gameplay would be far better. (the setting timescale relative to fps is a very messy solution, specifically in that case)


If you use a lot of shader effects, streaming destroys performance. It's strange.
B
70
S
24
G
19
Posts: 1,757
Reputation: 17,616

Post » Fri Jan 23, 2015 2:33 am

I remember being a real pain and asking for a 30 fps option a while ago (or, more precisely, it became a 1/2 vsync render option when I understood how c2 runs in the browser). I don't think c2 is mech'd to be able to be able to successfully vary the dt and diverge from what the browser engine is doing. I might be wrong, and it would not be the first time, but but the last attempt to provide an option in c2 to run at 1/2 vsync was a proper failure (after much nagging by me and few others, I recall...).

I would dearly love for us to have a fraction-of-vsync option, where game logic can take more time to do required maths before a draw call, but I don't think it is possible within c2.

I see similar weird behavior on my embryonic game when I test it on an old laptop - it's almost as if the event system breaks down under relatively high cpu load.
A big fan of JavaScript.
B
76
S
20
G
76
Posts: 2,284
Reputation: 47,552

Next

Return to Construct 2 General

Who is online

Users browsing this forum: lexchoi0810 and 6 guests