我正在编写一个使用递归算法计算几何并使用 WebGL 显示该几何的网站。WebGL 可以使用递归计算几何吗?我知道着色器不能递归,但我不知道是否仍然支持一些递归。
谢谢,伊斯特万。
您可以使用 JavaScript 中的递归算法轻松生成几何图形。您可以将生成的几何图形存储在数组缓冲区中,然后将其传递给 WebGL。然而,WebGL 没有任何几何生成功能(例如,几何着色器或细分曲面)。
使用 webgl 1.0,您可以使用在 webgl渲染缓冲区的帮助下创建的渲染目标从着色器中获取输出,然后使用画布的getImageData获取具有表示几何图形的值的缓冲区。这非常耗时,但可能。另外,建议关注项目。
在 JS 中计算递归算法并将结果传递到着色器中定义的变量中将解决您的问题。