用shader 怎么能修改每一个像素点

我想传一个数组,用来控制图片的每一个像素点,但是我看文档好像没有这个类型,要怎么实现呢

有大佬解惑吗

shader的数组是定长的,不能传不固定的数组

个人建议将控制uv的逻辑写到shader中,外部参数通过shader属性传进来

感觉逻辑不适合放shader里吧 GPU适合处理简单的事情

让材质球读一个材质纹理,材质纹理每个像素的rgba,代表材质球渲染图片每个像素对应的数组值,然后着色器里面混合一下就行。(当然如果你数组里面的数据很复杂,推荐还是通过算法去统一解决)

静态的你这种方式很不错,就怕他是动态的~

动态还是得用算法

动态的就要配合多张纹理或者往裝配器里传额外参数去实现了,但是这些都另辟蹊径,算法才是最优解 :rofl:

秃头警告 :joy_cat:

主要是想控制每个像素点的显示 隐藏,基本上都是几万的数组,而且还是动态的

显示隐藏有规则吗?是固定的几种规则吗?如果是的话,可以用上面哥们的使用贴图采样来代替数组获取像素点数据,外部传值选择使用哪个贴图。

基本没有规则

你描述一下
我很难get了已经

就是我可能会让一个或者多个像素点都变色 或者隐藏,显示

这个我知道,我是说你是想随机变还是规定形式的变?

随机变可以用噪点图,固定形式的就定制贴图

规定形式的

那就一个形式一个贴图啊

但是是一直动态的变大区域可能

你最好能有个示例(GIF/MP4),不然很难get