【发布时间】:2014-10-13 04:10:30
【问题描述】:
我开始在 Windows 7 计算机上进行 OpenGL 编程,我的应用程序由全屏窗口组成,其中每个监视器都有一个单独的窗口和线程。我必须采取哪些步骤才能获得连续场景?我仍然对许多 OpenGL 概念以及我应该如何处理它感到困惑。除了视图矩阵和上下文额外工作之外,它与单显示器渲染基本相同,还是更复杂?
编辑: 我找到了一个有信息的网站,但它很模糊,没有示例代码: http://www.rchoetzlein.com/theory/2010/multi-monitor-rendering-in-opengl/
【问题讨论】:
-
是的,您必须为每个窗口单独渲染,以某种方式设置投影矩阵,如果您将窗口按边缘排列,就好像它们是瓷砖一样,您将获得无缝图像。这称为平铺渲染。对我来说,写一个全面的答案为时已晚,但它可能会在搜索字符串“OpenGL 平铺渲染”上为您提供一些结果。
-
谢谢,我一直在寻找要在搜索中使用的准确词汇。我还没有找到一个与我的问题直接相关的问题(尽管这可能只是我的无知)。我不确定我看到的许多帖子是否在谈论多显示器或平铺精灵。我想看看需要什么 API 调用方式和一个简单的步骤方法。我知道这是一个困难的问题,所以当我被允许时,我会悬赏它。
-
其实平铺渲染并没有那么难。碰巧的是,我目前正在为另一个处理上下文重用或在多个窗口之间共享的 SO 编写一个示例。您的问题也很适合将与您的问题相关的代码放入该示例中。
标签: c++ c winapi opengl multiple-monitors