首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GPU、着色编译器和OpenGL应用

GPU、着色编译器和OpenGL应用
EN

Stack Overflow用户
提问于 2013-07-05 06:50:00
回答 2查看 830关注 0票数 0

我有一个OpenGL应用程序,它使用的是shaders.On桌面,在这里我有一个显卡,并且安装了驱动程序。但是当GPU被禁用时,我的应用程序不会在创建窗口之后运行和崩溃。我有以下的理解和怀疑:

  • GLSL编译器是由GPU供应商提供的,所以当没有GPU驱动程序时,应用程序就会崩溃。
  • 这是否意味着在没有GPU的系统上,使用着色器的OpenGL应用程序将无法运行?我的理解是,GPU只会增强fps,应用程序也应该没有GPU运行。
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-07-05 10:12:57

  • GLSL编译器是由GPU供应商提供的,所以当没有GPU驱动程序时,应用程序就会崩溃。

从技术上讲,GLSL编译器是符合标准的高版本OpenGL实现的一部分。但这只是你说的最重要的话。所以:

  • 这是否意味着在没有GPU的系统上,使用着色器的OpenGL应用程序将无法运行?

您需要一个能够实现程序所需功能的OpenGL实现。大多数OpenGL实现都是以GPU和(瘦)驱动层的组合形式完成的,这使得通过OpenGL与GPU对话成为可能。

  • 我的理解是,GPU只会增强fps,应用程序也应该没有GPU运行。

这个想法是错误的。GPU不仅仅是一个“性能增强器”。GPU是一个功能齐全的处理平台,所有的OpenGL版本都设计成使用这种处理器来实现,GPU就是这样。有软件仿真,但这些都是缓慢的,往往不完整的功能。

事实上,OpenGL总是应该使用某种GPU来实现。OpenGL的第一个版本实际上是SGI硬件图形栅格器的寄存器和命令的文字1:1用户空间API;甚至一些早期的OpenGL令牌都将数字值放入SGI硬件的控制寄存器中。

票数 0
EN

Stack Overflow用户

发布于 2013-07-05 07:12:14

为了运行OpenGL应用程序,您必须有一个能够理解OpenGL调用的驱动程序,但是如果安装软件模拟驱动程序,您可以不使用GPU运行应用程序。一个是Mesa有一个windows版本的Mesa,另一个是传输游戏中的Swiftshader,而后者是商业软件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17482751

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档