我创建了一个需要OpenGL场景图并使用QGLFrameBufferObject
来渲染结果的类。为了支持(几乎)无限大小,我使用平铺来提取许多小图像,可以在渲染所有图块后组合成大图像。大于GL_MAX_VIEWPORT_DIMS的视口的平铺渲染
我通过为整个图像设置一个视口(glViewport
)然后使用glScissor
来在切片之后“切出”切片来做平铺。这适用于分辨率高达GL_MAX_VIEWPORT_DIMS
,但会导致超出此限制的空白图块。
我该如何解决这个问题?我需要改变相机还是有任何巧妙的技巧来做到这一点?我使用Coin/OpenInventor,因此任何针对这些框架的提示都非常受欢迎。
我最终使用[SbViewVolume :: narrow](http://doc.coin3d.org/Coin/classSbViewVolume.html#a10f0ca68486f3dc6fa9253e705573d5a)调整视图体积以缩小渲染的“窗口”。 – larsmoa