Войти
OpenGL communityФорумВопросы по программированию

Стоит ли использовать VBO в этом случае?

#0
10:38, 9 авг. 2013

Привет.

Казуальная игрушка, в которой 95% графики - 2d спрайты.

Рендер очень простой - есть большие массивы координат вершин, цветов и текстурных координат, массивы подключены:

glEnableClientState(GL_VERTEX_ARRAY);
glEnableClientState(GL_COLOR_ARRAY);
glEnableClientState(GL_TEXTURE_COORD_ARRAY);

glVertexPointer(3, GL_FLOAT, 0, meshBuffer.vertices);
glColorPointer(4, GL_FLOAT, 0, meshBuffer.colors);
glTexCoordPointer(2, GL_FLOAT, 0, meshBuffer.uvs);

Далее каждый фрейм собираем все вершины спрайтов и простеньких моделей в этот meshBuffer и рисуем glDrawElements(GL_TRIANGLES, indexBufferOffset, GL_UNSIGNED_SHORT, meshBuffer.indices);


Теперь вопрос - стоит ли подлкючать VBO для пусть даже небольшого профита в производительности (у казуальщиков древнее железо)?
Если стоит - то создавать один динамик-буффер?

(С вертексными буферами работал только в Direct3D 9)


#1
10:41, 9 авг. 2013

У тебя данные один фиг каждый кадр меняются. Профита от VBO не будет.
У казуальщиков даже на супер древнем железе 2Д казуалка врядли будет тормозить из-за массивов вместо VBO.
Скорее будет тормозить на этапе сборки буффера на ЦП.

#2
10:43, 9 авг. 2013

@!!ex
Значит так все лучше и оставить.

Спасибо! :)

OpenGL communityФорумВопросы по программированию

Тема в архиве.