是否可以使用LWJGL以无头模式渲染到FBO?

时间:2012-06-06 19:32:56

标签: opengl lwjgl fbo

我需要使用Java包装器为OpenGL LWJGL开发一个应用程序。该应用程序将以无头模式在远程服务器上运行。我试图了解是否可以考虑GL的事实LWJGL(以及其他APis)中的上下文是通过Canvas等Java UI元素创建的。在我的情况下,我需要能够在不创建窗口的情况下初始化GL上下文,因为绘图目标将是FBO,像素缓冲区将从中呈现质地。有一种可能的解决方案虽然在LWJGL中已经称为PBuffer(我猜像素缓冲区)对象。它确实不需要通过窗口创建GL上下文,因为它在内部创建它。我不想使用这种方法,因为它比较旧概念(和更弱)比帧缓冲对象和因为我使用OGL 3.3 - >那么我真的不想和任何旧的管道遗产混在一起。

我基本上有两个问题:

1.我可以在不设置用于基于FBO的渲染(无头模式)的窗口的情况下创建上下文吗?

2.如果第一个问题的答案是否定的,那么我可以在远程服务器上运行这样的应用程序,其中窗口仍然是为了上下文访问而初始化的吗?

更新: 这个问题可以关闭。我通过首先用PBuffers完成初始化测试它来设置一个上下文。然后FBO渲染就像假设一样。

1 个答案:

答案 0 :(得分:1)

我自己找到了答案。首先应该设置PBuffer来创建无头GL上下文。一旦创建,我们就可以使用FBO将帧渲染成图像。