Невозможно загрузить вектор во фрагментный шейдер в Stage3D
Я пытаюсь загрузить вектор в шейдер, но он не работает, и я могу найти почему.
Вот код:
mov ft0.rgb, fc0.rgbb
tex ft1, v1.rggg, fs0 <2d, linear, nomip, repeat>
mov ft0.a, ft1.aaaa
mov oc, ft0
Где fc0 - вектор, который я пытаюсь загрузить:
С этой функцией я вызываю перед drawTriangles и представляю:
Engine.context.setProgramConstantsFromVector(Context3DProgramType.FRAGMENT, 0, Vector.<Number>([value1, value2, value3]));
Я отладил сцену с помощью Adobe Scout, и, очевидно, fc0 не имеет значения.
Если я подставлю последний ft0 для ft1, он будет работать, поскольку я рендеринг только текстуры.
Какие-либо предложения?
1 ответ
Решение
Загружаемый вектор должен содержать как минимум 4 элемента.