Molehill shader.
-
12-11-2019 - |
Domanda
Sto cercando di capire la molehill e vorrei più un vertice di due matrici, per esempio:
output = theVertex * scaleMatrix * rotationMatrix
.
Im indovinare il mio shader Vertex sembrerebbe come:
"m44 vt0, va0, vc0\n" +
"mul op, vt0, vc1\n";
.
e vorrei impostare le matrici con
context3d.setProgramConstantsFromMatrix(Context3DProgramType.VERTEX, 0, scaleMatrix);
context3d.setProgramConstantsFromMatrix(Context3DProgramType.VERTEX, 1, rotationMatrix);
.
Ma non funziona.Cosa sto facendo male?
Im consapevole di potermi più la matrice prima di indossare shader, ma sto cercando di capire Agal.
Cheers
Soluzione
A m44
Matrix è 4x4 galleggianti, IT accetta 4 registri poiché ogni registro è 128 bit (4 galleggianti) in modo da poter caricare la matrice di rotazione nel registro VC4:
.
"m44 vt0, va0, vc0\n" +
"mul op, vt0, vc4\n";
.
context3d.setProgramConstantsFromMatrix(Context3DProgramType.VERTEX, 0, scaleMatrix);
context3d.setProgramConstantsFromMatrix(Context3DProgramType.VERTEX, 4, rotationMatrix);
. Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow