Hi, I've been trying to play OpenMW at a lower resolution so that it runs faster, but there's a bug that prevents me from playing it like that permanently.

My monitor is 1680x1050, and I've tried to set it to 1280x800. It works -- or at least for while I'm playing the game. Once I quit and open OpenMW again later, the game window will open at the same resolution, but at a 1:1 scale, so that it sits in the upper left corner smaller than my screen, instead of filling the entire screen, as it should.

I can't seem to find any specific settings to force the game window to fill screen, but I would really like to be able to play with a lower scale at my full resolution.

I'm thinking it would be a good idea for OpenMW to avoid exclusive fullscreen mode changes. Instead, for fullscreen it should always set to use the desktop resolution, but use a renderbuffer of the desired size that gets scaled by the video card when drawn to the backbuffer. This would have a number of benefits, including non-destructive "mode" changes (when you change the screen resolution, you essentially lose and have to reload any active gfx resources), quick and OS-agnostic mode changes (you're just creating a new GL renderbuffer, not toying around with OS/DM functionality on top of rebuilding the render resources), fewer compatibility problems (some systems can have side effects when changing the video mode, such as HDMI audio devices disappearing and breaking audio, or background windows and desktop icons getting moved around), and more flexibility (not limited to the list the OS/driver provides, you can use custom scaling filters for a cleaner scaled image, you can add letter-boxing or pillar-boxing to maintain aspect ratio, you can even use a greater-than-native resolution to get a form of super-sampling). And you still get the performance benefit of rendering at the desired resolution.

As it is, in a post-CRT world monitors use a fixed resolution anyway. When you change the video mode to a non-native resolution, the monitor is applying its own scaling to the image it gets from the video card, usually quite poorly. Having the app itself do the scaling instead would give the aforementioned fullscreen benefits, and it would also benefit windowed mode (lower resolution render for more performance, or a higher resolution to get super-sampling in a window, without affecting the size of the window). And if for some reason you absolutely need to run at a specific non-native fullscreen resolution, there are likely to be utilities to set the fullscreen resolution prior to launching the game, so the game itself doesn't need to worry about it.

That makes sense, but I suppose that's an implementation I will have to wait for?
I've been playing this game called Redout and there are two settings of interest -- Screen Resolution, and Resolution Quality. I have resolution set to native, but I have resolution quality set to 60%. It looks like a giant PSP screen, but it makes the game run much faster. This is essentially what I'm trying to do with OpenMW, I just don't know how to keep it at the quality I want without the screen resolution shrinking.

That's essentially how this system would work. Screen Resolution would always be native (except for Windowed mode, where it can be any valid window size) and Resolution Quality would just be called Resolution and be set using pixel counts instead of a relative percentage.

If the app does it, it would avoid the issues of the driver interfering with things, too. As far as the window environment is concerned, we'd simply have a (borderless) window covering the screen, and what we draw and how we draw it is all our prerogative.