Почему рисование моей сетки OpenGL-ES VBO препятствует отображению других треугольников? - PullRequest
1 голос
/ 10 декабря 2010

Я довольно новичок в OpenGl, и у меня возникают проблемы с отображением сетки на основе VBO, смешанной с обычными трехмерными объектами.Я могу рисовать текстурированные треугольники самостоятельно, но когда я включаю сетку VBO, треугольники перестают отображаться.Я быстро высвечиваю треугольники до того, как они заменяются сеткой - предположительно потому, что они отображаются в первую очередь, они появляются в первом кадре, а затем отключаются.Я включил (и наоборот) и вытолкнул все матрицы, которые я нажал и т. д.Еще раз, если я уберу код сетки рисования VBO, треугольники будут отображаться, но как только он будет включен, треугольники исчезнут.это будет оценено.Не стесняйтесь указывать, если я делаю что-то ненужное или глупое тоже.

Приветствия.

1 Ответ

1 голос
/ 10 декабря 2010

Является ли mVertexBuffer буфером на стороне клиента? Если это так, то вам нужно отменить привязку вашего VBO. Попробуйте добавить

gl11.glBindBuffer(GL11.GL_ARRAY_BUFFER, 0);

после рисования вашей сетки VBO. (простите, если я не понял синтаксис правильно, я когда-либо делал OpenGL только в C / C ++.) Когда VBO привязан, то вызовы glVertexPointer () интерпретируются как смещения в вашем VBO. Если VBO не привязано, то они понимаются как адрес в памяти на стороне клиента.

Смотрите здесь: http://www.opengl.org/sdk/docs/man/xhtml/glBindBuffer.xml

...