Condividi tramite


Creazione di un contesto di rendering e creazione di un contesto di rendering corrente

Nell'esempio di codice seguente viene illustrato come creare un contesto di rendering OpenGL in risposta a un messaggio di WM_CREATE. Si noti che è stato configurato il formato pixel prima di creare il contesto di rendering. Si noti anche che in questo scenario il contesto del dispositivo non viene rilasciato in locale; quando la finestra viene chiusa, dopo aver reso il contesto di rendering non corrente. Per altre informazioni, vedere Eliminazione di un contesto di rendering. Si noti infine che è possibile usare variabili locali per gli handle del contesto del dispositivo e del contesto di rendering, perché con le funzioni wglGetCurrentContext e wglGetCurrentDC è possibile ottenere handle per tali contesti in base alle esigenze.

// a window has been created, but is not yet visible  
case WM_CREATE: 
    { 
    // local variables  
    HDC      hdc ; 
    HGLRC    hglrc ; 
 
    // obtain a device context for the window  
    hdc = GetDC(hWnd); 
     
    // set an appropriate pixel format   
    myPixelFormatSetupFunction(hdc); 
 
    // if we can create a rendering context ...   
    if (hglrc = wglCreateContext( hdc ) ) { 
 
        // try to make it the thread's current rendering context  
        bHaveCurrentRC = wglMakeCurrent(hdc, hglrc) ; 
 
        } 
 
    // perform miscellaneous other WM_CREATE chores ...  
 
    }  
    break;