在opengl中显示图像
Posted
技术标签:
【中文标题】在opengl中显示图像【英文标题】:Display image in opengl 【发布时间】:2009-12-17 03:21:38 【问题描述】:我对 openGL 还很陌生。我有一个正在运行的 3d 游戏,它似乎运行得相当好。我想做的是直接在屏幕上显示图像,我不确定最简单的方法。我唯一的想法是在屏幕正前方绘制一个矩形并将图像用作纹理。似乎应该有一个更简单的方法。
这是用于菜单屏幕和其他东西的,所以如果还有更好的方法,请告诉我。
【问题讨论】:
【参考方案1】:我建议通过gluOrtho2d()
设置 OpenGL 进行 2D 渲染;然后,将图像加载到纹理中,并如您所说,通过创建多边形并将纹理绑定到它来将其绘制到屏幕上。一个很好的例子可以找到here。
【讨论】:
【参考方案2】:你已经有了基本的想法。另一个明显的替代方法是使用glDrawPixels()
,但我认为您会发现纹理方法的性能要好得多。如果你觉得很活泼,你也可以看看 Pixel Buffer Objects。
祝你好运!
【讨论】:
以上是关于在opengl中显示图像的主要内容,如果未能解决你的问题,请参考以下文章
为啥在 glfw 窗口上没有使用 opengl 显示位图图像?在 C++ 中读取位图图像文件时出现问题
使用 OpenGL 在 Qt 中显示来自 DirectShow 的原始图像数据