Я хочу передать массив vec4 в шейдер фрагмента OpenGL как унифицированный, и это кажется намного сложнее, чем я надеялся. Он пришел к точке, где я пытаюсь передать массив GLfloat-х и реконструировать vec4s в затенении, но он по-прежнему не работаетПередача массива vec4 (GLfloat quad) как равномерная для шейдеров openGL
Я попытался объявить в vshader:
#extension GL_NV_shader_buffer_load : enable
uniform GLfloat* points;
и от код, вызов:
glUniform1fv(points, pointsLen*4, points);
думать, что я передаю поплавки в группах 1, и я уже 4 раза больше vec4s.
К сожалению, этот vshader не передает компиляцию программе GLSL.
Как исправить это? Либо установив это, либо сделав это совершенно по-другому :)
Неужели ['равномерное положение vec4 [50]'] (http://www.opengl.org/wiki/GLSL_Types#Arrays) не работает? – genpfault
Это действительно работает, но во время компиляции я не знаю. –