用于GLSL图像处理的小型C/C++库?

3
我正在寻找一个小型跨平台库,可以让我轻松地将多个GLSL片段着色器应用到图像上。仅是基本的2D图像处理。我擅长C++和GLSL着色器编写,但在OpenGL方面并没有太多的经验。
所有实际的图像处理都将使用GLSL着色器完成,因此我不需要一个具有图像处理功能、模型和图像文件加载等大型库。
我只需要这个库来处理OpenGL上下文,处理设置FBO和加载/应用给定着色器。我不想在窗口中显示结果图像,因此希望能够简单地进行无窗口渲染设置。
我已经查看了常见的OpenGL框架,并且在SFML中取得了一些成功,但遗憾的是SFML仅支持带有8位颜色的纹理-对于这个任务,我需要完整的32位浮点精度。可能像Cinder这样的框架可以处理我的要求,但对于我要做的事情来说,它似乎过于复杂了。
所以...有没有什么小型库的想法,可以让我轻松地将GLSL着色器应用于2D图像中的FBO?

嗯,我认为你只是想要基本的OpenGL。但是,我不太确定如何获得非显示渲染上下文,这可能是你真正想要的。SDL是一个跨平台GUI库,支持OpenGL渲染,并不会对OpenGL本身进行抽象处理,你可以使用常规的OpenGL函数。 - thecoshman
很遗憾,我可能没有时间深入研究OpenGL,这就是为什么我希望一个小型库可以帮助我完成这个项目。我很惊讶居然很难找到这样的库。这似乎是一个相当简单的事情,一个库应该可以处理:“嗨,库,这里有一张32位图像和一些参数,请使用你的GLSL魔法处理它并返回给我处理后的图像”。 - wednesdays
这并不是深入研究OpenGL,特别是当你已经在使用着色器时。 - thecoshman
http://glip-lib.sourceforge.net/ - user1189812
2个回答

0

你可以使用SFML来创建上下文和加载文件,然后使用OpenGL函数在内存中对它们进行操作。它们非常简单,如果你真的很有经验的话,学习它们不会有任何问题。


0

你可能可以使用一些Enlightenment Foundation Libraries (EFL)来实现它。我没有使用过他们的OpenGL库,但是我计划去尝试。我曾经在一个嵌入式项目中使用过其中的一些库。你可以使用EFL的evas库,它带有OpenGL引擎,只需渲染到软件缓冲区即可。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接