簡體   English   中英

創建沒有窗口的OpenGL上下文

[英]Creating OpenGL context without window

我試圖找出最簡單的方法來創建用於離屏渲染的無窗口OpenGL程序。

目前,我正在使用它,並且到目前為止效果很好:(為清楚起見,此處刪除了錯誤檢查)

BOOL create_opengl_context(){
    GLuint PixelFormat;
    static PIXELFORMATDESCRIPTOR pfd;
    hDC = GetDC(NULL);
    PixelFormat = ChoosePixelFormat(hDC, &pfd);
    SetPixelFormat(hDC, PixelFormat, &pfd);
    hRC = wglCreateContext(hDC);
    wglMakeCurrent(hDC, hRC);
}

使用安全嗎? 創建無窗口OpenGL程序的“標准”方法是什么?

編輯:我正在使用FBO進行屏幕外渲染。

純無窗口OpenGL的舊方法是使用PBuffer。 在Windows上,這需要使用常規窗口創建中間OpenGL上下文,以獲得所需的擴展功能指針。 在X11 / GLX上,無需費一切功夫。

實現屏幕外渲染的現代方法是使用常規但隱藏的窗口,該窗口具有常規的OpenGL上下文和FBO作為渲染目標。

前沿技術,但尚未得到很好的支持(某些嵌入式設備除外),正在使用EGL進行可繪制的創建。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM