【问题标题】:DirectX/HLSL error PS2.0DirectX/HLSL 错误 PS2.0
【发布时间】:2011-04-01 17:29:19
【问题描述】:

我收到这个错误

着色器在依赖链中使用纹理寻址操作,该依赖链过于复杂,目标着色器模型 (ps_2_0) 无法处理。

因为我已将此行添加到我的像素着色器中:

浮高斯[NUMWT] = {5.052271056506993e-15,9.134720359492243e-12,6.07588281731559e-9,0.0000014867195067797903,0.00013383022504883334,0.004431848388225362,0.053990966224306644,0.2419707232244606,0.39894227826685835,0.2419707232244606,0.053990966224306644,0.004431848388225362,0.00013383022504883334,0.0000014867195067797903,6.07588281731559e- 9、9.134720359492243e-12、5.052271056506993e-15};

这个数组是不是太大了?

【问题讨论】:

    标签: directx hlsl


    【解决方案1】:

    这一点

    着色器使用纹理寻址操作

    可能是您的问题所在的关键。错误不是带有行号和字符号吗?

    在复杂路径(可能是分支)内寻找您从纹理采样或计算位置的点。

    【讨论】:

      【解决方案2】:

      进行了快速测试,使用 ps_2_0(将 NUMWT 定义为 17)对我来说该数组编译得很好,所以我猜你的错误在其他地方。

      另外,为什么在处理这样的“小”数组时会有任何问题?纹理要大得多。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-08-30
        • 1970-01-01
        • 1970-01-01
        • 2022-12-11
        • 1970-01-01
        • 2011-06-19
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多