Planuję wykonać instancję geometrii w OpenGL ES 2.0 Zasadniczo planuję renderować tę samą geometrię (krzesło) może 1000 razy w mojej scenie.
Jak najlepiej to zrobić w OpenGL ES 2.0?
Rozważam przekazanie widoku modelu mat4 jako atrybutu. Ponieważ atrybuty są dla danych wierzchołków, muszę przekazać tę samą matę4, trzy razy dla każdego wierzchołka tego samego trójkąta (ponieważ widok modelu pozostaje stały w poprzek wierzchołków trójkąta).
Oznaczałoby to wiele dodatkowych danych wysłanych do GPU (2 dodatkowe wierzchołki * 16 liczb zmiennoprzecinkowych * (liczba trójkątów) ilość dodatkowych danych).
A może powinienem wysyłać mat4 tylko raz na trójkąt? Ale jak to możliwe, używając atrybutów, skoro atrybuty są zdefiniowane jako dane „na wierzchołek”?
Jaki jest najlepszy i najskuteczniejszy sposób wykonywania instancji w OpenGL ES 2.0?
glVertexAttribDivisor
:(