glGetUniformLocation return -1 OpenGL ES (iPhone)

У меня есть фрагментный шейдер со следующими атрибутами:

varying highp vec2 coordinate;
precision mediump float;

uniform sampler2D videoframe;
uniform sampler2D videosprite;
uniform vec4 mask;
uniform float threshold;

Я получаю их местоположения и позже устанавливаю их:

_frame = glGetUniformLocation(_program, "videoframe");
_sprite = glGetUniformLocation(_program, "videosprite");
_mask = glGetUniformLocation(_program, "mask");
_threshold = glGetUniformLocation(_program, "threshold");

NSLog(@"%i %i %i %i", _frame, _sprite, _mask, _threshold);

Однако журнал показывает: 0 2 1 -1

From документации, я вижу, что -1 (пороговый униформ) означает, что это не удалось. Почему это не удается? Спасибо

5
задан Chris says Reinstate Monica 22 March 2012 в 18:18
поделиться