Modify

Ticket #97 (closed bug: fixed)

Opened 10 years ago

Last modified 9 years ago

Resolution selection failure on dual screen setup

Reported by: Elie De Brauwer <elie@…> Owned by: parpg
Priority: major Milestone: Techdemo 1
Component: scripts Version: trunk
Keywords: Cc:
Blocked By: Blocking:
Department:

Description

At this point I'm testing parpg on my laptop running Ubuntu 9.04 using the nvidia drivers version 180.44.

When I'm running this standalone, everything works find and when I go to options I get a list of resolutions which makes sense. However when I connect a secondary monitor (laptop resolution 1680x1050, lcd resolution 1280x1024 and this makes use of 'twinview'), the game will only present me one choice being 2960x1050 (sum(width)x max(heights) ). (When I use the nvidia-settings dialog box the same value is responded under the X Screen 0 tab as Dimensions string.

This can off course lead to very annoying situations ...

Attachments

Change History

comment:1 Changed 10 years ago by b0rland_parpg

What happens if you choose one of the valid resolutions and fullscreen mode before plugging in the secondary monitor, then plug it in and try to launch the game? Will it switch into the resolution that you selected? Will it only switch the first monitor or both? Or will it just fail?

The point of my question is to try and figure out whether your video driver still considers those resolutions as valid for fullscreen after you plug in the second monitor. It certainly doesn't seem to report them as valid at least.

I'll try the same on my two systems (ATI and Intel) for additional statistics and then think of how to work around this better.

comment:2 Changed 10 years ago by eliedebrauwer

The resolutions are learned from the engine, in scripts/hud.py in initializeOptionsMenu() the resolution are learned from a call to settings.getPossibleResolutions() where settings is the result of the getSettings() on a fife.engine. So this error is located upstream.

@b0rland_parpg, i haven't tested that yet, when i have some time i'll try to give it a go overhere, but I have only nvidia based systems around me, so it would be great if you got give the workaround (if i get to one) a spin

comment:3 Changed 10 years ago by eliedebrauwer

I have taken a little look at this. The resolution selection box is filled by values learned from FIFE which actually does a call to SDL_Listmodes, thus the result we get is actually what SDL claims to be possible resolutions. So actually we're running in a fight between SDL and the videodrivers.

For nvidia twinview (but also xrandr i believe), I see at this point only two workarounds: a) specifying various metamodes b) not playing it fullscreen.

Since a) is something you typically you don't want your lazy users to do, my suggestion would be to have a decent support for windowed mode.

This basicly means that when operating in windowed mode, we should also offer several 'common sense' screen sizes (e.g. 1024x768, ...) even if the SDL_Listmodes doesn't support it.

I took a small look in unknown horizons, and there they offered me the selection in windowed mode between the full-2-screen-resolution and the current windowed resolution, at least that way I could make a decent choice.

At this point once you have a dual monitor setup, the only thing you can select (when it comes to resolution) is what full screen resolution (so you cannot make things smaller without asking users to edit the settings file)

comment:4 Changed 9 years ago by eliedebrauwer

  • Status changed from new to closed
  • Resolution set to fixed

(In [348]) Ticket #97. Fix by eliedebrauwer, extended options menu with he possibility to have a windowed-resolution list and a fullscreen-resolution list and to switch between both using the dialogue checkbox. closes #97

View

Add a comment

Modify Ticket

Action
as closed
The resolution will be deleted. Next status will be 'reopened'
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.