ScummVM needs more graphic options (for Windows at least)

General chat related to ScummVM, adventure gaming, and so on.

Moderator: ScummVM Team

Post Reply
marzipan
Posts: 301
Joined: Fri Nov 25, 2005 4:10 pm

ScummVM needs more graphic options (for Windows at least)

Post by marzipan »

So I thought I'd try 1.7.0 lately since I hadn't been keeping up with ScummVM in quite a while, and while I like it overall, I feel it could do with some more variety in regards to display output. More specifically, the ability to customize filters, or use shaders, or adjust how blurry the bilinear filtering should be.

I'll admit I've been spoilt lately by emulators such as RetroArch and WinUAE which allow you to find a good balance between perfect pixellation and some anti-aliasing, mainly by using custom shaders, and you can even adjust the scale factor for each shader loaded into play. This is most useful for when you want to play in full-screen - and I found that using a combination of a point-based shader and bilinear filtering will give me lovely clear pixels without any of the "loose pixel" glitches I sometimes get (which I think is related to my Intel HD Graphics). Incidentally, RetroArch includes a libretro core of ScummVM (and boy do games look *beautiful* under my point-bi customization) but its friendliness compared to the real deal leaves a lot to be desired, plus RA's own keyboard mapping clashes with ScummVM's mapping, so if I try to press ESC to skip a cutscene, the emulator closes altogether instead. :(

But I digress. While ScummVM as it is provides some built-in filters, I don't like either of the two OpenGL ones atm because either the bilinear filtering is too blurry or the point filtering makes parts of the screen look a bit "off", when I'm a perfectionist to the core, so it bugs me somewhat. And unfortunately, the OpenGL filters are the only ones that will utilise my desktop resolution (1920x1080) while all the others will force a lower resolution (or worse, 8-bit/16-bit colors!) - meaning I have to wait almost four or five seconds while my ASUS PB238Q monitor shuts the display down and painstakingly reloads it in the new resolution. I much prefer to have all my games and emulators just use the native resolution and it puzzles me when any emulators out there which get updated in 2014 still don't support such a function. ScummVM has almost got it right!

Besides the full-screen stuff, I seem to be flummoxed as to how one can properly double the size of the window in windowed mode. The size may be manually adjustable during gameplay but I'm obviously no good at getting 2x/3x precisely bang on and maintaining pixel perfectness. Is the option just hidden somewhere?

(And about the shaders - I don't think they're exclusive to Direct3D somehow as RetroArch uses OpenGL for its frontend.)
User avatar
LordHoto
ScummVM Developer
Posts: 1029
Joined: Sun Oct 30, 2005 3:58 pm
Location: Germany

Re: ScummVM needs more graphic options (for Windows at least

Post by LordHoto »

marzipan wrote:Besides the full-screen stuff, I seem to be flummoxed as to how one can properly double the size of the window in windowed mode. The size may be manually adjustable during gameplay but I'm obviously no good at getting 2x/3x precisely bang on and maintaining pixel perfectness. Is the option just hidden somewhere?
Ctrl+Alt+'+'/'-' should change the scale factor like with regular scalers.
digitall
ScummVM Developer
Posts: 1177
Joined: Thu Aug 02, 2012 1:40 pm

Post by digitall »

marzipan: There is an outstanding Pull Request to improve the scalers by giving them a standard plugin interface:
https://github.com/scummvm/scummvm/pull/271

However, this has been outstanding for several years now and if you read the detail on the Pull Request, you will see that it still needs work for several ports which break and some testing with these.

If you want to try testing the current state of this, try the builds from here:
http://buildbot.scummvm.org/snapshots/other/
User avatar
Droole
Posts: 7
Joined: Wed Jul 02, 2014 10:08 am

Post by Droole »

I'd just like to have the option for the window to always be 3x when using bilinear filtering, without having to manually rescale it every time
digitall
ScummVM Developer
Posts: 1177
Joined: Thu Aug 02, 2012 1:40 pm

Post by digitall »

Droole: Then feel free to write a patch...
User avatar
Droole
Posts: 7
Joined: Wed Jul 02, 2014 10:08 am

Post by Droole »

yeah yeah, I know I shouldn't be complaining when I can't code or contribute, but I thought I'd just state my opinion anyway on the offchance someone more capable than me would listen (or at least consider it constructive criticism)
Spaz
Posts: 2
Joined: Thu Aug 07, 2014 8:41 pm

Post by Spaz »

I miss the OpenGL Conserve option that was in version 1.6.0
This, in combination with fullscreen mode + aspect ratio correction resulted in a sharp, pixel perfect image.

None of the OpenGL modes in version 1.7.0 produce the same result. Closest I can get is selecting the 3x scaler, but this will not work with all games, and the mouse cursor is not smooth like it was in the OpenGL Conserve mode.

Is there any possibility that OpenGL Conserve can return in future versions?
digitall
ScummVM Developer
Posts: 1177
Joined: Thu Aug 02, 2012 1:40 pm

Post by digitall »

This was removed by LordHoto when he rewrote the older OpenGL graphics backend and implemented a new OpenGL (ES) based one.= in August 2013.

The older backend broke on a number of mobile platforms including Tizen which is noted in the commit messages

See:
https://github.com/scummvm/scummvm/comm ... a55681f6dc

and

https://github.com/scummvm/scummvm/comm ... 9b8eba08a3

I am not sure why the Converse mode functionality was lost in this work. You should speak to him about this.
User avatar
LordHoto
ScummVM Developer
Posts: 1029
Joined: Sun Oct 30, 2005 3:58 pm
Location: Germany

Post by LordHoto »

The old conserve with AR enabled should behave exactly the same as the current code with AR enabled. You might want to cycle through your fullscreen modes by using Ctrl+Alt+'+'/'-' to simply select your native screen resolution. Also, you might want to disable linear filtering by using the "OpenGL (No filtering)" mode.
Spaz
Posts: 2
Joined: Thu Aug 07, 2014 8:41 pm

Post by Spaz »

OK, did not know about those shortcut keys, thank you for your quick reply.
Nazo
Posts: 11
Joined: Sun Sep 01, 2013 8:38 am

Re: ScummVM needs more graphic options (for Windows at least

Post by Nazo »

marzipan wrote:And unfortunately, the OpenGL filters are the only ones that will utilise my desktop resolution (1920x1080) while all the others will force a lower resolution (or worse, 8-bit/16-bit colors!) - meaning I have to wait almost four or five seconds while my ASUS PB238Q monitor shuts the display down and painstakingly reloads it in the new resolution.
Set your display driver to upscale non-native resolutions to your native resolution. This is almost guaranteed to look better than your screen's own resize anyway.

There's nothing wrong with lower color depths for this sort of thing though. Remember, the original DOS games were 8-bit anyway. You only need enough colors that the resize filter can add its blending without any lossiness in final color. 8-bit generally won't cut it when using filtering, but 16-bit is plenty. Don't confuse modern games with complex 3D shading and textures with 2D DOS and early Windows games that originally only had access to a very limited color palette. (Well, one could argue that devs then made better usage of that 256 color palette than most now make use of the 16.7 billion palette they have now, but that's a different subject entirely.) Don't worry about allowing it to use 16-bit colors if it's a good filter that suits your preferences, you won't lose any quality that way.


All that said, there are a lot of very very nice image filters that have been implemented in various emulators and such that would be very nice in ScummVM as well. Overall it would be to the betterment of ScummVM to have more.
Post Reply