在着色器中使用Texture2D数组的更简单方法

问题描述

我想在PixelShader中通过更简单的方式使用Texture2D数组。

也就是说,

PS

Texture2D map[3] : register(0);

if (input.index == 0)
    color = map[input.index].Sample(samp,input.uv);
else if (input.index == 1)
    color = map[input.index].Sample(samp,input.uv);
else
    color = map[input.index].Sample(samp,input.uv);

但是它给我带来了错误,所以我改用这样的方式。

PS

if (input.index == 0)
    color = map[0].Sample(samp,input.uv);
else if (input.index == 1)
    color = map[1].Sample(samp,input.uv);
else
    color = map[2].Sample(samp,input.uv);

这是在数组中使用Texture2D的最佳方法吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)