如何创建一个 vec2 数组并推送到它?

how to create an array of vec2 and pushing to it?

我正在尝试在片段着色器中创建一个空的 vec2 数组。

获取长度并将 vec2 推入数组的语法是什么?

您不能将值“推送”到 GLSL 中的数组。数组的大小无法更改。您所能做的就是创建一个恒定大小的数组,并使用一个额外的变量来告诉您数组中有多少个值是有意义的:

vec2 array[10];
int size = 0;
array[size] = vec2(1.0, 0.0);
size = size + 1;

数组的长度可以用length()得到。例如:array.length();。另见 GLSL 4.6 - Basic Types