4

我想对菜单使用倾斜投影,对 3d 场景使用透视投影。有没有办法将这两个预测结合起来?

一般来说,我在问如何在 opengl 中为我的 3d 场景创建菜单。

使用 c++ 语言进行编程。

谢谢!

4

2 回答 2

7

没问题。只需加载适当的模型视图和投影矩阵即可绘制 3D 场景。然后加载 2D 矩阵,关闭深度测试,并渲染你的菜单。这是它可能看起来的示例。

glEnable(GL_DEPTH_TEST)
glMatrixMode(GL_MODELVIEW);
--code to load my Perspective Modelview Matrix
glMatrixMode(GL_PROJECTION);
--code to load my Perspective Projection Matrix
--code to draw my 3D scene
glMatrixMode(GL_MODELVIEW)
glLoadIdentity()
glMatrixMode(GL_PROJECTION);
--code to setup my "menu" coords, probably something like
  gluOrtho2D
glDisable(GL_DEPTH_TEST)
--code to draw the menus
于 2010-04-09T13:53:26.183 回答
3
  • 绘制您的 3D 场景。
  • 推投影矩阵。
  • (也许清除深度缓冲区)。
  • 设置二维投影。
  • 绘制 2D 菜单。
  • 弹出投影矩阵。
于 2010-04-09T13:45:29.153 回答