Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在嵌入式linux中使用OpenGL的缺点_Opengl_User Interface_Embedded Linux - Fatal编程技术网

在嵌入式linux中使用OpenGL的缺点

在嵌入式linux中使用OpenGL的缺点,opengl,user-interface,embedded-linux,Opengl,User Interface,Embedded Linux,现在,我面临一个关于在嵌入式linux的Qt和Qwt应用程序中绘制一些曲线的问题(请参阅链接中有关该问题的更多详细信息) 提议的解决方案之一是将OpenGL与QwtPlot结合使用,但我的老板担心OpenGL会以更高的处理成本确保其图形优化,因此在一个领域的改进会导致另一个领域的问题。我必须说,这个理由似乎令人信服 现在我还没有检查改进的确切程度,也不知道使用OpenGL需要多少额外的处理,但我在这之后提出了一个更一般的问题(他的回答可能会反驳我老板的论点):使用OpenGL的缺点是什么,特别是

现在,我面临一个关于在嵌入式linux的Qt和Qwt应用程序中绘制一些曲线的问题(请参阅链接中有关该问题的更多详细信息)

提议的解决方案之一是将OpenGL与QwtPlot结合使用,但我的老板担心OpenGL会以更高的处理成本确保其图形优化,因此在一个领域的改进会导致另一个领域的问题。我必须说,这个理由似乎令人信服

现在我还没有检查改进的确切程度,也不知道使用OpenGL需要多少额外的处理,但我在这之后提出了一个更一般的问题(他的回答可能会反驳我老板的论点):使用OpenGL的缺点是什么,特别是在嵌入式linux环境下?我试图在网络上找到一些东西,但除了OpenGL和DirectX之间的斗争相关的问题外,谷歌不会帮助解决缺点

但我的老板担心OpenGL会以更高的处理成本确保其图形优化

你的老板在没有实际知识的情况下进行推测。这类似于过早优化

OpenGL不是一个库,它是一个访问图形系统的API,它被刻意设计为具有很少的开销,并且不提供任何超出GPU实际功能之外的东西。OpenGL中没有更高级别的“对象”。OpenGL所做的就是让GPU按照你告诉它的顺序和方式画点、线或三角形

使用OpenGL的缺点是什么,特别是在嵌入式linux环境下


如果您的目标嵌入式设备具有支持OpenGL的GPU:Zero。事实上,使用OpenGL将大大提高性能并减少CPU负载。不过,在嵌入式系统上,您更可能需要处理OpenGL ES。在其他帖子中,您提到您正在使用TI OMAP。到底是哪一个?因为其中一些配置了PowerVR GPU。

谢谢您的回答。既然你问了,我就用OMAP L138。你提到了OpenGL ES,但维基百科告诉我它是一个3D库,而我只需要2D;难道没有更有限的版本吗?@Momergil:2D只是3D,矢量的一个分量保持为0。此外,OpenGL和OpenGL ES都不是库(不管维基百科怎么说)。它们被指定为API,因此是操作系统附带的系统级模块。现在所有的GPU都是为“3D”操作而设计的,只有一手特殊的2D功能单元(如视频解码)。老实说,当我们谈论“3D”GPU时,我们实际上指的是能够巧妙地处理4元素矢量(用于同质坐标)的图形处理器,这些矢量最终在某些帧缓冲区中成为2D光栅图像。@Momergil:现在OMAP L138没有集成图形处理器,这意味着程序必须自己用内容填充帧缓冲区。OpenGL优化了在图形处理器上的操作;有一些软件实现,但为了获得相同的结果,这些软件实现通常比特殊用途的绘图例程更好(不过,您编写的任何通用图形库都很可能比高度优化的OpenGL软件仿真更好)。QwtPlot依赖于Qt绘图功能,在Qt的最新版本中,Qt绘图功能使用OpenGL。@Momergil:归根结底,您在没有专用图形处理器的设备上运行,但是您使用的现有软件绘图方法很可能非常高效。您可以尝试实现自己的绘图例程,看看它工作得如何。好吧,非常感谢您的回复,包括解释以及L138的情况!它帮助了很多:)顺便说一句,我的错误是:维基百科告诉我们它实际上是一个API;是我没注意:)