我正在用 OpenGL(更具体地说是 lwjgl)制作一个 GUI。我一直在努力研究不同的方法来做到这一点,但我很难找到我想要的东西。我不想使用任何外部库(只有在 OpenGL 中构建的库,甚至试图远离使用 GLUT),我想让它在任何支持 OpenGL 的东西上工作(例如,帧缓冲区对象不适用于旧的显卡)。
我正在制作一个带有可滚动面板作为组件的 3D GUI。问题是我不知道如何在不进行大量计算以仅渲染其中一部分的情况下绘制部分 GUI 组件。我用 OpenGL 原语制作组件,而不是纹理。我希望有一种简单的方法可以做到这一点,比如使用多个视口。我什至不明白什么是视口。
简而言之:我需要一个可滚动面板作为与其他 GUI 组件重叠的组件(因为它将是一个下拉菜单),并且不要让面板中的任何组件绘制到面板之外。