使用着色器的特殊WebGL网格着色

时间:2014-09-07 04:51:05

标签: grid webgl shader

我有一个1000 x 1000矩形单元的网格,每个单元格的颜色不同。我不时更新颜色。行和列的大小随常量而变化。我从图像中读取细胞的颜色。我用单次绘制调用绘制网格。表现不佳。

是否可以使用着色器计算顶点位置(x,y)并从纹理中获取颜色?

是否有类似操作的演示或示例代码?

1 个答案:

答案 0 :(得分:0)

可以在着色器中进行。

基于每个顶点的 xy(z)位置,与整个网格大小成比例,您可以计算纹理上的UV坐标,从中需要获取颜色以遮蔽基元

虽然,1M矩形可能不是一个好主意。

您是否考虑过instancing矩形来改善性能?

您是否考虑过使用粒子进行此操作?

以下链接可能会引导您找到更好的解决方案: