Articles of opengl es

有效地读取XBMC呈现的屏幕内容的平均颜色

运行XBMC更改电视环境光的颜色时,我想要获得屏幕内容的平均颜色。 XBMC运行在一个带有运行Debian衍生分发的OpenGL ES 2.0硬件(树莓派)的小型HTPC上。 我想我必须从XBMC使用OpenGL绘制的屏幕帧缓冲区读取数据。 (至less,我想,并希望XBMC渲染使用OpenGL的一切。) 是否有可能读取代表整个屏幕输出的OpenGL帧缓冲区? 我需要什么来访问它? 我是否也需要一个自己的渲染上下文来访问屏幕的帧缓冲区? (我没有自己渲染任何东西到屏幕上,我只想读 )。 有效地计算平均颜色是下一个任务。 我正在考虑每行/列每8或16像素(足够,我们正在谈论1080p高清电影),然后计算CPU上的平均值。 任何更好的解决scheme的想法是受欢迎的。

如何在Linux上开发OpenGL ES(GLES)2.0应用程序?

我想在我的Ubuntu机器上开发OpenGL ES 2.0应用程序。 我找不到任何支持GLES 2.0的库/模拟器。 有什么build议么?

没有X的硬件加速

我想知道是否有可能没有Xorg和DDX驱动程序的graphics硬件加速,只有内核模块和其余的用户空间驱动程序。 我问这是因为我开始在embedded式平台上开发(比如beagleboard或者更为粗略的是德州仪器集成GPU的ARM芯片),而且我会在没有graphics服务器开销的情况下获得硬件加速(这不是需要)。 如果是的话,怎么样? 我在想OpenGL或OpengGLES的实现,或者Qtembeddedhttp://harmattan-dev.nokia.com/docs/library/html/qt4/qt-embeddedlinux-accel.html 而TI提供了大量的文档,但仍然不清楚http://processors.wiki.ti.com/index.php/Sitara_Linux_Software_Developer%E2%80%99s_Guide 谢谢。

什么是EGL?如何使用它?

任何人都可以解释我什么是EGL,它是什么? 我如何在Linux上使用OpenGL-ES的EGL? EGL是硬件和操作系统之间的一个层面吗?

基于OpenGL ES的桌面硬件加速OpenVG实现

我目前正试图让OpenVG在我的桌面上运行。 问题出现在这里:我/将会开发一个Windows CE设备的应用程序(使用.NET Compact框架),它具有硬件加速OpenGL ES 2.0和OpenVG 1.0.1(基于TI OMAP35x,如果您有兴趣)。 该应用程序肯定会使用OpenVG进行绘制,如果OpenVG不提供这些效果(如模糊),OpenGL可能会产生一些效果。 现在我想在没有模拟器的情况下在我的桌面上开发(参见这个问题 )。 所以我认为我只是用P / Invoke来导入OpenVG,这很容易,因为OpenVG的人把它们的常量变成了真正的枚举,虽然是一个过程式的C API,但它很好地转换成了一个面向对象的forms绘图和path,画图,描边和图像对象)。 我也设法使用不同名称的DLL和入口点 。 呵呵,我导入了EGL 1.3,也很容易翻译成面向对象的API。 直到这一点,听起来相当不错。 我以为我只是使用Khronos的OpenVG参考实现,但是速度很慢。 真的很慢。 你知道,就像清理表面一秒钟 ! 所以我想,很好,OpenVG是一个标准,我只是采取其他的实现之一。 他们中的大多数是基于OpenGL,这是我想要的。 或者不是吗? 不,这不对。 使用EGL 1.3(随PowerVR Windows Emulation SDK提供的OpenGL ES 2.0)创buildOpenGL ES 2.0表面与我尝试的任何OpenVG实现都不兼容。 其中一些需要传统的OpenGL(AmanithVG GLE),PowerVR提供的EGL版本不支持OpenVG。 大多数实现甚至没有EGL,并使用一些奇怪的函数来初始化上下文 – 所有这些都假定已经创build了OpenGL上下文。 OpenGL,而不是OpenGL ES。 叹。 我唯一可以工作的是AmanithVG SRE,它对于软件实现来说非常快,而且不依赖于OpenGL或者EGL。 它的工作原理,但对于实时animation来说还是太慢了。 我不能相信这些事情是错的。 我真的很想使用WindowsMo​​bile.DirectX.Direct3D,PowerVR为Desktop Windows提供了一个仿真层,希望最终的电路板支持包可以提供Direct3D作为OpenGL ES包装,就好像它在很多设备。 所以,最后的问题是: Windows桌面系统中是否有OpenVG实现与OpenGL ES […]