Dlaczego wartość transpozycji glUniformMatrix4fv w webgl / OpenGL ES musi być fałszywa?

11

Dlaczego wartość transpozycji glUniformMatrix4fv w webgl / OpenGL ES musi być fałszywa?

Specyfikacja OpenGL ES mówi, że wartość transpozycji musi być fałszywa lub generowana jest INVALID_VALUE. Skąd więc ten parametr?

Rickard
źródło

Odpowiedzi:

11

Ponieważ OES jest podzbiorem standardowego OpenGL, a funkcje muszą mieć te same parametry w obu implementacjach. W OpenGL parametr transpose służy do określenia, czy macierz jest w porządku rzędów głównych, czy kolumnowych, ale ponieważ OES obsługuje tylko kolumny główne, zawsze musi być fałszywa.

r2d2rigo
źródło
2
Zauważ, że OpenGL ES nie jest ścisłym podzbiorem pulpitu GL. Chociaż oba mają funkcję wywołującą glTexImage2D, przyjmowane parametry (szczególnie format pikseli) są bardzo różne. Wartości, które są legalne w ES, są nielegalne w komputerach stacjonarnych i odwrotnie.
Nicol Bolas,