- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在开发一个应用程序,它可以通过逐渐禁用某些功能和优化来使用从 4.6 到 2.0 的任何 OpenGL 版本。这意味着它可以与 2.0 一起使用,但更喜欢最新的受支持版本,以便能够使用 OpenGL 3.x-4.x 中的所有可用功能。此外,它处理核心上下文和兼容性上下文之间的所有差异,因此它应该适用于任何配置文件。
在 Windows 上似乎不会有问题,因为我可以省略版本和配置文件并自动获取与最新支持版本的兼容性上下文。
但在 macOS 和 Mesa 上,情况有所不同。在那里我必须请求某个特定版本的核心向前兼容上下文,即使我不想要特定版本,我想要最新版本。
我该如何处理这个问题?我是否必须循环尝试所有版本 4.6、4.5、4.4、4.3、4.2、4.1、4.0、3.3、3.2、3.1、3.0、2.1、2.0,直到成功创建上下文?或者有更好的解决方案吗?
如果没有更好的通用解决方案,我想知道它在不同平台上的不同驱动程序上的实际工作情况。
最佳答案
如果您要求 OpenGL 版本 X.Y,系统可以为您提供任何支持的 OpenGL 版本,该版本向后兼容 X.Y。也就是说,要求 X.Y 意味着“我已经针对 GL 版本 X.Y 编写了我的代码,所以不要给我一些会破坏我的代码的东西。”
但是,OpenGL 3.2+ 的核心配置文件不向后兼容 2.0。事实上,这就是核心/兼容性区别的全部要点:兼容性配置文件提供对 API 更高功能的访问,同时与现有代码向后兼容。核心配置文件没有。例如,2.0 缺少顶点数组对象,没有它们,核心配置文件 OpenGL 就无法工作。
现在,每个配置文件的所有版本的 OpenGL 都向后兼容该配置文件的所有较低版本的 API 。所以 3.2 核心配置文件向后兼容 4.6 以及介于两者之间的所有内容。并且兼容性配置文件向后兼容所有以前版本的 OpenGL。
但是实现并不需要支持 OpenGL 的兼容性配置文件,只需要核心配置文件。因此,如果您要求 OpenGL 2.0 版,那么实现必须为您提供与 GL 2.0 兼容的最高版本的 OpenGL。如果实现不支持兼容性配置文件,那么这将不是支持的 OpenGL 的最高核心配置文件版本。
如果您想同时支持 OpenGL 的核心版本和任何“兼容”版本,那么您必须为每个路径编写专门的代码。您的代码必须具有 2.0 版本和 3.2 核心版本。由于您有两个版本的代码,因此您必须检查该上下文要使用哪个版本。
这意味着您不需要一种方法来完成您要求做的事情。只需尝试创建一个 3.2 核心配置文件版本,如果这不起作用,请创建一个 2.0 版本。
关于opengl - 请求最新版本的 OpenGL 上下文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66092611/
就目前情况而言,这个问题不太适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、民意调查或扩展讨论。如果您觉得这个问题可以改进并可能重新开放,visit
ECharts是一个纯Javascript的图表库,可以流畅的运行在PC和移动设备上,兼容当前绝大部分浏览器,底层依赖轻量级的Canvas类库ZRender,提供直观、生动、可交互、可高度个性化定制
前言 提示:这里可以添加本文要记录的大概内容: 例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。 提示:以下是本篇文章正文
作为一名ios开发攻城狮,在苹果没有出arc(自动内存管理机制)时,我们几乎有一半的开发时间都耗费在这么管理内存上.后来苹果很人性的出了arc,虽然在很大程度上,帮助我们开发者节省了精力和时间.但是
如何反转Pandas中DataSeries的排序顺序,以便我按降序使用它们? 最佳答案 In [28]: s = pd.Series([20, 10, 30], ['c', 'a', 'b']) In
这个问题已经有答案了: 已关闭10 年前。 Possible Duplicate: Is jQuery $.browser Deprecated? 最新的 jQuery 库是否发生变化 $.brows
我正在开发一个 Intranet 项目,所以我无法复制/粘贴代码,所以希望我的描述和一些小片段会有所帮助。 我知道 MySQL 触发器无法做到这一点,但希望有一种干净的 JPA PrePersist(
这是数据集: 人员状态日期 埃里克 1 1/1/2015 埃里克 2 2/1/2015 埃里克 3 2015 年 3 月 1 日 约翰福音 1 3/1/2015 约翰福音 2 2015 年 2 月 1
现在我正在使用下面的查询按每篇文章的 auto_increment id 排序 mysql_query("SELECT * FROM articles ORDER BY id DESC"); 我想知道
已结束。此问题不符合 Stack Overflow guidelines .它目前不接受答案。 我们不允许提出有关书籍、工具、软件库等方面的建议的问题。您可以编辑问题,以便用事实和引用来回答它。 关闭
已结束。此问题不符合 Stack Overflow guidelines .它目前不接受答案。 我们不允许提出有关书籍、工具、软件库等方面的建议的问题。您可以编辑问题,以便用事实和引用来回答它。 关闭
现在我正在使用下面的查询按每篇文章的 auto_increment id 排序 mysql_query("SELECT * FROM articles ORDER BY id DESC"); 我想知道
在我们做文章的时候常用一些函数修改来实现自己的页面效果,例如,时间的自定义格式 我们常常需要乃至的,搜集了些有关时间格式的CODE,作大家为参考,希望对大家有些帮助 列表页list_article
我想将某些东西提交到 github 存储库,但我(显然)没有任何权利这样做。我对那个 repo 做了一个分支,提交了我的更改并提交了一个 pull-request。 现在,问题是过了一段时间其他人已经
我是 SQL 新手,所以现有的答案对我来说有点复杂。 我有三张 table : WORKER |id |name |date |... JOB |id |name |salary |accept AP
我正在自动从PowerPoint和Excel电子表格中生成PowerPoint报表。在粘贴表格之前,我已经完成了整个过程。 我使用PPApp.CommandBars.ExecuteMso ("Past
我们有 1 个 Kafka 主题和 1 个分区: 从 spring boot kafka 消费者那里看到一个相当奇怪的行为。 Spring kafka消费者在重新启动时总是从主题的开头开始消费。 我已
通过编程从iOS照片库获取最新照片是否有技巧? 我知道我可以按日期搜索,但是我必须每隔一微秒进行一次扫描,以便进行某种比较以准确地找到它。 有没有人做过这个或任何想法? 最佳答案 我之前采取的一种方法
我们上周将 Web 应用程序中的 Telerik Kendo 库从 V2015.2.902 升级到 V2016.1.112。从那时起,我们注意到使用 Kendo 的页面需要很长时间才能加载(30 秒到
我有两个表: STUDENT GRADES ---------- ---------- id id name person_id ad
我是一名优秀的程序员,十分优秀!