OpenGL Stencil:GL_REPLACE_VALUE_AMD 的可用性
Posted
技术标签:
【中文标题】OpenGL Stencil:GL_REPLACE_VALUE_AMD 的可用性【英文标题】:OpenGL Stencil: Availability of GL_REPLACE_VALUE_AMD 【发布时间】:2016-01-19 12:01:04 【问题描述】:OpenGL Stenciling, seperating ref from value written?
在这个问题的答案中,供应商特定的扩展 GL_REPLACE_VALUE_AMD
能够完全完成我在 OpenGL 中努力做的事情,但我担心它会限制我希望我的程序运行的计算机和平台上,我没有运气研究它在哪里不可用。
我的目标是让程序在任何支持 OpenGL 2.0 的计算机上运行,并且它们之间没有任何功能差异。我是否应该编译一个使用这个扩展的程序,这个集合中的哪些计算机/平台将不再能够毫无问题地运行该程序(如果有的话)?
【问题讨论】:
【参考方案1】:它是供应商扩展这一事实应该是一个直接的线索,表明您很有可能将自己限制在该供应商的硬件上。这不是 100% 的保证; NV_texture_barrier 已在几乎任何可以运行 GL 3.3 或更高版本的设备上实施多年。
进一步的研究表明,that extension 的发布日期是 2012 年。这表明该扩展可能会由更新的支持 GL 4.x 的硬件实现。
如果您想要更准确的信息,有databases of extension usage 可以提供更清晰的图片。由此,我们看到the extension is only implemented on AMD hardware。虽然它在 AMD 的 GL 3.x 级硬件上可用,但在 AMD 的任何 2.x 级硬件上都不可用。
因此,如果您的目标是最大程度地支持 GL 2.0(为什么不支持 2.1?),那么您就不能使用该扩展。
【讨论】:
以上是关于OpenGL Stencil:GL_REPLACE_VALUE_AMD 的可用性的主要内容,如果未能解决你的问题,请参考以下文章
OpenGL Stencil Buffer,它们的支持程度如何?
OpenGL Stencil:GL_REPLACE_VALUE_AMD 的可用性
OpenGL ES 学习教程(十三) Stencil_TEST(模板缓冲测试)
OpenGL ES 学习教程(十三) Stencil_TEST(模板缓冲测试)