J'ai un petit problème sous Linux, avec Ubuntu 8.10 et carte graphique nvidia 280

J'ai qu'une seule résolution, celle définie par nvidia-settings, comme j'ai deux écrans, elle est de 2560*1024 (2 fois 1280*1024).

Le problème est que lorsque je programme une petite application pour énumérer toutes les résolutions disponibles, j'en ai qu'une: 2560*1024.

Faut que je fasse un programme en plein écran avec opengl, et donc décider de quelle résolution choisir au démarrage du programme.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Display* display = XOpenDisplay (0);
 
int eventbase, errorbase;
 
if (XF86VidModeQueryExtension (display, &eventbase, &errorbase))
{
    int screennumber = DefaultScreen (display);
    int modeCount;
    XF86VidModeModeInfo** modes;
 
    XF86VidModeGetAllModeLines (display, screennumber, &modeCount, &modes);
 
    cout << "Nombre de résolution: " << modeCount << endl;
 
    for (int i = 0; i < modeCount; ++i)
    {
       	cout << "Largeur: " << modes[i]->hdisplay << " Hauteur: " << modes[i]->vdisplay << endl;
 
    }
}
me retourne:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
Nombre de résolution: 1
Largeur: 2560 Hauteur: 1024
Quelqu'un aurais t'il une solution ?


PS: Sous le moteur graphique Ogre, j'ai aussi qu'une seule résolution. Et sous Blender, pas moyen de le mettre en mode fenêtré, il s'exécute tout le temps en plein écran.