Jak uzyskać dostęp do poszczególnych elementów glsl mat4?

Czy możliwy jest dostęp do poszczególnych elementów macierzy typu glsl mat4? Jak?

 44
Author: bobobobo, 2012-11-29

1 answers

Sekcja 5.6 podręcznika referencyjnego GLSL mówi, że możesz uzyskać dostęp do elementów tablicy mat4 używając składni stylu operator[][] w następujący sposób:

mat4 m;
m[1] = vec4(2.0); // sets the second column to all 2.0
m[0][0] = 1.0; // sets the upper left element to 1.0
m[2][3] = 2.0; // sets the 4th element of the third column to 2.0

Pamiętaj, że OpenGL domyślnie ma główne macierze kolumn , co oznacza, że dostęp jest w formacie mat[col][row]. W przykładzie m[2][3] ustawia 4. wiersz (indeks 3) trzeciej kolumny (indeks 2) Na 2.0. W przykładzie m[1]=vec4(2.0), ustawia całą kolumnę na raz (ponieważ m[1] odnosi się do kolumny #2, Gdy używany jest tylko jeden indeks, oznacza to tę kolumnę. m[1] odnosi się do wektora drugiej kolumny).

 55
Author: bobobobo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-11-29 22:11:20