【发布时间】:2013-09-09 13:35:56
【问题描述】:
由于 GLES2.0 没有几何着色器,我想只使用顶点着色器来模拟一个。 我的想法是这样的: 我有:x、y、z、大小变量,每个顶点发送一个,然后将它们保存在某个地方。在第 6 个顶点之后,我使用最后 6 个值(x、y、z、大小和另外两个,如果需要)来构建接下来的 6 个顶点。例如:
- 在第一次调用顶点着色器时,我将 x 变量保存在某处,并返回 gl_Position = (0,0,0)、gl_Color = (0,0,0,0) 等...
- 在第二次调用时,我将 y 变量保存在某处,然后以与上述相同的方式丢弃顶点。 然后我重复这个直到第 6 个顶点。
- 在第 6 个顶点,我从某处提取 x、y、z 和 size 变量,然后使用它们构建正方形的左上顶点。 (gl_Position = (x-size/2, y-size/2, 0)... 等等。
问题是,我不知道这个“某处”是什么。我不知道如何在顶点着色器调用中保存一个变量,以便在下一次调用中使用它。
TLDL:我想在一次绘图调用中在 GLES2.0 上用 5200 * (x, y, z, square_size) 制作 10400 个三角形,对如何做有想法,但不知道如何实现它
【问题讨论】:
标签: android opengl-es opengl-es-2.0 vertex-shader