请教关于使用OPENGL离屏渲染使用

时间:2021-07-05 04:24:23
我现在想在不显示窗口的情况下渲染一张图片。请问该怎么做?

例如我想直接调用如下函数,就能直接获取使用OPENGL渲染之后的图片。

或者更直接:在不显示窗口的情况下,随便绘制一个什么三角形什么的。保存为图片文件。


bitmap OpenglRender::Render(bitmap oldMap)
{
   bitmap result;
   //使用OPENGL对oldMap进行光照投影等等渲染之后 然后赋值给result
    .............
    .............
    .............
    .............
    .............
    //返回渲染后的bitmap图片
    return result;
}

6 个解决方案

#1


请教各位大神.

#2


google opengl offline rendering.
不创建窗口,无法生成 gl 加速环境,有软件的 gl 实现,比如 mesa,不过速度就不好说了。
最简单的是创建隐形窗口,渲染,然后把 color buffer 的内容存成文件。

#3


引用 2 楼 ri_aje 的回复:
google opengl offline rendering.
不创建窗口,无法生成 gl 加速环境,有软件的 gl 实现,比如 mesa,不过速度就不好说了。
最简单的是创建隐形窗口,渲染,然后把 color buffer 的内容存成文件。

创建隐形窗体?  求步骤.

#4


引用 3 楼 cfsoftcode1 的回复:
引用 2 楼 ri_aje 的回复:google opengl offline rendering.
不创建窗口,无法生成 gl 加速环境,有软件的 gl 实现,比如 mesa,不过速度就不好说了。
最简单的是创建隐形窗口,渲染,然后把 color buffer 的内容存成文件。
创建隐形窗体?  求步骤.

?? 太长了,你自己 google glx 吧.

#5


请教各位大神. 

#1


请教各位大神.

#2


google opengl offline rendering.
不创建窗口,无法生成 gl 加速环境,有软件的 gl 实现,比如 mesa,不过速度就不好说了。
最简单的是创建隐形窗口,渲染,然后把 color buffer 的内容存成文件。

#3


引用 2 楼 ri_aje 的回复:
google opengl offline rendering.
不创建窗口,无法生成 gl 加速环境,有软件的 gl 实现,比如 mesa,不过速度就不好说了。
最简单的是创建隐形窗口,渲染,然后把 color buffer 的内容存成文件。

创建隐形窗体?  求步骤.

#4


引用 3 楼 cfsoftcode1 的回复:
引用 2 楼 ri_aje 的回复:google opengl offline rendering.
不创建窗口,无法生成 gl 加速环境,有软件的 gl 实现,比如 mesa,不过速度就不好说了。
最简单的是创建隐形窗口,渲染,然后把 color buffer 的内容存成文件。
创建隐形窗体?  求步骤.

?? 太长了,你自己 google glx 吧.

#5


请教各位大神. 

#6