首先是我需要的东西:
我想在网页中绘制节点及其链接边缘(边数大于节点,例如10,000个节点和100,000个链接)。以下是演示:
我使用WebGL并在其他方面进行优化之后,它可以在相对较短的时间内绘制,但仍然存在一些问题:
正如您所看到的,Float32Array使用了大部分时间,但这是浏览器自己的API。
所以我能做的就是减少Float32Array的元素数量。
现在,Float32Array的元素内容(我使用的pixi.js来自pixi.js,我改变了一些东西):
颜色数据是多余的。 (注意:坐标数据基本上不共享)
我尝试使用颜色数组和索引,但我发现着色器不接受不确定大小的数组。
我还尝试将多个值(rbga)组合成一个值,但它可能导致丢失准确性或跨境
所以我不知道我现在能做些什么。
我想知道您是否知道在这种情况下如何处理冗余颜色数据,或者您对如何优化WebGL有其他想法,非常感谢。