[Suggestion] Low res renderer

Discussion and feedback on Construct 2

Post » Fri Jun 21, 2013 12:41 pm


Hello.

There's been some talk around here earlier about how rendering performance is impacted by resolution. When we use webgl shaders they seem to be rendered after everything has been scaled up instead of before, which means the higher your desktop resolution the greater the strain on the gpu. I see this on my own computer; when a game with several shaders renders at 2x scale everything is slick but bump it up to 3x and things start to get jittery. And yep, my drivers are relatively fresh.

Shader effects often don't need to get rendered at any more than the non-scaled game resolution, or maybe 2x game resolution. So, could we please have some kind of 1x and/or 2x rendering option that gets scaled up to fullscreen after all the gpu-intensive work is done? I remember Ashley mentioned this kind of thing as a possible solution and I really hope you guys will consider it. A possible extra benefit: If everything is drawn at 1x res first then scaled up we could get a realtime toggle for point and linear sampling maybe. Yes? Sounds good, right? :)))
B
40
S
16
G
6
Posts: 543
Reputation: 7,649

Post » Fri Jun 21, 2013 2:06 pm

+1 though this sort of differs from what I've agreed/requested in the past. I like the concept of the computers resolution changing, as a game that's 1024x648 at 20fps for example, would be squished into a 640x480 window, which hones a great deal of FPS boost for some users (Goes up to 50/60fps). If a game was 1024x768 20fps and could be upscaled more without fps loss, that's great!, except, no GAIN of FPS for users that have weak computer, it'd still be 20fps (better than how it would work now where it would DROP to like 0fps lol )
Hope I made sense!
B
51
S
20
G
10
Posts: 571
Reputation: 9,819

Post » Fri Jun 21, 2013 2:41 pm

It's not just the shaders, it's everything. C2 doesn't just scale up your graphics from 1x to 4x or whatever, it totally redraws them in a higher resolution. Looks terrible for low-res games since they start using "sub-pixels". Pixel rounding doesn't fix it.
Image
B
243
S
30
G
13
Posts: 1,787
Reputation: 18,770

Post » Fri Jun 21, 2013 4:41 pm

Don't forget it works the other way too. If the game is downscaled, shaders run faster, and with your change it would be slower because they'd render a larger area which is then resized down. It's requested a lot though, so we might look in to what can be done towards this.
Scirra Founder
B
403
S
238
G
89
Posts: 24,660
Reputation: 196,167

Post » Fri Jun 21, 2013 11:12 pm

YES. Even C2's simple shaders perform sluggishly at high resolutions.
B
92
S
31
G
24
Posts: 3,191
Reputation: 32,709

Post » Sat Jun 22, 2013 1:38 am

[QUOTE=Ashley]It's requested a lot though, so we might look in to what can be done towards this.[/QUOTE]
YAY (Even though this is a "might")
B
51
S
20
G
10
Posts: 571
Reputation: 9,819

Post » Sat Jun 22, 2013 3:04 am

+1,00000

btw that's exactly what Halfbrick (of Jetpack Joyride fame) did to get a higher FPS with their game resolution on iPads,
and no one complained :)
B
18
S
5
G
4
Posts: 568
Reputation: 5,084

Post » Sat Jun 22, 2013 3:46 am

Very cool, thanks for considering it :)

B
40
S
16
G
6
Posts: 543
Reputation: 7,649

Post » Sat Jun 22, 2013 4:44 am

@Ashley
Well you could always have it as an optional mode in which is recommended only for use on upscaling a low resolution window.
Sounds like a lot better idea than the current Pixel Rounding system for retro/pixel style games.
B
21
S
8
G
6
Posts: 346
Reputation: 4,891

Post » Sat Jun 22, 2013 5:10 am

[QUOTE=Thndr] @Ashley
Well you could always have it as an optional mode in which is recommended only for use on upscaling a low resolution window.
Sounds like a lot better idea than the current Pixel Rounding system for retro/pixel style games.[/QUOTE]

I'd prefer it to be optional myself, with toggles for 1x and 2x "internal" scaling. Useful for cases where you might need a larger than 1x scale, like turning trilinear filtering on/off during runtime. If everything gets rendered to a single texture that's upscaled afterwards it should be relatively easy to turn off filtering just for that final texture to avoid it being applied twice? Just thinking out loud here.
B
40
S
16
G
6
Posts: 543
Reputation: 7,649

Next

Return to Construct 2 General

Who is online

Users browsing this forum: No registered users and 13 guests