我有一个片段着色器,可以在一些输入数据和旧硬件上进行迭代:
error C6013:只能在此配置文件中索引纹理和弦数组,并且只能使用循环索引变量索引。
我在谷歌上看到了很多东西,比如“XX之前的硬件不支持片段着色器上的索引”。
我想知道这种行为在GLSL版本中是否是标准化的,比如"glsl版本到XX不支持片段着色器上的索引“。如果是的话,哪个版本开始支持它。
发布于 2012-05-31 17:50:40
该错误来自nv4x (GeForce 6/7卡)的Nvidia编译器,是硬件的一个限制。任何解决方法都需要完全禁用硬件并使用纯软件呈现。
GLSL的所有版本都支持该语言的索引--这个错误属于捕获范围--所有这些都超出了硬件资源限制。
发布于 2012-05-31 17:28:02
你确切的硬件是什么?
旧的ATI卡(低于X1600)及其驱动程序有这样的问题。最肯定的是,英特尔的最新牌也不受此影响。
“您对如何检测我的硬件是否能够在片段着色器中索引有任何建议吗?”
。
唯一可靠但不那么漂亮的方法是获取渲染者的信息:
glGetString(GL_RENDERER)并检查此呈现器是否出现在不受支持的列表中。
https://stackoverflow.com/questions/10838089
复制相似问题