1
У меня проблема, которую я не понимаю.Матричные матрицы Shader
У меня есть шейдер
String[] vsSource = new String[] {
"attribute vec3 aVertex;",
"attribute vec3 aColor;",
"uniform mat4 uMVMatrix;",
"uniform mat4 uPMatrix;",
"varying vec3 vColor;",
"void main(void) {",
" vColor = aColor;",
" gl_Position = uMVMatrix * uPMatrix * vec4(aVertex, 1.0);",
"}" };
Я установил обе матрицы uMVMatrix
и uPMatrix
, и я хочу, чтобы умножить их в затенении. Когда я пытаюсь это сделать, мой экран остается черным.
Когда я перемножу его на Java и передаю его одной переменной mat4, я вижу свой треугольник.
String[] vsSource = new String[] {
"attribute vec3 aVertex;",
"attribute vec3 aColor;",
"uniform mat4 mvpMatrix;",
"varying vec3 vColor;",
"void main(void) {",
" vColor = aColor;",
" gl_Position = mvpMatrix * vec4(aVertex, 1.0);",
"}" };
Может кто-нибудь сказать мне, почему я не могу их размножать в шейдере?
сделал трюк ... Я думал, что многократно коммутативен !? В любом случае, спасибо! – WarrenFaith
Матричное умножение (вообще) _not_ коммутативно. Рад, что это сработало. – bosmacs