Re[44]: Еще
От: alex_public  
Дата: 19.06.17 07:12
Оценка:
Здравствуйте, c-smile, Вы писали:

_>>Ну подскажи точное название этой самой функции скажем в современном OpenGL... )

CS>
CS>GLfloat vertices[] = {-1, -1, 0, // bottom left corner
CS>                      -1,  1, 0, // top left corner
CS>                       1,  1, 0, // top right corner
CS>                       1, -1, 0}; // bottom right corner

CS>GLubyte indices[] = {0,1,2, // first triangle (bottom left - top left - top right)
CS>                     0,2,3}; // second triangle (bottom left - top right - bottom right)

CS>glVertexPointer(3, GL_FLOAT, 0, vertices);
CS>glDrawElements(GL_TRIANGLES, 6, GL_UNSIGNED_BYTE, indices);
CS>


Функция glVertexPointer давно не входит в современный OpenGL, так что этот код банально не будет работать при использование контекста актуального OpenGL (а в современных версиях opengl, типа webgl, её и не было от рождения).

Но даже если бы он предположим работал (скажем мы ограничимся десктопом и будем запрашивать устаревшую версию OpenGL) и мы использовали бы убранный из стандарта предопределённый атрибут gl_Vertex, то где собственно код самого шедейра, а так же код его загрузки, компиляции, линковки и активации? )

CS>http://www3.ntu.edu.sg/home/ehchua/programming/opengl/cg_introduction.html


glBegin в 2017-ом году? Серьёзно?

CS>А вообще рекомендую глянуть на NanoVG, там все в общем-то тривиально.


Да я как бы и сам без проблем могу написать функцию, рисующую линию на экране с помощью opengl, но тривиальной она не будет в любом случае.

P.S. Кстати, по твоему коду: вполне можно использовать и двухмерные координаты (при подходящем шейдере) и рисовать всего 4 точки (TRIANGLE_STRIP). Но это уже так, мелкое замечание, не влияющее на суть дискуссии. )))
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.