Developing 3D stereo application compatible with Nvidia 3D Vision 2

We are trying to update our software to add 3D compatibility with Nvidia 3D Vision 2 glasses. I’m testing it with an Nvidia GeForce GTX 960 and a compatible ASUS screen. I was able to see other sample applications in 3D using the Nvidia 3D glasses.

I’m trying to use Qt with OpenGL without success.
I’m not sure what I’m doing wrong but the 3D option never gets activated.

Do we need a specific API to activate the 3D option using OpenGL?
Does it have to be full screen?
The Stereo button light never becomes available.
We use the GL_BACK_LEFT and GL_BACK_RIGHT buffers and GL_STEREO active. See sample code attached.

We only see the right buffer (last buffer) drawn.
I believe we should not use swapBuffers() after every draw (left and right) call then we see the 2 stereo images drawn on the same 2D screen.

I do not see specific 3D options in the Nvidia control panel. See image attached.

Thank you,

int nScreens = 1;
    const GLenum DrawBufferNormal[1] = {GL_BACK};
    const GLenum DrawBufferStereo[2] = {GL_BACK_LEFT, GL_BACK_RIGHT};    
    bool do_stereo = false;
    if (GLOBAL.StereoView3D > 0){
        GLboolean has_stereo;
        glGetBooleanv(GL_STEREO, &has_stereo);
        //StereoSupported = has_stereo;
        if (has_stereo){
            do_stereo = true;
        }
        qDebug()<<"Stereo vision supported: " << (has_stereo ? "YES" : "NO");
    }
    if (do_stereo){
        // Draw Stereo
        nScreens = 2;
        pDrawBuffer = DrawBufferStereo;
        pViewPoint = ViewPoint_Stereo;
        pPerspective = Perspective_Stereo;
    } else {
        // Draw normal
        pDrawBuffer = DrawBufferNormal;
        pViewPoint = &View_Point;
        pPerspective = &Perspective;
    }
    for (int i=0; i<nScreens; i++){
        glDrawBuffer(pDrawBuffer[i]);
        glClear(GL_DEPTH_BUFFER_BIT | GL_COLOR_BUFFER_BIT);

        USE_VIEW_POINT_PERSPECTIVE(pViewPoint[i], pPerspective[i]);
        
        ...draw scene...
        
        //glFlush(); // not required

    }
    //swapBuffers(); // not required

What operation system are you using on Windows 10, make sure windows Display setting (under advance settings) is set to 3D enabled on. Also you may want to check if “Manage 3D Settings” in Nvidia control panel make sense.

Just wondering what are your glFrustum and glLookat values for left and right views?