Я хочу передать целочисленное значение шейдеру, чтобы определить длину массива.Я передаю его так:
uniforms:{
num_parcels: { value: ap_props.parcels }
}
ap_props.parcels = 24. Я получаю его в шейдер и пытаюсь применить его так:
uniform int num_parcels;
uniform vec3 air_parcel_position[ num_parcels ];
Я вижу эту ошибку вконсоль браузера:
THREE.WebGLShader: gl.getShaderInfoLog () фрагмент ОШИБКА: 0: 123: '': требуется постоянное выражение ОШИБКА: 0: 123: '': размер массива должен быть константным целочисленным выражением
Я пытался преобразовать num_parcels в константу, но это, похоже, недопустимо.
В любом случае я могу передать целое число в шейдер и использовать его для определения длинымассив?