javascript - WebGL 为许多相同的对象计算 GPU 上的顶点?

标签 javascript optimization webgl

假设我有一个简单的二维 x-y 图。我想绘制一个以 (5,5)、(3,4)、(-1,9) 等为中心的非常复杂的形状。

我知道形状的顶点相对于中心 (n,m) 的位置。是否可以在 GPU 上而不是在 javascript 中计算所有顶点?我只需要将顶点的关系上传到中心一次,然后再上传各个点。

例如,如果形状是正方形,则关系将是:

在点(n,m)处有顶点(n-1,m-1),(n+1,m-1),(n+1,m-1),(n+1, m+1).

这样我就可以将 (5,5), (3,4) ,(-1,9) 上传到 GPU,而不是计算 12 个顶点并上传。

问题:

  1. 这可能吗?
  2. 这会比在 javascript 中计算顶点更快吗?

最佳答案

这些是针对OPENGL的一些解决方案,WebGL显然不支持。

http://www.opengl.org/wiki/Vertex_Rendering

http://www.opengl.org/wiki/GLAPI/glDrawArraysInstanced

编辑:显然 WebGL 没有 drawArraysInstanced

关于javascript - WebGL 为许多相同的对象计算 GPU 上的顶点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18021554/

相关文章:

c - 如何在c编程中以优化的方式打印10X10行和列的V?

javascript - 优化 3D 世界 Javascript 动画

javascript - View 向量与法线之间的 Angular ?

javascript - 单击按钮时如何创建 IMG?

javascript - 为什么 C++ CGI form_iterator 值没有进入 XMLHttpRequest 异步 Ajax 请求?

javascript - 在服务中完成工作后, Angular 服务未在 Controller 中返回成功

javascript - webgl 阴影映射 gl.DEPTH_COMPONENT

javascript - forEach 中的 return 语句不会停止函数的执行

python - Scipy.optimize.minimize() 用于非线性目标的两个数组

unit-testing - 测试基于 WebGL/Canvas 的游戏的视觉部分的可能方法是什么