Я использовал этот учебник и получил его работу, но я хотел только нарисовать точки треугольника. Когда я устанавливаю режим в drawArrays из GLES20.GL_TRIANGLES в GLES20.GL_POINTS, ничего не нарисовано. В качестве альтернативы просто установка размера точки в вершинном шейдере также ничего не рисует. Что мне не хватает?
Глядя на код, как это это я не знаю, что мне нужно, так как я не хочу использовать текстуру, если я не должен.
" Simple OpenGL Primitives " говорит:
Точки могут создавать превосходные эффекты частиц, такие как искры или пылевые частицы, мерцающие, когда они проходят сквозь лучи света. Несмотря на то, что мы работаем с 3D-графикой, рендеринг одной точки на экране сам по себе создает иллюзию 2D-пространства, потому что наши экраны монитора плоские или двумерные, и нет ничего, что указывало бы на глубину. Поэтому один из способов сделать точки кажутся интерактивными - заставить их двигаться по экрану в интересных шаблонах, таких как круги, спирали и вариации синусоидальных и косинусных формул.
Изменить:
Но если вы хотите, чтобы ваши точки были видимыми, вы можете использовать glPointSize (размер float) или glPointSize (размер int), например:
gl.glPointSize(5.0f);
gl.glDrawElements(...);
С другой стороны, OpenGL ES 2.0 поддерживает Point Sprites и вершинный шейдер, вы можете установить размер с помощью gl_PointSize следующим образом:
uniform float uThickness;
...
gl_PointSize = uThickness;
Рекомендации:
stackexchange
Викиучебники
Pro Open GL ES для Android